4. Reuse existing resource
The default azd up
process will create lots of new resource in the azure cloud.
- Some creation work may fail due to feature limitations
- Share resource between users
Here are some topic to reuse some azure resource
- Reuse resource in same tenant, cross-tenant sharing is not supported.
- New created resources are in the same resource group, dedicate resource group for different resources are not supported yet.
Here are the steps to reuse some azure resource
-
Use existing Resource Group
Get the name or your group, add the info to
infra/bicep/main.parameters.json
:"resourceGroupName": { "value": "<group>" },
- Use existing Azure OpenAI instance Locate the OpenAI instance,
- Make sure you have the
Contributor
role to the OpenAI instance, the deployment scripts will grantUser
role to new managed identity to visit this OpenAI, see OpenAI user - Create models
text-embedding-ada-002
andgpt-4o
in this OpenAI instance.
Get the name, group and subscription info of the existing OpenAI instance, add the info to
infra/bicep/main.parameters.json
:"openAiExisting": { "value": true }, "openAiName": { "value": "<name>" }, "openAiResourceGroup": { "value": "<group>" }, "openAiSubscription": { "value": "<subscription>" }
- Make sure you have the
-
Use existing Azure Container Registry
Locate the container registry, make sure you have the
Contributor
role to the container registry, the deployment scripts will grantAcrPull
&AcrPush
roles to new managed identities. Get the name, group and subscription info of the existing container registry, add the info toinfra/bicep/main.parameters.json
:"acrExisting": { "value": true }, "acrName": { "value": "<name>" }, "acrGroupName": { "value": "<group>" }, "acrSubscription": { "value": "<subscription>" },
-
Use existing MySQL flexible server
Locate the MySQL flexible server, make sure you have the
Contributor
role to the server, the deployment scripts will grantAdmin
role to new managed identity. Get the name, group and subscription info of the existing MySQL flexible server, add the info toinfra/bicep/main.parameters.json
:"sqlServerExisting": { "value": true }, "sqlServerName": { "value": "<name>" }, "sqlServerResourceGroup": { "value": "<group>" }, "sqlServerSubscription": { "value": "<subscription>" },
-
Use existing Log Analytics Workspace Locate the Log Analytics Workspace, get the name, group and subscription info of the existing Log Analytics Workspace, add the info to
infra/bicep/main.parameters.json
:"laWorkspaceExisting": { "value": true }, "laWorkspaceName": { "value": "<name>" }, "laWorkspaceResourceGroup": { "value": "<group>" }, "laWorkspaceSubscription": { "value": "<subscription>" },
-
Use existing Application Insights Locate the MySQL flexible server, get the name, group and subscription info of the existing Log Analytics Workspace, add the info to
infra/bicep/main.parameters.json
:"laWorkspaceExisting": { "value": true }, "laWorkspaceName": { "value": "<name>" }, "laWorkspaceResourceGroup": { "value": "<group>" }, "laWorkspaceSubscription": { "value": "<subscription>" },