Primi passi in Terraform - Installazione di Azure

Jorge Bernhardt
Cloud Computing
June 15, 2020

Oggi vogliamo parlare di Terraform

Questo strumento open source che ci consente di definire, visualizzare in anteprima e distribuire l'infrastruttura su una moltitudine di provider cloud come Azure, AWS e google, usando HashiCorp Configuration Language (HCL).

In questo post, voglio mostrarti come installare Terraform sul tuo sistema Windows e come configurarlo per consentire la manipolazione delle risorse in una sottoscrizione di Azure.

Prerequisiti

  • In questa esercitazione si presuppone che sia già configurato un account Microsoft Azure.

Installazione di Terraform

Per installare Terraform, è necessario eseguire i seguenti passaggi.

  1. Scarica il pacchetto appropriato per il tuo sistema operativo, da questo link.

  2. Unzip e copia il singolo file eseguibile (terraform.exe) in una directory di installazione separata (ad esempio, all'interno di c: \ terraform).

  3. Imposta la variabile di ambiente del percorso con il percorso della directory di installazione.

  • Esegui il comando sysdm.cpl e nella scheda Avanzate, fai clic su Variabili d'ambiente. 
  • Scorri verso il basso nelle variabili di sistema fino a trovare PATH e fai clic su Modifica. 
  • Aggiungi la directory di installazione di Terraform (c: \ terraform).


  1. Verifica l'installazione, puoi verificare la versione Terraform eseguendo il seguente comando.

 
  
Terraform -version 
Terraform -help
 


http://www.jorgebernhardt.com/wp-content/uploads/2020/04/terraform.version-1.png

Creare un'entità servizio di Azure Principale

Per consentire a Terraform di eseguire il provisioning delle risorse nella sottoscrizione di Azure, è innanzitutto necessario creare un'entità servizio di Azure (SP) in Azure Active Directory. Questo SP Azure concede gli script Terraform per il provisioning delle risorse nell'abbonamento Azure.

Successivamente, ti mostrerò come creare un Azure SP usando l'interfaccia della riga di comando di Azure CLI.

Soluzione alternativa alla CLI di Azure

In questo caso, useremo Azure Cloud Shell, una shell basata su browser integrata nel portale di Azure, che può essere usata da https://shell.azure.com. Questo ci consente di usare gli strumenti della riga di comando di Azure (interfaccia della riga di comando di Azure e Azure PowerShell) direttamente da un browser.

Per creare l'entità servizio, utilizzare il comando seguente.

 
  
az ad sp create-for-rbac --name "SPForTerraformCLI" /
                         --role "Contributor" /
                         --scopes="/subscriptions/"
 


http://www.jorgebernhardt.com/wp-content/uploads/2020/04/New-AzADServicePrincipal.CLI_.png

Configurare il fornitore di Terraform

Dopo aver creato Azure SP, sei pronto per creare il tuo primo file terraform. È necessario creare il file "provider.tf" nella directory di lavoro, dove è necessario indicare il provider che si utilizzerà e le informazioni di autenticazione.

 
  
provider "azurerm" {
    version = "~>1.32.0"
    subscription_id = "" <----------"SubscriptionId"
    client_id = "" <----------------"appId"
    client_secret = "" <------------"password"
    tenant_id = "" <----------------"tenant"
}
 


Importante: per motivi di sicurezza, non è consigliabile inserire informazioni di identificazione nel codice in un ambiente di produzione. Queste informazioni potrebbero essere accessibili ad altre persone. Per gli ambienti di produzione, ti mostrerò nei post futuri come utilizzare le variabili di ambiente e gestire i segreti.

Nel prossimo post, ti mostrerò come creare risorse di Azure usando Terraform.

Grazie per aver letto il mio post. Spero che lo trovi utile.

Se vuoi saperne di più su Terraform su Azure, dai un'occhiata a questo link: https://docs.microsoft.com/en-us/azure/terraform/

Jorge Bernhardt

Hi! I am Jorge Bernhardt and I have been an IT professional for almost 20 years. During this time, I have worked as a helpdesk operator, systems administrator, and cloud architect. I am specialised in Microsoft Technologies, particularly Microsoft Cloud & Datacenter solutions, Microsoft Virtualisation, and Microsoft 365. I love learning from other professionals and, when possible, share my knowledge back with the community.

https://www.jorgebernhardt.com

Related Posts

Newsletter ItalyClouds.com

Thank you! Your submission has been received!

Oops! Something went wrong while submitting the form