Aprovisione recursos do Cloud Storage com o Terraform

O HashiCorp Terraform é uma ferramenta de infraestrutura como código (IaC) que lhe permite aprovisionar e gerir a infraestrutura na nuvem. O Terraform oferece plug-ins denominados fornecedores que lhe permitem interagir com fornecedores de nuvem e outras APIs. Pode usar o fornecedor do Terraform para Google Cloud para aprovisionar e gerir Google Cloud recursos, incluindo o Cloud Storage.

Esta página apresenta a utilização do Terraform com o Cloud Storage, incluindo uma introdução ao funcionamento do Terraform e alguns recursos para ajudar a começar a usar o Terraform com o Google Cloud. Também encontra links para documentos de referência do Terraform para o Cloud Storage, exemplos de código e guias para usar o Terraform para aprovisionar recursos do Cloud Storage.

Para ver instruções sobre como começar a usar o Terraform para o Google Cloud, consulte o artigo Instale e configure o Terraform ou o início rápido do Terraform para o Google Cloud .

Como funciona o Terraform

O Terraform tem uma sintaxe declarativa e orientada para a configuração, que pode usar para descrever a infraestrutura que quer aprovisionar no seu projeto do Google Cloud. Google Cloud Depois de criar esta configuração num ou mais ficheiros de configuração do Terraform, pode usar a CLI do Terraform para aplicar esta configuração aos seus recursos do Cloud Storage.

Os passos seguintes explicam como funciona o Terraform:

  1. Descreve a infraestrutura que quer aprovisionar num ficheiro de configuração do Terraform. Não precisa de escrever código que descreva como aprovisionar a infraestrutura. O Terraform aprovisiona a infraestrutura por si.
  2. Executa o comando terraform plan, que avalia a sua configuração e gera um plano de execução. Pode rever o plano e fazer alterações conforme necessário.
  3. Executa o comando terraform apply, que realiza as seguintes ações:

    1. Aprovisiona a sua infraestrutura com base no seu plano de execução invocando as APIs do Cloud Storage correspondentes em segundo plano.
    2. Cria um ficheiro de estado do Terraform, que é um ficheiro JSON que mapeia os recursos no seu ficheiro de configuração para os recursos na infraestrutura do mundo real. O Terraform usa este ficheiro para manter um registo do estado mais recente da sua infraestrutura e para determinar quando criar, atualizar e destruir recursos.
    3. Quando executa terraform apply, o Terraform usa o mapeamento no ficheiro de estado para comparar a infraestrutura existente com o código e fazer atualizações conforme necessário:

      • Se um objeto de recurso estiver definido no ficheiro de configuração, mas não existir no ficheiro de estado, o Terraform cria-o.
      • Se um objeto de recurso existir no ficheiro de estado, mas tiver uma configuração diferente do ficheiro de configuração, o Terraform atualiza o recurso para corresponder ao ficheiro de configuração.
      • Se um objeto de recurso no ficheiro de estado corresponder ao seu ficheiro de configuração, o Terraform deixa o recurso inalterado.

Recursos do Terraform para o Cloud Storage

Os recursos são os elementos fundamentais na linguagem Terraform. Cada bloco de recursos descreve um ou mais objetos de infraestrutura, como redes virtuais ou instâncias de computação.

A tabela seguinte indica os recursos do Terraform disponíveis para o Cloud Storage:

Serviço Recursos do Terraform Origens de dados

Cloud Storage

Serviço Terraform: Cloud Storage

Inteligência de armazenamento

Serviço Terraform: Cloud Storage Control

Funcionalidade de operações em lote de armazenamento da inteligência de armazenamento

Serviço Terraform: Cloud Storage Batch Operations

-

Funcionalidade Estatísticas de armazenamento da inteligência de armazenamento

Serviço Terraform: Cloud Storage Insights

Guias baseados no Terraform para o Cloud Storage

A tabela seguinte lista guias de instruções e tutoriais baseados no Terraform para o Cloud Storage:

Guia Detalhes
Início rápido: use o Terraform para criar um contentor e carregar um objeto Este início rápido mostra como começar a usar o Terraform criando um ficheiro de configuração do Terraform que aprovisiona um contentor de armazenamento e carrega um objeto de exemplo para o contentor.
Crie um contentor Este guia explica como criar um contentor.
Obtenha metadados do contentor Este guia explica como ver os metadados de um contentor.
Carregue objetos Este guia explica como carregar objetos para um contentor a partir do seu sistema de ficheiros local.
Obtenha metadados de objetos Este guia explica como ver os metadados de um objeto.
Faça a gestão dos ciclos de vida dos objetos Este guia explica como definir a configuração do ciclo de vida para um contentor.
Configure as notificações do Pub/Sub Este guia explica como configurar o seu contentor para enviar notificações sobre alterações de objetos para um tópico Pub/Sub.
Crie chaves HMAC Este guia explica como criar chaves de código de autenticação de mensagens com base em hash (HMAC) para contas de serviço no seu projeto.
Tornar os dados públicos Este guia explica como tornar todos os objetos num contentor legíveis para todos na Internet pública.
Aloje um Website estático Este guia explica como configurar um contentor para alojar um Website estático para um domínio que lhe pertence.

Módulos e projetos do Terraform para o Cloud Storage

Os módulos e os esquemas ajudam a automatizar o aprovisionamento e a gestão de Google Cloud recursos em grande escala. Um módulo é um conjunto reutilizável de ficheiros de configuração do Terraform que cria uma abstração lógica de recursos do Terraform. Um projeto é um pacote de módulos implementáveis e reutilizáveis, e uma política que implementa e documenta uma solução específica.

A tabela seguinte apresenta módulos e esquemas relacionados com o Cloud Storage:

Módulo ou planta Detalhes
terraform-google-cloud-storage Este módulo cria um ou mais contentores do Cloud Storage e atribui-lhes autorizações básicas a utilizadores arbitrários.

O que se segue?