Sobre a configuração do Terraform em sistemas UNIX-Like

Para usar o Terraform para criar componentes do Oracle Cloud Infrastructure, você deve fazer download e instalar o Terraform. Você também fará download dos módulos do Terraform que criam os arquivos de configuração que você usará para criar os componentes de infraestrutura necessários.

O sistema no qual você instala o Terraform e armazena os módulos Teraform podem estar no local ou na nuvem. Por conveniência, faremos isso como seu sistema local ou seu host local.

Antes de executar o Terraform:

  • Gerar um par de chaves SSH usado para permitir que você acesse suas instâncias do serviço Compute

  • Gerar uma chave de assinatura de API usada para autenticar chamadas de API feitas pelo Terraform

  • Definir variáveis de ambiente usadas pelo Terraform para autenticar o acesso e executar seus planos

Após concluir essas etapas, você estará pronto para aplicar os arquivos de configuração do Terraform para criar seus componentes de infraestrutura no Oracle Cloud Infrastructure.

Instalar o Terraform

Em sistemas UNIX-like ou Linux, incluindo Oracle Linux, você pode instalar o Terraform fazendo download e extraindo o pacote Terraform para seu sistema operacional.

  1. Vá para https://www.terraform.io/downloads.html.
  2. Faça download do pacote apropriado dependendo do seu sistema operacional.
  3. Extraia o pacote para o caminho /usr/local/bin/.
    Você pode extrair o Terraform para qualquer outro diretório no host local. Certifique-se de que o diretório esteja incluído na variável PATH.
    O Terraform está instalado e pronto para uso.
  4. Verifique a instalação.
    terraform -v

    A versão do Terraform é exibida, como mostrado neste exemplo:

    Terraform v0.12.18

Gerar um Par de Chaves SSH para Acessar os Hosts Bastion

Você pode usar o SSH para acessar instâncias de computação no Oracle Cloud com segurança. Gere um par de chaves SSH em seu host local. Adicione a chave pública SSH aos bastion hosts ao criá-los. Ao estabelecer conexão com um bastion host usando SSH, forneça a chave privada para autenticar o acesso.

Use o utilitário ssh-keygen para gerar um par de chaves SSH. Não defina uma frase-senha para sua chave SSH.

  • Em uma janela de terminal, digite os seguintes comandos:
    ssh-keygen -t rsa -N "" -b 2048 -C "key_name" -f path/root_name
    • -t rsa especifica que a chave deve ser gerada usando o algoritmo RSA

    • -N "" especifica a frase-senha que você deseja associar a essa chave. Não informe nada entre as aspas. A chave é criada sem uma frase-senha.

    • -b 2048 especifica que você deseja gerar uma chave de 2048 bits. Esse valor é o valor padrão e também é o valor mínimo recomendado.

    • -C "key_name" especifica o nome deste par de chaves.

    • -f path/root_name especifica o local em que a chave é salva e o nome raiz da chave pública e da chave privada. A chave pública tem .pub anexado ao nome raiz.

O par de chaves SSH é gerado e salvo no local especificado.

Observe a localização.

Gerar um Par de Chaves SSH para Acessar Instâncias Privadas

Você pode usar bastion hosts para criar conexões SSH com instâncias de computação que não têm endereços IP públicos e não permitem acesso pela internet pública. Como prática recomendada de segurança, gere pares de chaves SSH separadas para os hosts bastion e as instâncias privadas.

Use ssh-keygen no seu host local para gerar um par de chaves SSH.

Anote o local em que você salva as chaves SSH.

Gerar uma Chave de Assinatura da API

Você deve fornecer um par de chaves RSA no formato PEM (private-enhanced mail) para permitir que o Terraform faça a autenticação com o Oracle Cloud Infrastructure. Observe que essa chave de assinatura de API não é igual ao par de chaves SSH que você usa para acessar suas instâncias. Você pode usar OpenSSL para gerar a chave de assinatura da API.

  1. Crie um subdiretório oculto no seu diretório home para armazenar a chave PEM.
    mkdir ~/.oci
  2. Gere uma chave privada (tamanho: 2048 bits ou mais recente).
    openssl genrsa -out ~/.oci/key_name.pem 2048
  3. Altere as permissões no arquivo de chave privada para garantir que apenas você possa ler a chave.
    chmod go-rwx ~/.oci/key_name.pem
  4. Gere a chave pública para a chave privada.
    openssl rsa -pubout -in ~/.oci/key_name.pem -out ~/.oci/key_name_public.pem
Você pode armazenar as chaves em qualquer diretório de sua escolha.

Observe a localização.

Fazer Upload da Chave de Assinatura da API Usando a Console

Depois de gerar uma chave de assinatura de API, faça upload da chave pública do usuário associado no Oracle Cloud Infrastructure. Na primeira vez que você faz upload de uma chave de assinatura de API, deverá usar a console web. Em seguida, você também pode usar a API para fazer upload de uma chave de API.

  1. Acesse a Console do Oracle Cloud Infrastructure.
  2. No menu de serviços, selecione Identidade e Usuários.
  3. Na página Usuários, clique no usuário para o qual você deseja fazer upload da chave.
  4. Na página de detalhes do usuário, clique em Adicionar Chave Pública.
  5. Copie o valor da chave pública do arquivo ~/.oci/key_name_public.pem e cole-o no campo PUBLIC KEY.
  6. Clique em Adicionar.
    A chave é carregada e sua impressão digital é exibida.
  7. Copie a impressão digital. Você precisará dele mais tarde.