Terraform e Infrastructure Manager

Para trabalhar com o Infrastructure Manager (Infra Manager), deve ter conhecimentos do Terraform. Para saber mais sobre o Terraform, comece por ler o artigo O que é o Terraform?.

O Infra Manager implementa recursos de infraestrutura e configurações que são definidos numa configuração do Terraform. Estas configurações podem consistir em vários ficheiros e diretórios, mas o respetivo ponto de entrada tem de ser um módulo raiz do Terraform.

O Infra Manager usa o termo projeto para se referir a uma configuração do Terraform.

Para saber mais sobre o Terraform com o Google Cloud, consulte o artigo Terraform no Google Cloud.

Módulos do Terraform para Google Cloud

Para um conjunto de módulos para aprovisionar Google Cloud recursos, consulte Projetos e módulos do Terraform para o Google Cloud.

Também pode criar os seus próprios módulos do Terraform para Google Cloud. Para mais detalhes, consulte Criar módulos.

Versões do Terraform compatíveis

O Infra Manager suporta as seguintes versões do Terraform:

  • Terraform, versão 1.2.3
  • Versão 1.3.10 do Terraform
  • Versão 1.4.7 do Terraform
  • Versão 1.5.7 do Terraform

Pode usar a flag --tf-version-constraint para especificar a versão do Terraform que o Infra Manager usa para criar uma implementação.

Se não especificar uma versão do Terraform, é usada a versão suportada mais recente por predefinição.

Quando atualiza uma implementação, pode alterar a versão do Terraform para uma versão posterior do Terraform. Não pode alterar para uma versão suportada anterior do Terraform.

Para ver a versão do Terraform que foi usada para criar uma implementação ou uma revisão específica, consulte os artigos Veja os detalhes de uma implementação e Veja os detalhes de uma revisão.

Restrições nas configurações do Terraform

Para usar o Infrastructure Manager para implementar uma configuração do Terraform, a configuração tem as seguintes restrições.

Valores de configuração do Terraform e dados confidenciais

Não inclua informações pessoais nem confidenciais nos valores de configuração do Terraform.

A documentação do Google Cloud fornecedor indica valores de configuração que podem incluir informações confidenciais.

Por exemplo, o recurso google_storage_bucket_object permite a criação de um objeto do Cloud Storage através do argumento content. Este argumento está etiquetado como sensível na página google_storage_bucket_object da Google Cloud documentação do fornecedor.

Pode usar estas etiquetas para ajudar a orientar-se à medida que cria configurações do Terraform ou quando revê uma configuração do Terraform existente antes da utilização.

Consulte o Google Cloud Aviso de Privacidade para ver informações sobre como a Google Cloud processa as informações pessoais que recolhe ou gera durante a prestação e a administração dos Serviços na nuvem.

Use o fornecedor do Terraform para Google Cloud

Pode configurar implementações e pré-visualizações para usar fornecedores do Terraform mantidos pelo Infra Manager para o Google Cloud.

Este campo opcional permite-lhe especificar a utilização dos fornecedores Terraform mantidos pelo Infra Manager para criar ou atualizar uma implementação ou uma implementação de pré-visualização. Pode especificar um fornecedor do Terraform através da CLI gcloud.

O Infra Manager suporta fornecedores do Terraform para Google Cloud:

  • google
  • google-beta

Omita este campo para usar o fornecedor do Terraform mantido pela HashiCorp para Google Cloud.

Para saber como especificar a utilização de um fornecedor Terraform mantido pelo Infra Manager, consulte os artigos Implemente infraestrutura com o Infrastructure Manager, Atualize uma implementação ou Pré-visualize uma implementação.

Verifique as versões suportadas do fornecedor

Para verificar as versões de um fornecedor do Terraform que o Infra Manager suporta, tem de ver o ficheiromanifest.json no contentor do Cloud Storage mantido pelo Infra Managerassociado à região da sua implementação no formato: Google Cloud

https://storage.googleapis.com/LOCATION-im-providers/hashicorp/PROVIDER_VERSION/manifest.json

Pode encontrar uma lista completa das versões suportadas no campo versions do ficheiro manifest.json.

Por exemplo, se a sua implementação estiver localizada na região africa-south1 e estiver a usar o fornecedor google-beta, navegue para https://storage.googleapis.com/africa-south1-im-providers/hashicorp/google-beta/manifest.json para ver as regiões disponíveis.

O que se segue?