È necessario tenere presenti alcune limitazioni e risolvere i problemi quando si integrano le configurazioni Terraform come risorse in vRealize Automation.
Limitazioni per le configurazioni Terraform
- Quando si convalida un progetto con le configurazioni Terraform, il pulsante TEST verifica la sintassi di Cloud Assembly ma non la sintassi del codice Terraform nativo.
Inoltre, il pulsante TEST non convalida gli ID commit associati alle configurazioni Terraform.
- Per un modello cloud che include configurazioni Terraform, la clonazione del modello in un progetto diverso richiede la seguente soluzione alternativa.
- Nel nuovo progetto, nella scheda Integrazioni, copiare il valore
repositoryId
per l'integrazione. - Aprire il modello del clone. Nell'editor di codice, sostituire il valore
repositoryId
con quello copiato.
- Nel nuovo progetto, nella scheda Integrazioni, copiare il valore
- Nel repository di controllo versioni, non includere un file di stato Terraform con i file di configurazione. Se è presente
terraform.tfstate
, si verificano errori durante la distribuzione.
Azioni giorno 2 supportate per la risorsa Terraform principale
Per la risorsa Terraform principale, è possibile visualizzare o aggiornare il file di stato di Terraform. Per ulteriori informazioni sulle azioni del file di stato, vedere l'elenco completo delle azioni in Quali azioni è possibile eseguire sulle distribuzioni o sulle risorse supportate di Cloud Assembly?.
Azioni giorno 2 supportate per le risorse secondarie
Dopo aver distribuito le configurazioni di Terraform, potrebbero essere necessari fino a 20 minuti affinché l'azione giorno 2 diventi disponibile nelle risorse secondarie.
Per le risorse secondarie in una configurazione Terraform, sono supportate solo le seguenti azioni giorno 2. Per informazioni dettagliate sulle azioni, consultare l'elenco completo delle azioni in Quali azioni è possibile eseguire sulle distribuzioni o sulle risorse supportate di Cloud Assembly?.
Provider | Tipo di risorsa Terraform | Azioni giorno 2 supportate |
---|---|---|
AWS | aws_instance | Accendi |
Spegni | ||
Riavvia | ||
Reimposta | ||
Azure | azurerm_virtual_machine | Accendi |
Spegni | ||
Riavvia | ||
Sospendi | ||
vSphere | vsphere_virtual_machine | Accendi |
Spegni | ||
Riavvia | ||
Reimposta | ||
Shutdown | ||
Sospendi | ||
Crea snapshot | ||
Elimina snapshot | ||
Ripristina snapshot | ||
GCP | google_compute_instance | Accendi |
Spegni | ||
Crea snapshot | ||
Elimina snapshot |
Risoluzione dei problemi della disponibilità delle azioni giorno 2
Le azioni giorno 2 pronte all'uso mancanti o disattivate potrebbero richiedere la risoluzione dei problemi.
Problema | Causa | Risoluzione |
---|---|---|
Una risorsa Terraform non ha un'azione giorno 2 pronta all'uso prevista nel menu Azioni. | L'azione potrebbe non essere supportata per il provider e il tipo di risorsa menzionati nell'elenco precedente. In alternativa, la visualizzazione dell'azione potrebbe richiedere fino a 20 minuti a causa della tempistica di individuazione delle risorse e della memorizzazione nella cache delle risorse. |
Controllare il provider e il tipo di risorsa nella progettazione. Attendere fino a 20 minuti per il completamento della raccolta dati. |
Una risorsa Terraform non dispone di un'azione giorno 2 prevista anche dopo i 20 minuti necessari per la raccolta dati. | Un problema di individuazione delle risorse impedisce la visualizzazione dell'azione. Ciò può verificarsi, ad esempio, quando la risorsa viene accidentalmente creata in una zona cloud esterna al progetto. Ad esempio, il progetto include solo un account cloud e una zona cloud della regione us-east-1, ma la configurazione Terraform include un blocco del provider per us-west-1 e non è stato modificato in fase di progettazione. Un'altra possibilità è che la raccolta dati non funzioni. |
Controllare le zone cloud del progetto rispetto alle zone cloud nella progettazione. Passare a e controllare lo stato di raccolta dati e l'ultima ora di raccolta riuscita per l'account cloud. |
Anche se non sono presenti problemi evidenti con lo stato e la raccolta dati della risorsa, l'azione giorno 2 è disattivata (grigia). | In alcuni casi, è noto che si verifichino problemi di tempistiche ed errori di raccolta dati intermittenti. | Il problema dovrebbe risolversi entro 20 minuti. |
L'azione giorno 2 errata è disattivata, nonostante debba essere attivata in base allo stato della risorsa. Ad esempio, lo spegnimento è abilitato e l'accensione è disattivata, anche se la risorsa è stata spenta utilizzando l'interfaccia del provider. |
La tempistica della raccolta dati può causare una mancata corrispondenza temporanea. Se si modifica lo stato di accensione al di fuori di vRealize Automation, è necessario del tempo per applicare correttamente la modifica. | Attendere fino a 20 minuti. |
Utilizzo di provider Terraform personalizzati in vRealize Automation
Se si desidera utilizzare un provider Terraform personalizzato, eseguire i passaggi seguenti.
Nel repository di controllo della versione Git, nella directory Terraform che contiene main.tf, aggiungere la seguente struttura di sottodirectory e il file ZIP del provider Terraform.
terraform.d/plugins/<HOSTNAME>/<NAMESPACE>/<TYPE>/terraform-provider-<TYPE_VERSION_TARGET>.zip
Ad esempio, se è stata scaricata la versione azurerm 3.12.0, è possibile creare la struttura seguente.
terraform.d/plugins/registry.terraform.io/hashicorp/azurerm/terraform-provider-azurerm_3.12.0_linux_amd64.zip