Panoramica di Terraform su Azure - Che cos'è Terraform?

Hashicorp Terraform è uno strumento IaC (Infrastructure-as-Code) open source per la configurazione e la distribuzione dell'infrastruttura cloud. Codifica l'infrastruttura nei file di configurazione che descrivono lo stato desiderato per la topologia. Terraform consente la gestione di qualsiasi infrastruttura, ad esempio cloud pubblici, cloud privati e servizi SaaS, usando provider Terraform.

Provider di Terraform per l'infrastruttura Azure

Diversi provider Terraform consentono la gestione dell'infrastruttura Azure:

  • AzureRM: gestire risorse e funzionalità stabili Azure, ad esempio macchine virtuali, account di archiviazione e interfacce di rete.
  • AzAPI: gestire Azure risorse e funzionalità usando direttamente le API Azure Resource Manager. Questo provider consente la coerenza con le funzionalità più recenti di Azure senza richiedere aggiornamenti del provider. Per altre informazioni sul provider AzAPI, vedere Provider AzAPI di Terraform.
  • AzureAD: gestire Microsoft Entra risorse, ad esempio gruppi, utenti, entità servizio e applicazioni.
  • AzureDevops: gestire le risorse di Azure DevOps, ad esempio agenti, repository, progetti, pipeline e query.
  • AzureStack: gestire hub di Azure Stack risorse come macchine virtuali, DNS, reti virtuali e archiviazione.

Uso di AzAPI e AzureRM

Per comprendere quando usare AzAPI e AzureRM, leggere l'istruzione congiunta con HashiCorp.

Vantaggi di Terraform con Azure

Questa sezione descrive i vantaggi dell'uso di Terraform per gestire l'infrastruttura Azure.

Strumento IaC comune

I provider di Azure Terraform consentono di gestire tutta l'infrastruttura Azure usando la stessa sintassi dichiarativa e gli stessi strumenti. Usando questi provider, è possibile:

  1. Configurare le funzionalità principali della piattaforma, ad esempio gruppi di gestione, criteri, utenti, gruppi e criteri. Per altre informazioni, vedere Implementazione di Terraform di Cloud Adoption Framework su scala aziendale.
  2. Configurare Azure DevOps progetti e pipeline per automatizzare le normali distribuzioni di infrastruttura e applicazioni.
  3. Distribuisci le risorse Azure necessarie alle tue applicazioni.

Automatizzare la gestione dell'infrastruttura

Usare la sintassi del file di configurazione basata su modelli di Terraform per configurare le risorse Azure in modo ripetibile e prevedibile. L'automazione della gestione dell'infrastruttura offre i vantaggi seguenti:

  • Riduce il rischio di errori umani durante la distribuzione e la gestione dell'infrastruttura.
  • Distribuisce lo stesso modello più volte per creare ambienti di sviluppo, test e produzione identici.
  • Riduce il costo degli ambienti di sviluppo e test creandoli su richiesta.

Comprendere le modifiche all'infrastruttura prima di applicarle

Poiché la topologia delle risorse diventa più complessa, può essere difficile comprendere il significato e l'impatto delle modifiche dell'infrastruttura.

L'interfaccia della riga di comando di Terraform consente di convalidare e visualizzare in anteprima le modifiche dell'infrastruttura prima di applicare il piano. L'anteprima delle modifiche all'infrastruttura in modo sicuro offre diversi vantaggi:

  • I membri del team possono collaborare in modo più efficace comprendendo le modifiche proposte e il loro impatto.
  • È possibile rilevare le modifiche impreviste all'inizio del processo di sviluppo.

Passaggi successivi

In base all'ambiente in uso, installare e configurare Terraform:

Note

Le conversioni degli account di Archiviazione di Azure possono introdurre modifiche fuori banda supportate che portano Terraform a pianificare la sostituzione di un account di archiviazione. Per indicazioni su come evitare la ricreazione imprevista durante queste conversioni, vedere Prevenire il drift di Terraform per le risorse di Azure con stato persistente.