Esteja ciente de determinadas limitações e resolução de problemas quando incorporar configurações do Terraform como um recurso no vRealize Automation.

Limitações para configurações do Terraform

  • Ao validar um projeto com as configurações do Terraform, o botão TEST verifica a sintaxe Cloud Assembly, mas não a sintaxe do código Terraform nativo.

    Além disso, o botão TEST não valida IDs de confirmação associados a configurações do Terraform.

  • Para um modelo de nuvem que inclui configurações do Terraform, clonar o modelo para um projeto diferente requer a seguinte solução alternativa.
    1. No novo projeto, na guia Integrações, copie o repositoryId para a sua integração.
    2. Abra o modelo de clone. No editor de código, substitua repositoryId pelo valor que você copiou.
  • No repositório de controle de versão, não inclua um arquivo de estado do Terraform com arquivos de configuração. Se terraform.tfstate estiver presente, ocorrerão erros durante a implantação.

Ações de dia 2 com suporte para o recurso Terraform principal

Para o recurso Terraform principal, você pode visualizar ou atualizar o arquivo de estado do Terraform. Para obter mais informações sobre as ações de arquivo de estado, consulte a lista abrangente de ações em Quais ações posso executar nas implantações do Cloud Assembly.

Ações de dia 2 com suporte para recursos herdeiros

Depois de implantar as configurações do Terraform, pode levar até 20 minutos para que uma ação de dia 2 fique disponível em recursos herdeiros.

Para recursos herdeiros em uma configuração do Terraform, apenas o seguinte subconjunto de ações de dia 2 tem suporte. Para obter detalhes sobre as ações, procure-as na lista abrangente de ações em Quais ações posso executar nas implantações do Cloud Assembly.

Provedor Tipo de recurso do Terraform Ações de dia 2 com suporte
AWS aws_instance Ligar
Desligar
Reinicializar
Redefinir
Azure azurerm_virtual_machine Ligar
Desligar
Reiniciar
Suspender
vSphere vsphere_virtual_machine Ligar
Desligar
Reinicializar
Redefinir
Desligar
Suspender
Criar snapshot
Excluir instantâneo
Reverter Snapshot
GCP google_compute_instance Ligar
Desligar
Criar snapshot
Excluir instantâneo

Solução de problemas de disponibilidade de ações de dia 2

Ações de dia 2 prontas para uso (OOTB) que estão ausentes ou desativadas podem exigir solução de problemas.

Problema Causa Resolução
Um recurso do Terraform não tem uma ação esperada de dia 2 OOTB no menu Ações.

A ação pode não ser compatível com o provedor e o tipo de recurso, conforme mencionado na lista anterior.

Como alternativa, a ação pode precisar de até 20 minutos para aparecer devido à temporização da descoberta de recursos e do cache de recursos.

Verifique o provedor e o tipo de recurso no projeto.

Aguarde até 20 minutos para que a coleta de dados seja concluída.

Um recurso do Terraform não tem uma ação esperada de dia 2 mesmo após os 20 minutos para a coleta de dados.

Um problema de detecção de recursos está impedindo que a ação seja exibida.

Uma maneira de isso acontecer é quando o recurso é criado acidentalmente em uma zona de nuvem fora do projeto. Por exemplo, seu projeto inclui apenas uma conta de nuvem e uma zona de nuvem us-east-1 cloud, mas a configuração do Terraform inclui um bloco de provedor para us-west-1, e você não o alterou no tempo de design.

Outra possibilidade é que a coleta de dados não esteja funcionando.

Verifique as zonas de nuvem do projeto em relação às zonas de nuvem no design.

Acesse Infraestrutura > Conexões > Contas de nuvem e verifique o status da coleta de dados e a data da última coleta bem-sucedida para a conta de nuvem.

Mesmo que não haja problemas óbvios com o estado do recurso e a coleta de dados, uma ação de dia 2 está desativada (cinza). Ocorrem problemas de tempo e falha de coleta de dados de forma ocasional. O problema se resolverá sozinho dentro de 20 minutos.
A ação de dia 2 incorreta está desativada, uma que deve ser ativada com base no estado do recurso.

Por exemplo, Desligar está ativado e Ligar está desativado, mesmo que o recurso tenha sido desligado usando a interface do provedor.

O tempo de coleta de dados pode causar incompatibilidade temporária. Se você alterar o estado de energia fora do vRealize Automation, levará tempo para refletir corretamente a alteração. Aguarde até 20 minutos.

Como usar provedores Terraform personalizados no vRealize Automation

Se você quiser usar um provedor Terraform personalizado, siga estas etapas.

No seu repositório de controle de versão do Git, no diretório Terraform que contém main.tf, adicione a seguinte estrutura de subdiretório e seu arquivo ZIP do provedor Terraform personalizado.

terraform.d/plugins/<HOSTNAME>/<NAMESPACE>/<TYPE>/terraform-provider-<TYPE_VERSION_TARGET>.zip

Por exemplo, se baixou o azurerm versão 3.12.0, você cria a seguinte estrutura.

terraform.d/plugins/registry.terraform.io/hashicorp/azurerm/terraform-provider-azurerm_3.12.0_linux_amd64.zip