Nota

Configura CD3 con Jenkins per creare ed esportare le risorse Oracle Cloud Infrastructure

Introduzione

Il toolkit di automazione del Cloud Deployment Design Deliverable (CD3) ti consente di creare, esportare e gestire facilmente le risorse Oracle Cloud Infrastructure (OCI) convertendo facilmente i modelli Microsoft Excel in moduli Terraform completamente funzionali.

Il toolkit supporta anche la gestione trasparente delle risorse utilizzando il servizio DevOps Git OCI e le pipeline Jenkins.

workflow

Obiettivi

Prerequisiti

Task 1: Impostare il contenitore del toolkit

  1. Fare clic su Distribuisci in Oracle Cloud per avviare lo stack di Resource Manager OCI che crea CD3 WorkVM.

    Deploy_To_OCI

  2. Accettare i termini e le condizioni. Immettere la rete, il compartimento, il nome della VM, la forma e così via per creare il file workVM.

    Nota: per gestire un ambiente sicuro, fornire un intervallo CIDR di origine specifico per accedere alla VM. Non utilizzare 0.0.0.0/0.

  3. Selezionare la sezione Esegui applicazione nella parte inferiore e fare clic su Crea.

  4. Una volta completato il job di applicazione, fare clic sul job e scorrere fino alla fine dei log.

    Trovare i dettagli per la VM creata e i comandi da eseguire per eseguire il login al contenitore del toolkit. Output di esempio mostrato nell'immagine seguente.

    output stack rm

    Dopo aver eseguito il login al contenitore, connetterlo alla tenancy OCI per eseguire le API OCI.

Task 2: connettere il contenitore alla tenancy OCI

  1. Passare a cd /cd3user/oci_tools/cd3_automation_toolkit/user-scripts/ e aprire il file tenancyconfig.properties.

  2. Aggiungere i valori di configurazione richiesti nelle sezioni Parametri obbligatori e Parametri dettagli di autorizzazione.

    Nota: in questa esercitazione verrà utilizzata l'autenticazione tramite chiave API. Mantenere il valore predefinito auth_mechanism.

  3. In OCI Console, in Impostazioni utente, caricare la chiave pubblica in APIkeys. Posizionare la chiave privata all'interno del contenitore. Copiare i valori di configurazione richiesti e incollarli sotto i parametri corrispondenti nel file tenancyconfig.properties.

  4. Lasciare il parametro outdir_structure_file al relativo valore predefinito per raggruppare i file auto.tfvars generati per ogni servizio.

  5. Per lo strumento IaC, è possibile selezionare terraform o tofu. Il valore predefinito è terraform. Per usare OpenTofu, specificare tofu.

  6. In Parametri avanzati per DevOps, selezionare yes per il parametro use_oci_devops_git.

    Verrà creato un repository Git OCI DevOps per i file terraform generati, un bucket di storage degli oggetti OCI per il file di stato e un argomento di notifica OCI per notificare le modifiche nel repository DevOps.

  7. Salvare il file ed eseguire createTenancyConfig.py per inizializzare l'ambiente e iniziare a utilizzare CD3.

    python createTenancyConfig.py tenancyconfig.properties
    
  8. Verificare l'output.

  9. Successivamente, per creare le risorse in OCI, seguire il Task 3 o per esportare le risorse, seguire il Task 4.

Task 3: Creare risorse in OCI

Task 3.1: Preparare file Excel e variabili

  1. Scarica il modello Excel precompilato da qui: cd3quickstart.xlsx per questa esercitazione. Modifica i valori di area e compartimento in base all'ambiente in uso e passa al contenitore.

  2. Aprire /cd3user/tenancies/<prefix>/terraform_files/<region>/compute/variables_<region>.tf dal contenitore. Nella variabile instance_ssh_keys aggiungere il nome della variabile per le chiavi SSH specificate nel foglio Excel: ssh_public_key con il valore corrispondente (contenuto chiave).

  3. Nella variabile instance_source_ocids includere il nome della variabile specificato nel foglio Excel per l'immagine di origine myimageocid e assegnare il relativo OCID come valore corrispondente. Le seguenti schermate sono di riferimento.

    ssh_key

    sourceocid

  4. Eseguire i seguenti comandi in sequenza per sincronizzare le modifiche locali precedenti con il repository Git DevOps.

    cd /cd3user/tenancies/<prefix>/terraform_files
    git status
    git add -A .
    git commit -m "msg"
    git push
    

Task 3.2: eseguire il login a Jenkins ed eseguire la pipeline setupoci

  1. Avviare Jenkins e accedervi utilizzando i comandi riportati di seguito dal contenitore.

    • Per avviare Jenkins, utilizzare il comando /usr/share/jenkins/jenkins.sh &.

    • Per accedere a Jenkins, utilizzare questo URL https://<IP Address of the machine hosting docker container>:8443.

  2. Eseguire il login a Jenkins. Nel dashboard sono presenti cartelle con nomi <prefix>. Fare clic sul nome <prefix> con cui si sta lavorando. Ha la pipeline setupoci corrispondente e la cartella terraform_files. Fare clic su setupoci pipeline e su Crea con parametri.

    Nota: se si accede all'URL di Jenkins per la prima volta, impostare le credenziali di login.

    excel_template

  3. Nella sezione Modello Excel, caricare il file Excel recuperato nel task 3.1.

    excel_template

  4. In Flusso di lavoro, selezionare Crea nuove risorse in OCI (Greenfield Workflow).

  5. In MainOptions, selezionare Identità, Rete e Computazione.

  6. In SubOptions, selezionare Aggiungi/Modifica/Elimina gruppi, Aggiungi/Modifica/Elimina criteri, Crea rete, Aggiungi/Modifica/Elimina istanze/Criterio di backup di avvio.

  7. Fare clic su Genera. Le fasi della pipeline setupoci vengono eseguite in ordine.

Task 3.3: Fornire l'approvazione per ogni piano di servizio

  1. Fare clic sullo stadio di identità per i log e fare clic sul collegamento per applicare la build della pipeline di identità. Nella fase Ottieni approvazione, fare clic sui log e selezionare Continua. Controllare i log nella fase Applica per verificare le risorse di identità create.

    terraformpipeline

  2. Analogamente, dalla fase di rete nella pipeline setupoci, fare clic sui log e quindi sul collegamento per applicare la build della pipeline di rete. Nella fase Ottieni approvazione, fare clic sui log e selezionare Continua. Controllare i log nella fase Applica per verificare le risorse di rete create.

  3. Fare clic sui log delle fasi di computazione. Fare clic sul collegamento per calcolare la build della pipeline di applicazione.

    Nota: la pipeline di terraform di computazione non è riuscita. Questo perché le risorse di calcolo dipendono dalla rete per essere pronte. Per risolvere questo problema, attivare manualmente la pipeline di terraform di computazione dopo la riuscita dell'applicazione della pipeline di rete. Il passo successivo mostra come eseguire questa operazione.

  4. Fare clic su Crea ora per la pipeline di applicazione della computazione. Dopo l'avvio dell'esecuzione delle fasi della pipeline, nella fase Ottieni approvazione fare clic sui log e selezionare Continua. Controllare i log nella fase Applica per verificare le risorse di computazione create.

  5. L'esecuzione di Crea rete crea poche regole nella VCN che non sono ancora presenti nel foglio di Excel CD3 (dato che questi dettagli vengono inizialmente presi dalla scheda Subnet). Per sincronizzarli con il file Excel, creare di nuovo la pipeline setupoci utilizzando lo stesso foglio Excel di cui sopra, impostare il workflow come Crea risorse in OCI, selezionare Rete nelle opzioni principali e quindi le opzioni secondarie riportate di seguito.

    Security Rules  ---> Export Security Rules (From OCI into SecRulesinOCI sheet), Add/Modify/Delete Security Rules (Reads SecRulesinOCI sheet) 
    
    Route Rules     ---> Export Route Rules (From OCI into RouteRulesinOCI sheet), Add/Modify/Delete Route Rules (Reads RouteRulesinOCI sheet)
    
    DRG Route Rules ---> Export DRG Route Rules (From OCI into DRGRouteRulesinOCI sheet), Add/Modify/Delete DRG Route Rules (Reads DRGRouteRulesinOCI sheet)
    
  6. Specificare il nome del compartimento. Fare clic su Genera e l'esecuzione delle fasi Pipeline setupoci viene avviata.

  7. Il foglio Excel verrà popolato con i dati Regole di sicurezza, Regole di instradamento e Regole di instradamento DRG. I file Terraform tfvars vengono generati per questi servizi.

  8. Il file Excel aggiornato contenente i dati esportati da OCI è presente nella sezione Crea artifact della build setupoci specifica. Il file Excel è presente anche nel contenitore sotto /cd3user/tenancies/<prefix>.

  9. Fare clic sui log della fase Rete e fare clic sul collegamento per applicare la build della pipeline di rete. Il piano terraform deve mostrare Nessuna modifica per cui questi servizi in OCI e CD3 sono sincronizzati.

  10. Il processo di creazione delle risorse viene completato in OCI. Verificare le risorse create nella console OCI.

Task 4: Esporta risorse da OCI

Task 4.1: Scarica il file CD3-Blank-template.xlsx

Per il flusso di lavoro di esportazione, il toolkit sovrascrive qualsiasi dato esistente nello specifico foglio dei servizi. Si consiglia pertanto di utilizzare CD3-Blank-template.xlsx che non contiene dati per impostazione predefinita.

Scaricare il modello vuoto CD3 da qui: CD3-Vuoto-template.xlsx.

Task 4.2: eseguire il login a Jenkins

  1. Avviare Jenkins e accedervi utilizzando i comandi riportati di seguito dal contenitore.

    1. Per avviare Jenkins, utilizzare il comando /usr/share/jenkins/jenkins.sh &.

    2. Per accedere a Jenkins, utilizzare questo URL https://<IP Address of the machine hosting docker container>:8443.

  2. Eseguire il login a Jenkins.

    Nota: se si accede all'URL di Jenkins per la prima volta, impostare le credenziali di login.

    excel_template

Task 4.3: Esegui pipeline setupoci

  1. Nel dashboard Jenkins sono presenti cartelle con nomi <prefix>. Fare clic sul nome <prefix> con cui si sta lavorando. Ha la pipeline setupoci corrispondente e la cartella terraform_files. Fare clic su setupoci pipeline e su Crea con parametri.

  2. Nella sezione Modello Excel, caricare il file Excel recuperato nel task 4.1.

  3. In Flusso di lavoro selezionare Esporta risorse esistenti da OCI (Flusso di lavoro non Greenfield).

  4. In MainOptions selezionare Esporta identità, Esporta rete ed Esporta computazione.

  5. In SubOptions selezionare Esporta compartimenti/gruppi/criteri per l'identità e Esporta tutti i componenti di rete per la rete e Esporta istanze (esclude le istanze avviate da OKE) per la computazione.

    Nota: aggiungere i dettagli in AdditionalFilters, se necessario, per filtrare le risorse.

  6. Fare clic su Genera. Le fasi della pipeline setupoci vengono eseguite in ordine per ogni servizio.

    excel_template

  7. Controllare i log nella fase Esegui comandi di importazione. In caso di esito positivo, le rispettive pipeline di terraform attivate devono avere la visualizzazione della fase Piano Nessuna modifica.

    Nota: se si trovano modifiche nel piano, esaminarle e applicarle in base alle esigenze.

  8. Il file Excel aggiornato contenente i dati esportati da OCI è presente nella sezione Crea artifact della build setupoci specifica. Il file Excel è presente anche nel contenitore sotto /cd3user/tenancies/<prefix>.

conferme

Altre risorse di apprendimento

Esplora altri laboratori su docs.oracle.com/learn o accedi a più contenuti gratuiti sulla formazione su Oracle Learning YouTube channel. Inoltre, visita education.oracle.com/learning-explorer per diventare un Oracle Learning Explorer.

Per la documentazione del prodotto, visita l'Oracle Help Center.