c51367029d | ||
---|---|---|
.. | ||
images | ||
README.md | ||
add_service.md | ||
app_registrations.md | ||
application_insights.md | ||
authorization_token.md | ||
azure_sdk_service_principal.md | ||
configure_event_grid.md | ||
cosmos_db.md | ||
deploy_bot_service.md | ||
deploy_function_app.md | ||
deploy_web_app.md | ||
function_app_and_app_service_plan.md | ||
resource_group.md | ||
security_group.md | ||
service_plan.md | ||
storage_account.md | ||
test_function_app.md | ||
test_web_app.md | ||
virtual_machine.md | ||
web_app_and_app_service_plan.md |
README.md
How to Run the Solution in Azure
Introduction
This document describes the resources that must be created and configured to run the solution in Azure. This includes:
- App Registrations for authentication in different components in Azure AD tenant:
- Resource groups used to deploy and configure the solution:
- Architecture resource group:
- Virtual Machine resource group:
- Components Deployment:
- Testing the environment:
General prerequisites
Before deploying the solution in Azure, please make sure you have the all the prerequisites listed in Prerequisites.
Also, if you haven't already, make sure you have setup your Azure Bot too.
App Registrations for authentication in different components in Azure AD tenant
To secure and connect several of the resources used for the solution, we need to create several app registrations, each with its own permissions and settings. Several of the following instructions include creating application credentials. We recommend creating a Key Vault resource in Azure to store these credentials securely. We also recommend keeping track of the application IDs generated for each app registration to simplify the configuration of the applications during the project.
Resources used to deploy and configure the solution:
Resource Groups
To prepare the cloud environment, we need to create multiple resources which must be separated according to the different components of the solution. For that, it is necessary to create two resource groups, both in the same region (e.g., West US 2).
-
resource-group-name
-bot: This group will contain the rest of the resources related to the APIs, functions, database, and web UI used to operate the solution. -
resource-group-name
-bot-vm: This group will be used to contain the resources related to the virtual machine that will host the core components of the application in Azure.
NOTE: It is suggested that
resource-group-name
be replaced by a name in line with the project.
To create the resource groups, check the Create resource groups documentation.
Architecture resource group
The following resources are used to manage the application and the bot. All these resources should be created in the resource-group-name
-bot resource group:
- Application Insights.
- Storage account.
- Cosmos DB.
- Web App and App service plan.
- Function App and App service plan.
Virtual Machine resource group
The following resources form the core part of the solution, which is charge of connecting to the call and extract and inject the media feeds from the Teams Meeting call.
All these resources should be created in the resource-group-name
-bot-vm resource group.
The app registration that was created to manage the state of the VM must be given access to this resource group with the Contributor role. This can be done in the Access control (IAM) menu of the resource group.