Preparazione al provisioning delle risorse dell'infrastruttura

Installare Terraform nel sistema host del database di origine in locale e generare le chiavi necessarie per creare le risorse di infrastruttura in Oracle Cloud.

Installa Terraform

Terraform è uno strumento di terze parti che è possibile utilizzare per eseguire il provisioning e la gestione efficiente delle risorse in Oracle Cloud Infrastructure.

Nei sistemi UNIX o Linux, incluso Oracle Linux, è possibile installare Terraform scaricando ed estraendo il package Terraform per il sistema operativo.

Installare Terraform versione 0.12.16+ su un computer locale.

  1. Andare a https://releases.hashicorp.com/terraform/.
  2. Fare clic sulla versione richiesta e scaricare il package appropriato a seconda del sistema operativo in uso.
  3. Estrarre il package nel percorso /usr/local/bin/.
    È possibile estrarre Terraform in qualsiasi altra directory dell'host locale. Assicurarsi che la directory sia inclusa nella variabile PATH.
    Terraform è installato e pronto per l'uso.
  4. Verifica l'installazione.
    terraform -v

    Viene visualizzata la versione di Terraform.

Genera una chiave di firma API

È necessario fornire una coppia di chiavi RSA nel formato PEM (Private Enhanced Mail) per consentire a Terraform di eseguire l'autenticazione con Oracle Cloud Infrastructure. Tenere presente che questa chiave di firma API non è uguale 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 sul file della chiave privata per assicurarsi di poter leggere solo 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 a scelta.

Prendere nota della posizione.

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, è possibile utilizzare l'API anche per caricare una chiave API.

  1. Collegarsi alla console di Oracle Cloud Infrastructure.
  2. Nel menu Servizi selezionare Identità, quindi selezionare Utenti.
  3. Nella pagina Utenti fare clic sull'utente per il quale caricare la chiave.
  4. Fare clic su Aggiungi chiave pubblica nella pagina dei dettagli utente.
  5. Copiare il valore della chiave pubblica dal file ~/.oci/key_name_public.pem e incollarlo nel campo KEY PUBLIC.
  6. Fare clic su Aggiungi.
    La chiave viene caricata e viene visualizzata la relativa impronta.
  7. Copiare l'impronta digitale. Ne avrai bisogno più tardi.

Genera una coppia di chiavi SSH per l'host Bastion

Una coppia di chiavi SSH viene utilizzata per abilitare l'accesso sicuro alle istanze. È possibile generare una coppia di chiavi sull'host locale. I moduli Terraform aggiungono quindi la chiave pubblica all'host bastion. Quando si esegue la connessione all'host del bastione, fornire la chiave privata per autenticare l'accesso.

  • Utilizzare la utility ssh-keygen e generare una coppia di chiavi SSH. Non impostare una passphrase per la coppia di chiavi.
    ssh-keygen -t rsa -N "" -b 2048 -C "key_name" -f path/root_name
    • -t rsa: specifica che la coppia di chiavi deve essere generata utilizzando l'algoritmo RSA

    • -N "": specifica la passphrase che si desidera associare a questa coppia di chiavi. Non immettere nulla tra le virgolette. Creare la coppia di chiavi senza passphrase.

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

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

    • -f path/root_name: specifica la directory in cui viene salvata la coppia di chiavi e il nome radice della chiave pubblica e privata. La chiave pubblica ha .pub aggiunto al nome radice.

La coppia di chiavi SSH viene generata e salvata nella directory specificata. Prendere nota del percorso completo e del nome dei file chiave.