Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
L'interfaccia della riga di comando per sviluppatori di Azure (azd
) supporta gli stack di distribuzione di Azure per le distribuzioni di modelli. Uno stack di distribuzione di Azure è una risorsa che consente di gestire un gruppo di risorse di Azure come una singola unità coesa. Usando gli stack di distribuzione, è possibile ottenere un maggiore controllo sul set di risorse associate al modello e all'app azd
.
In questo articolo vengono illustrate le operazioni seguenti:
- Abilitare il supporto di Azure Deployment Stack in
azd
. - Distribuire
azd
modelli usando gli stack di distribuzione di Azure. - Configurare il comportamento dello stack di distribuzione usando
azd
le configurazioni.
Abilitare il supporto di Azure Deployment Stack
Il supporto degli stack di distribuzione di Azure deve essere abilitato tramite il azd config
comando :
azd config set alpha.deployment.stacks on
Nota
Il supporto degli stack di distribuzione di Azure è attualmente una funzionalità alfa, motivo per cui deve essere abilitata manualmente. Tuttavia, gli stack di distribuzione diventeranno il comportamento di distribuzione predefinito di azd
in una versione futura.
Altre informazioni sulla strategia di controllo delle versioni.
Verificare che la funzionalità sia stata abilitata correttamente usando il azd config show
comando :
azd config show
Distribuire un modello usando gli stack di distribuzione
Dopo aver abilitato la funzionalità stack di distribuzione, non sono necessarie ulteriori modifiche ai azd
modelli per sfruttare il comportamento predefinito di questa funzionalità.
azd
esegue automaticamente il wrapping delle risorse del modello di cui è stato effettuato il provisioning in uno stack di distribuzione di Azure quando si esegue azd up
:
azd up
azd
usa l'ambito definito nel main.bicep
file del modello per lo stack di distribuzione di Azure. Ad esempio, se l'ambito del modello è a livello di sottoscrizione o gruppo di risorse, è possibile visualizzare lo stack di distribuzione associato nella portale di Azure nella pagina Stack di distribuzione della pagina Sottoscrizione o gruppo di risorse associato.
Selezionare lo stack di distribuzione per visualizzare le pagine di gestione:
Eliminare uno stack di distribuzione
Per impostazione predefinita, è possibile eliminare uno stack di distribuzione e le risorse associate usando il comando standard azd down
:
azd down
Il comportamento esatto degli stack di azd down
distribuzione e viene configurato usando il azure.yaml
file .
Configurare lo stack di distribuzione
azd
espone varie impostazioni di configurazione tramite la infra
sezione del azure.yaml
file per influenzare il comportamento dello stack di distribuzione di Azure. Queste impostazioni sono mappate alle opzioni standard descritte in dettaglio nella documentazione relativa agli stack di distribuzione. Si consideri l'esempio seguente azure.yaml
:
name: todo-nodejs-mongo-aca
metadata:
template: todo-nodejs-mongo-aca@0.0.1-beta
infra:
provider: bicep
deploymentStacks:
actionOnUnmanage:
resources: delete
resourceGroups: delete
denySettings:
mode: denyDelete
excludedActions:
- Microsoft.Resources/subscriptions/resourceGroups/delete
excludedResources:
- <your-resource-id-1>
- <your-resource-id-2>
excludedPrincipals:
- <your-targeted-principal-id-1>
- <your-targeted-principal-id-2>
applyToChildScopes: true
# ...
# Remaining file contents omitted
# ...
Nell'esempio precedente vengono definite le opzioni seguenti nella deploymentStacks
sezione :
-
actionOnUnmanage: quando viene eliminato uno stack di distribuzione, le risorse di Azure associate vengono considerate non gestite. Questa impostazione determina come Azure gestirà le risorse non gestite. I valori possibili includono:
-
delete
è il valore predefinito e elimina tutte le risorse gestite dallo stack di distribuzione eliminato. -
detach
lascia le risorse sul posto, ma rimuove l'associazione allo stack di distribuzione eliminato.
-
-
denySettings: sottosezione che fornisce un controllo sfumato sulle risorse dello stack di distribuzione.
-
mode: determina restrizioni di alto livello per le risorse dello stack di distribuzione. I valori possibili includono:
-
none
è il valore predefinito e consente l'eliminazione delle risorse dello stack di distribuzione o l'aggiunta di nuove risorse. -
denyDelete
impedisce l'eliminazione delle risorse dello stack di distribuzione. -
denyWriteAndDelete
impedisce l'eliminazione delle risorse dello stack di distribuzione e impedisce anche l'aggiunta di nuove risorse allo stack di distribuzione.
-
- excludedActions: elenca le azioni di controllo degli accessi in base al ruolo di Azure non consentite nelle risorse dello stack di distribuzione.
-
excludedResources: elenca gli ID risorsa esclusi da
denySettings
. -
excludedPrincipals: elenca gli ID entità servizio esclusi da
denySettings
. - applyToChildScopes: valore booleano che imposta se le impostazioni di negazione si applicano alle risorse figlio delle risorse nello stack di distribuzione. Ad esempio, una risorsa di SQL Server dispone di risorse del database figlio.
-
mode: determina restrizioni di alto livello per le risorse dello stack di distribuzione. I valori possibili includono: