Informazioni sulla configurazione di Terraform sui sistemi UNIX-Like

Per utilizzare Terraform per creare i componenti di Oracle Cloud Infrastructure, è necessario scaricare e installare Terraform. Verrà inoltre descritto come scaricare i moduli Terraform che creano i file di configurazione che verranno utilizzati per creare i componenti dell'infrastruttura necessari.

Il sistema in cui si installa Terraform e si memorizza i moduli Teraform può essere sia on premise che nel cloud. Per comodità, verrà utilizzato come sistema locale o host locale.

Prima di eseguire Terraform:

  • Genera una coppia di chiavi SSH utilizzata per accedere alle istanze di computazione

  • Genera una chiave di firma API utilizzata per autenticare le chiamate API effettuate da Terraform

  • Impostare le variabili di ambiente utilizzate da Terraform per autenticare l'accesso ed eseguire i relativi piani.

Dopo aver completato questi passi, sei pronto per applicare i file di configurazione Terraform per creare i componenti dell'infrastruttura in Oracle Cloud Infrastructure.

Installa Terraform

Su sistemi di tipo UNIX o Linux, incluso Oracle Linux, puoi installare Terraform scaricando ed estraendo il pacchetto Terraform per il sistema operativo in uso.

  1. Accedere a https://www.terraform.io/downloads.html.
  2. Scaricare il package appropriato in base al sistema operativo in uso.
  3. Estrarre il pacchetto nel percorso /usr/local/bin/.
    È possibile estrarre Terraform da qualsiasi altra directory dell'host locale. Verificare che la directory sia inclusa nella variabile PATH.
    Terraform è installato e pronto per l'uso.
  4. Verificare l'installazione.
    terraform -v

    Viene visualizzata la versione di Terraform, come mostrato nell'esempio riportato di seguito.

    Terraform v0.12.18

Generare una coppia di chiavi SSH per accedere agli host bastion

È possibile utilizzare SSH per accedere in modo sicuro alle istanze di computazione in Oracle Cloud. Generare una coppia di chiavi SSH sull'host locale. Aggiungere la chiave pubblica SSH agli host bastion durante la creazione. Quando si esegue la connessione a un bastion host mediante SSH, fornire la chiave privata per autenticare l'accesso.

Utilizzare l'utility ssh-keygen per generare una coppia di chiavi SSH. Non impostare una passphrase per la chiave SSH.

  • In una finestra di terminale, immettere il seguente comando:
    ssh-keygen -t rsa -N "" -b 2048 -C "key_name" -f path/root_name
    • -t rsa specifica che la chiave deve essere generata utilizzando l'algoritmo RSA

    • -N "" specifica la passphrase che si desidera associare a questa chiave. Non immettere alcun valore tra i preventivi. La chiave viene creata senza passphrase.

    • -b 2048 specifica che si desidera generare una chiave a 2048 bit. Questo valore è il valore predefinito ed è il valore minimo consigliato.

    • -C "key_name" specifica il nome di questa coppia di chiavi.

    • -f path/root_name specifica la posizione in cui la chiave viene salvata e il nome root per la chiave pubblica e la chiave privata. La chiave pubblica è .pub aggiunta al nome root.

La coppia di chiavi SSH viene generata e salvata nella posizione specificata.

Annotare il percorso.

Genera una coppia di chiavi SSH per accedere alle istanze private

Puoi utilizzare gli host bastion per creare connessioni SSH per calcolare le istanze che non dispongono di indirizzi IP pubblici e che non consentono l'accesso tramite la rete Internet pubblica. Come best practice per la sicurezza, generare coppie di chiavi SSH separate per gli host bastion e le istanze private.

Utilizzare ssh-keygen sull'host locale per generare una coppia di chiavi SSH.

Prendere nota della posizione in cui salvare le chiavi SSH.

Genera una chiave di firma API

Per consentire a Terraform di eseguire l'autenticazione con Oracle Cloud Infrastructure, è necessario fornire una coppia di chiavi RSA nel formato di posta elettronica avanzato dalla privacy (PEM). Si noti che questa chiave di firma API non corrisponde alla coppia di chiavi SSH utilizzata per accedere alle istanze. È possibile utilizzare OpenSSL per generare la chiave di firma API.

  1. Creare una sottodirectory nascosta nella directory home per memorizzare la chiave PEM.
    mkdir ~/.oci
  2. Generare una chiave privata (dimensione: 2048 bit o superiore).
    openssl genrsa -out ~/.oci/key_name.pem 2048
  3. Modificare le autorizzazioni per il file di chiavi private per assicurarsi che solo si possa leggere la chiave.
    chmod go-rwx ~/.oci/key_name.pem
  4. Generare la chiave pubblica per la chiave privata.
    openssl rsa -pubout -in ~/.oci/key_name.pem -out ~/.oci/key_name_public.pem
È possibile memorizzare le chiavi in qualsiasi directory selezionata.

Annotare il percorso.

Caricare la chiave di firma API mediante la console

Dopo aver generato una chiave di firma API, è necessario caricare la chiave pubblica per l'utente associato in Oracle Cloud Infrastructure. La prima volta che si carica una chiave di firma API, è necessario utilizzare la console Web. Successivamente, puoi anche utilizzare l'API per caricare una chiave API.

  1. Connettersi alla console di Oracle Cloud Infrastructure.
  2. Nel menu dei servizi selezionare Identità, quindi selezionare Utenti.
  3. Nella pagina Utenti fare clic sull'utente per il quale si desidera caricare la chiave.
  4. Nella pagina dei dettagli utente, fare clic su Aggiungi chiave pubblica.
  5. Copiare il valore della chiave pubblica dal file ~/.oci/key_name_public.pem e incollarlo nel campo KEY PUBLIC.
  6. Fare clic su Add.
    La chiave viene caricata e viene visualizzata l'impronta digitale.
  7. Copiare l'impronta digitale. Sarà necessario in seguito.