Informazioni sui registri dei moduli
In questa unità verranno illustrati i registri Bicep e verrà spiegato perché sono utili per condividere il codice Bicep. Si apprenderà anche come creare un registro per la propria organizzazione.
Perché si condividono i moduli Bicep?
In Bicep spesso si usano ripetutamente risorse simili. Inoltre, è comune creare combinazioni di risorse distribuite in più posizioni. I moduli Bicep offrono una soluzione pratica per creare file Bicep riutilizzabili. Ogni modulo definisce in genere un set di risorse con una configurazione predefinita.
Uno dei vantaggi dell'uso dei moduli è che è possibile condividerli con altri utenti ed è possibile sfruttare i moduli condivisi da altri utenti. Ad esempio, si potrebbe investire tempo nella compilazione e nel test di un file Bicep per distribuire un set di risorse che vengono spesso usate insieme. Quando si condivide il file come modulo Bicep, i colleghi possono usare il modulo per distribuire rapidamente le stesse risorse.
Un registro Bicep è la posizione in cui vengono archiviati e condivisi i moduli. Chiunque può creare un registro personalizzato. In futuro, Microsoft prevede di supportare la pubblicazione di più tipi di contenuto Bicep nei registri, oltre ai moduli.
Suggerimento
Microsoft gestisce un registro dei moduli Bicep pubblico. Il registro pubblico contiene moduli che possono essere usati da chiunque nella community. Col passare del tempo il registro pubblico conterrà moduli che consentono di creare alcuni scenari comuni in Bicep.
Questo modulo di Learn è incentrato sulla condivisione di moduli personalizzati con registri privati. L'unità di riepilogo include un collegamento a altre informazioni sul registro pubblico.
Quali sono le differenze tra i registri e le specifiche di modello?
È possibile salvare un modello di Azure Resource Manager (modello di ARM) come specifica di modello. Una specifica di modello è un modo per rendere riutilizzabili i modelli e condividerli nell'organizzazione.
Sia i moduli archiviati nei registri Bicep che le specifiche di modello sono entrambi modi per aggiungere riutilizzabilità al codice di distribuzione. Ma sono ottimizzati per finalità diverse:
- I moduli Bicep sono concepiti per essere combinati in una distribuzione più grande. Le specifiche di modello sono progettate per essere distribuibili come modello completo. È possibile distribuire specifiche di modello usando il portale di Azure e strumenti come l'interfaccia della riga di comando di Azure e Azure PowerShell. Tuttavia, se è stata creata una specifica di modello, Bicep consente anche di usarla come modulo se lo si desidera.
- Le specifiche di modello sono archiviate in Azure come risorse. I moduli nei registri vengono archiviati come artefatti del contenitore.
- Le specifiche di modello offrono funzionalità di controllo di accesso. Quando si usa con un registro privato, è necessario controllare l'accesso ai moduli in altri modi. Altre informazioni sul controllo di accesso verranno fornite in un'unità successiva.
Quando si deve decidere tra specifiche di modello e moduli Bicep, una valida regola generale da seguire è: se il modello verrà distribuito così com'è in tutta l'organizzazione, le specifiche di modello sono probabilmente la soluzione adatta. Se invece si prevede di riutilizzare questo modello in più modelli padre, i moduli Bicep potrebbero essere la scelta migliore. Un registro è un'ottima soluzione per condividere i moduli.
Registri privati
I registri Bicep sono basati su una tecnologia denominata registri contenitori.
Se l'organizzazione usa Kubernetes o un'altra tecnologia di containerizzazione, è possibile che si abbia già familiarità con i registri. Non è tuttavia necessario usare contenitori o Kubernetes per usare Bicep. I registri costituiscono una soluzione generica e pratica per archiviare e condividere artefatti. Sono analoghi agli account di archiviazione.
Attualmente Bicep supporta Registro Azure Container. In futuro, Microsoft prevede di supportare altri registri, ad esempio Docker Hub.
Registro Azure Container offre più livelli di servizio, con funzionalità e limiti diversi. Quando si effettua il provisioning di un registro personalizzato, è necessario selezionare il livello più adatto alle proprie esigenze. Nell'unità di riepilogo verranno forniti collegamenti ad altre informazioni in merito.
A breve si apprenderà come pubblicare i moduli in un registro.
Suggerimento
In Registro Azure Container un modulo è denominato repository, da non confondere con un repository Git. I termini sono uguali, ma il significato è diverso.
Controllo di accesso
Poiché Registro Azure Container fornisce un registro privato per l'organizzazione, è possibile controllare chi può accedervi. Registro Azure Container offre diverse opzioni per la gestione dell'accesso, tra cui Microsoft Entra ID e chiavi rilasciate a singoli utenti.
Quando si usa Bicep, l'approccio più semplice consiste nell'usare l'autenticazione di Microsoft Entra. Bicep rileva automaticamente l'identità di Microsoft Entra usata nell'interfaccia della riga di comando di Azure o in Azure PowerShell, quindi non è necessario eseguire di nuovo l'accesso. Si vedrà come funziona l'autenticazione nell'esercizio successivo. Quando si usa un registro dei moduli Bicep da una pipeline, viene usato un tipo speciale di identità denominato entità servizio.
È possibile controllare separatamente chi dispone dell'autorizzazione per la scrittura di moduli nel registro e chi dispone dell'autorizzazione per la lettura dei moduli.