Nota
- Questa esercitazione richiede l'accesso a Oracle Cloud. Per iscriverti a un account gratuito, consulta Inizia a utilizzare Oracle Cloud Infrastructure Free Tier.
- Utilizza valori di esempio per le credenziali, la tenancy e i compartimenti di Oracle Cloud Infrastructure. Al termine del laboratorio, sostituisci questi valori con quelli specifici del tuo ambiente cloud.
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.
Obiettivi
- Avvia il contenitore CD3 con un solo clic, quindi crea ed esporta le risorse di identità, rete e computazione OCI utilizzando le pipeline Jenkins.
Prerequisiti
-
Criterio Oracle Cloud Infrastructure Identity and Access Management (OCI IAM) per consentire all'utente o al principal dell'istanza di gestire i servizi necessari per la creazione o l'esportazione mediante il toolkit.
-
L'utente che distribuisce lo stack deve avere accesso per avviare lo stack di Resource Manager OCI, l'istanza di computazione e le risorse di rete.
Task 1: Impostare il contenitore del toolkit
-
Fare clic su Distribuisci in Oracle Cloud per avviare lo stack di Resource Manager OCI che crea CD3 WorkVM.
-
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
. -
Selezionare la sezione Esegui applicazione nella parte inferiore e fare clic su Crea.
-
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.
Dopo aver eseguito il login al contenitore, connetterlo alla tenancy OCI per eseguire le API OCI.
Task 2: connettere il contenitore alla tenancy OCI
-
Passare a
cd /cd3user/oci_tools/cd3_automation_toolkit/user-scripts/
e aprire il filetenancyconfig.properties
. -
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
. -
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
. -
Lasciare il parametro
outdir_structure_file
al relativo valore predefinito per raggruppare i fileauto.tfvars
generati per ogni servizio. -
Per lo strumento IaC, è possibile selezionare terraform o tofu. Il valore predefinito è terraform. Per usare OpenTofu, specificare tofu.
-
In Parametri avanzati per DevOps, selezionare
yes
per il parametrouse_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.
-
Salvare il file ed eseguire
createTenancyConfig.py
per inizializzare l'ambiente e iniziare a utilizzare CD3.python createTenancyConfig.py tenancyconfig.properties
-
Verificare l'output.
-
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
-
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.
-
Aprire
/cd3user/tenancies/<prefix>/terraform_files/<region>/compute/variables_<region>.tf
dal contenitore. Nella variabileinstance_ssh_keys
aggiungere il nome della variabile per le chiavi SSH specificate nel foglio Excel: ssh_public_key con il valore corrispondente (contenuto chiave). -
Nella variabile
instance_source_ocids
includere il nome della variabile specificato nel foglio Excel per l'immagine di originemyimageocid
e assegnare il relativo OCID come valore corrispondente. Le seguenti schermate sono di riferimento. -
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
-
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
.
-
-
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 cartellaterraform_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.
-
Nella sezione Modello Excel, caricare il file Excel recuperato nel task 3.1.
-
In Flusso di lavoro, selezionare Crea nuove risorse in OCI (Greenfield Workflow).
-
In MainOptions, selezionare Identità, Rete e Computazione.
-
In SubOptions, selezionare Aggiungi/Modifica/Elimina gruppi, Aggiungi/Modifica/Elimina criteri, Crea rete, Aggiungi/Modifica/Elimina istanze/Criterio di backup di avvio.
-
Fare clic su Genera. Le fasi della pipeline setupoci vengono eseguite in ordine.
Task 3.3: Fornire l'approvazione per ogni piano di servizio
-
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.
-
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.
-
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.
-
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.
-
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)
-
Specificare il nome del compartimento. Fare clic su Genera e l'esecuzione delle fasi Pipeline setupoci viene avviata.
-
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. -
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>
. -
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.
-
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
-
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
.
-
-
Eseguire il login a Jenkins.
Nota: se si accede all'URL di Jenkins per la prima volta, impostare le credenziali di login.
Task 4.3: Esegui pipeline setupoci
-
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 cartellaterraform_files
. Fare clic su setupoci pipeline e su Crea con parametri. -
Nella sezione Modello Excel, caricare il file Excel recuperato nel task 4.1.
-
In Flusso di lavoro selezionare Esporta risorse esistenti da OCI (Flusso di lavoro non Greenfield).
-
In MainOptions selezionare Esporta identità, Esporta rete ed Esporta computazione.
-
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.
-
Fare clic su Genera. Le fasi della pipeline setupoci vengono eseguite in ordine per ogni servizio.
-
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.
-
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>
.
Collegamenti correlati
conferme
- Autori - Lasya Vadavalli (Senior Cloud Engineer), Dipesh Kumar Rathod (Master Principal Cloud Architect, Infrastructure)
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.
Configure CD3 with Jenkins to Create and Export Oracle Cloud Infrastructure Resources
F95145-04
October 2024