Provisionar recursos do Backup e DR com o Terraform

Hashicorp Terraform é uma ferramenta de infraestrutura como código (IaC, na sigla em inglês) que permite provisionar e gerenciar infraestrutura em nuvem. O Terraform fornece plug-ins chamados provedores , que permitem interagir com provedores de nuvem e outras APIs. É possível usar o provedor Terraform para Google Cloud para provisionar e gerenciar Google Cloud recursos, incluindo o Backup e DR.

Esta página apresenta o uso do Terraform com o Backup e DR, incluindo uma introdução a como o Terraform funciona e alguns recursos para ajudar você a começar a usar o Terraform com Google Cloud. Você também encontrará links para documentos de referência do Terraform para Backup e DR, exemplos de código e guias para usar o Terraform para provisionar Backup e DR resources.

Para obter instruções sobre como começar a usar o Terraform para Google Cloud, consulte Instalar e configurar o Terraform ou o Terraform para Google Cloud início rápido.

Como o Terraform funciona

O Terraform tem uma sintaxe declarativa e orientada pela configuração, que você pode usar para descrever a infraestrutura que você quer provisionar no seu Google Cloud projeto. Depois de criar essa configuração em um ou mais arquivos de configuração do Terraform, use a CLI do Terraform para aplicá-la a essa configuração nos recursos de Backup e DR.

As etapas a seguir explicam como o Terraform funciona:

  1. Você descreve a infraestrutura que quer provisionar em um arquivo de configuração do Terraform. Não é preciso escrever código descrevendo como provisionar a infraestrutura. O Terraform provisiona a infraestrutura para você.
  2. Você executa o comando terraform plan, que avalia sua configuração e gera um plano de execução. É possível analisar o plano e fazer alterações conforme necessário.
  3. Você executa o comando terraform apply, que realiza as seguintes ações:

    1. Ele provisiona sua infraestrutura com base no plano de execução invocando as APIs correspondentes do Backup e DR em segundo plano.
    2. Ele cria um arquivo de estado do Terraform, que é um arquivo JSON que mapeia os recursos no arquivo de configuração aos recursos na infraestrutura do mundo real. O Terraform usa esse arquivo para manter um registro do estado mais recente da sua infraestrutura e determinar quando criar, atualizar e destruir recursos.
    3. Ao executar terraform apply, o Terraform usa o mapeamento no arquivo de estado para comparar a infraestrutura atual com o código e fazer atualizações conforme necessário:

      • Se um objeto de recurso for definido no arquivo de configuração, mas não existir no arquivo de estado, o Terraform o criará.
      • Se há um objeto de recurso no arquivo de estado, mas tem uma configuração diferente do arquivo de configuração, o Terraform atualiza o recurso para corresponder ao arquivo de configuração.
      • Se um objeto de recurso no arquivo de estado corresponder ao seu arquivo de configuração, o Terraform deixará o recurso inalterado.

Recursos do Terraform para Backup e DR

Recursos são os elementos fundamentais da linguagem do Terraform. Cada no bloco "resource", que descreve um ou mais objetos de infraestrutura, como ou instâncias de computação.

A tabela a seguir lista os recursos do Terraform disponíveis para Backup e DR:

Serviço Recursos do Terraform Fontes de dados
Backup e DR
  • google_backup_dr_backup_plan_association
  • Guias baseados no Terraform para Backup e DR

    A tabela a seguir lista os guias e tutoriais do Terraform para Backup e DR:

    Guia Detalhes
    Criar e gerenciar um backup vault Explica como criar um backup vault.
    Criar e gerenciar um plano de backup para recursos protegidos Explica como criar um plano de backup.
    Fazer backup de instâncias do Compute Engine em um backup vault Explica como configurar um backup programado.

    Módulos e blueprints do Terraform para Backup e DR

    Os módulos e blueprints ajudam a automatizar o provisionamento e o gerenciamento de Google Cloud recursos em escala. Um módulo é um conjunto reutilizável de arquivos de configuração do Terraform que cria uma abstração lógica dos recursos do Terraform. Um blueprint é um pacote de módulos implantáveis e reutilizáveis e uma política que implementa e documenta uma solução específica.

    A tabela a seguir lista os módulos e blueprints relacionados ao Backup e DR:

    Módulo ou blueprint Detalhes
    backup-dr Implantar dispositivos de backup/recuperação

    A seguir