Pianificare la distribuzione

La distribuzione di Terraform in un ambiente multicloud utilizza i passi di base riportati di seguito.

  1. Stabilire una connessione esterna

    Quando distribuisci un ambiente di staging, sviluppo, controllo qualità o produzione in più aree cloud, devi prima stabilire una connessione esterna da Oracle Cloud Infrastructure Resource Manager a un sistema di controllo del codice sorgente come GitHub, GitLab o Bitbucket. GitHub contiene i moduli Terraform che si desidera distribuire nei vari compartimenti di un'area Oracle Cloud Infrastructure.

    Il diagramma riportato di seguito mostra questa relazione.



    iac-multiaccount-deployment-oracle.zip

  2. Codice modifica

    Il repository di codici centrale in GitHub contiene i moduli Terraform sottoposti a check-in dal team di Development Operations (DevOps). Questo team di ingegneri lavora nel repository dell'infrastruttura in una diramazione di breve durata, v1.0. Quando le modifiche al codice nella diramazione di breve durata sono pronte, il tecnico DevOps le esamina e le unisce nella diramazione principale. Il tecnico DevOps fornisce quindi tag Git per il repository. Per qualsiasi modifica futura nel repository dell'infrastruttura, il tecnico DevOps ripete questo stesso processo.

    La distribuzione viene attivata dal tecnico DevOps che contrassegna il repository che contiene il codice Terraform. Questa azione avvia l'esecuzione della pipeline di distribuzione.

    L'applicazione di tag al repository con dev-us-ashburn-1/dev/1.0 attiva la pipeline per distribuire l'account di sviluppo della computazione nell'area US-Ashburn-1.

    Il tag di esempio dev-us-ashburn-1/dev/1.0 contiene l'ambiente di destinazione (Dev), l'area Oracle (US-Ashburn-1), il team (Dev) e un numero di versione (1.0). È possibile gestire altre distribuzioni di destinazione come QA, staging e produzione in modo simile.



    distribuzione multiregione iac-oracle.zip

  3. Distribuire l'ambiente di sviluppo

    Per distribuire l'ambiente di sviluppo nelle aree us-ashburn-1, us-phoenix-1 e us-sanjose-1 in una distribuzione multicloud, verificare la VCN in cui si desidera distribuire l'infrastruttura. Le pipeline di codice separate vengono sottoposte a check-in nel repository GitHub come illustrato in precedenza. Le modifiche, ad esempio l'aggiunta o la rimozione di risorse, vengono apportate alla pipeline e viene creata una nuova versione della tag Git, quindi ne viene eseguito il push nell'area per distribuire le risorse.

  4. Crea un provider di origine configurazione

    In Oracle Cloud Infrastructure Resource Manager, il primo passo è creare un provider di origine configurazione con un endpoint pubblico nel server GitHub in cui vengono distribuiti i moduli terraform. Ogni area dispone del proprio provider di origine, quindi le risorse vengono distribuite nel compartimento in cui si desidera distribuire le risorse: sviluppo, controllo qualità, staging o produzione. Utilizzare l'interfaccia della riga di comando (CLI) di Oracle Cloud Infrastructure in base alle esigenze dopo il completamento della fase di approvazione del codice per creare uno stack. Eseguire il piano Terraform dopo aver creato lo stack. Una volta eseguito correttamente il piano, viene applicato Terraform. Dopo l'esecuzione, controlla la presenza delle risorse create nei compartimenti e nelle aree corrispondenti. I file di stato di Terraform vengono memorizzati e gestiti in Oracle Cloud Infrastructure Registry. Metadati come i file YAML vengono memorizzati in Oracle Cloud Infrastructure Artifacts Registry. È inoltre possibile abilitare Oracle Cloud Infrastructure Notifications e Oracle Cloud Infrastructure Events per avvisare e notificare l'avanzamento del provisioning della distribuzione dell'infrastruttura.