Concetti chiave per gli ambienti di distribuzione di Azure

Questo articolo illustra i concetti chiave e i componenti degli ambienti di distribuzione di Azure. Queste informazioni consentono di distribuire in modo più efficace gli ambienti per gli scenari.

Man mano che si apprenderanno gli ambienti di distribuzione, si incontreranno anche i componenti di Microsoft Dev Box, un servizio complementare che condivide determinati componenti dell'architettura. Dev Box offre agli sviluppatori una workstation di sviluppo basata sul cloud, denominata dev box, configurata con gli strumenti necessari per il lavoro.

Questo diagramma mostra i componenti chiave degli ambienti di distribuzione e la relativa correlazione tra loro. Per altre informazioni su ogni componente, vedere le sezioni seguenti.

Diagramma che mostra i componenti chiave degli ambienti di distribuzione.

Centri di sviluppo

Un dev center è una raccolta di progetti che richiedono impostazioni simili. I centri di sviluppo consentono ai tecnici della piattaforma di:

  • Usare i cataloghi per gestire i modelli di infrastruttura come codice (IaC) disponibili per i progetti.
  • Usare i tipi di ambiente per configurare i tipi di ambienti che i team di sviluppo possono creare.

Microsoft Dev Box usa anche i centri di sviluppo per organizzare le risorse. Un'organizzazione può usare lo stesso dev center per entrambi i servizi.

Progetti

In Ambienti di distribuzione un progetto rappresenta un team o una funzione aziendale all'interno dell'organizzazione. Quando si associa un progetto a un dev center, tutte le impostazioni per il dev center vengono applicate automaticamente al progetto.

Ogni progetto può essere associato a un solo dev center. I tecnici della piattaforma possono configurare gli ambienti per un progetto specificando i tipi di ambiente appropriati per il team di sviluppo.

Per consentire agli sviluppatori di creare ambienti di distribuzione personalizzati, è necessario fornire l'accesso agli sviluppatori ai progetti assegnando il ruolo Utente Ambienti di distribuzione.

È possibile configurare progetti per ambienti di distribuzione e progetti per le risorse di Microsoft Dev Box nello stesso dev center.

Ambienti

Un ambiente è una raccolta di risorse di Azure in cui viene distribuita l'applicazione. Ad esempio, per distribuire un'applicazione Web, è possibile creare un ambiente costituito da app Azure Servizio, Azure Key Vault, Azure Cosmos DB e un account di archiviazione. Un ambiente può essere costituito da risorse paaS (Platform as a Service) e di infrastruttura distribuita come servizio (IaaS), ad esempio un cluster servizio Azure Kubernetes (servizio Azure Kubernetes), macchine virtuali e database.

Identità

Negli ambienti di distribuzione di Azure si usano le identità gestite per fornire funzionalità di elevazione dei privilegi. Le identità consentono di fornire funzionalità self-service ai team di sviluppo senza concedere loro l'accesso alle sottoscrizioni di destinazione in cui vengono create le risorse di Azure.

All'identità gestita collegata al Dev Center deve essere concesso l'accesso appropriato per connettersi ai cataloghi. È necessario concedere a Collaboratore e Accesso utenti Amministrazione istrator l'accesso alle sottoscrizioni di distribuzione di destinazione configurate a livello di progetto. Il servizio Ambienti di distribuzione di Azure usa l'identità gestita specifica per eseguire la distribuzione per conto dello sviluppatore.

Tipi di ambiente Dev Center

È possibile definire i tipi di ambienti che i team di sviluppo possono creare, ad esempio sviluppo, test, sandbox, preproduzione o produzione. Gli ambienti di distribuzione di Azure offrono la flessibilità necessaria per denominare i tipi di ambiente in base alla denominazione usata dall'azienda. È possibile configurare le impostazioni per vari tipi di ambiente in base alle esigenze specifiche dei team di sviluppo.

Tipi di ambiente di progetto

I tipi di ambiente di progetto sono un subset dei tipi di ambiente configurati per il dev center. Consentono di preconfigurare i tipi di ambienti che possono essere creati da specifici team di sviluppo. È possibile configurare la sottoscrizione di destinazione in cui vengono create le risorse di Azure per ogni progetto e per ogni tipo di ambiente.

I tipi di ambiente di progetto consentono di applicare automaticamente il set corretto di criteri negli ambienti e di astrarre i concetti correlati alla governance di Azure dai team di sviluppo. Il servizio offre anche la flessibilità necessaria per la preconfigurazione:

  • Identità gestita usata per eseguire la distribuzione.
  • I livelli di accesso che i team di sviluppo otterranno dopo la creazione di un ambiente specifico.

Cataloghi

I cataloghi consentono di fornire un set di modelli IaC curati per i team di sviluppo per creare ambienti. Microsoft fornisce un catalogo di avvio rapido che contiene un set di definizioni di ambiente di esempio. È possibile allegare il catalogo di avvio rapido a un dev center per rendere disponibili queste definizioni di ambiente a tutti i progetti associati al dev center. È possibile modificare le definizioni di ambiente di esempio in base alle proprie esigenze.

In alternativa, è possibile allegare il proprio catalogo. È possibile collegare un repository GitHub o un repository di Azure DevOps Services come catalogo.

Gli ambienti di distribuzione analizzano la cartella specificata del repository per trovare le definizioni di ambiente. Gli ambienti rendono quindi disponibili tali definizioni di ambiente per tutti i progetti associati al dev center.

Definizioni di ambiente

Una definizione di ambiente è una combinazione di un modello IaC e di un file di ambiente che funge da manifesto. Il modello definisce l'ambiente e il file di ambiente fornisce metadati sul modello. I team di sviluppo usano gli elementi forniti nel catalogo per creare ambienti in Azure.

Nota

Gli ambienti di distribuzione di Azure usano modelli di Azure Resource Manager (ARM).

Modelli di Gestione risorse di Azure

I modelli di Azure Resource Manager consentono di implementare l'IaC per le soluzioni di Azure definendo l'infrastruttura e la configurazione per il progetto, le risorse da distribuire e le proprietà di tali risorse.

Per informazioni sulla struttura di un modello di Resource Manager, sulle sezioni di un modello e sulle proprietà disponibili in queste sezioni, vedere Comprendere la struttura e la sintassi dei modelli di Azure Resource Manager.

Ruoli predefiniti

Gli ambienti di distribuzione di Azure supportano tre ruoli predefiniti:

  • Dev Center Project Amministrazione: crea ambienti e gestisce i tipi di ambiente per un progetto.
  • Utente ambienti di distribuzione: crea ambienti in base all'accesso appropriato.
  • Lettore ambienti di distribuzione: legge gli ambienti creati da altri utenti.

Risorse condivise con Microsoft Dev Box

Gli ambienti di distribuzione di Azure e Microsoft Dev Box sono servizi complementari che condividono determinati componenti dell'architettura. I centri di sviluppo e i progetti sono comuni a entrambi i servizi e consentono di organizzare le risorse in un'azienda. È possibile configurare progetti per ambienti di distribuzione e progetti per le risorse di Dev Box nello stesso dev center.

Per altre informazioni sui componenti comuni ad Ambienti di distribuzione e Dev Box, vedere Componenti comuni a Microsoft Dev Box e ambienti di distribuzione di Azure.