CI/CD attivo AWS - Integrazione e distribuzione continue per reti 5G su AWS

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

CI/CD attivo AWS

Il CI/CD può essere immaginato come una pipeline, in cui il nuovo codice viene inviato da un lato, testato in una serie di fasi (origine, compilazione, test, staging e produzione) e quindi pubblicato come codice pronto per la produzione.

Un diagramma che illustra un esempio della pipeline di codice AWS

Panoramica della pipeline CICD

Ogni fase della pipeline CI/CD è strutturata come un'unità logica nel processo di consegna. Ogni fase funge da cancello che controlla un determinato aspetto del codice. Man mano che il codice procede nella pipeline, si presume che la qualità del codice sia più elevata nelle fasi successive, poiché molti aspetti continuano a essere verificati. I problemi scoperti in una fase iniziale impediscono al codice di procedere nella pipeline. I risultati dei test vengono immediatamente inviati al team e tutte le successive build e versioni vengono interrotte se il software non supera la fase.

AWS include un set completo di strumenti di sviluppo CI/CD per accelerare lo sviluppo e i cicli di rilascio del software. AWS CodePipelineautomatizza le fasi di compilazione, test e implementazione del processo di rilascio ogni volta che si verifica una modifica del codice, in base al modello di rilascio definito. Ciò consente la fornitura rapida e affidabile di funzionalità e aggiornamenti.

Le pipeline di codice possono integrarsi con altri servizi. Questi possono essere AWS servizi, come Amazon Simple Storage Service (Amazon S3), o prodotti di terze parti, come. GitHub AWS CodePipeline può affrontare una varietà di casi d'uso operativi e di sviluppo, tra cui:

  • Compilazione, creazione e test del codice con AWS CodeBuild

  • Distribuzione continua di applicazioni basate su container nel cloud

  • Convalida prima dell'implementazione degli elementi (come descrittori e immagini dei container) necessari per il servizio di rete o per specifiche funzioni di rete native del cloud

  • Test funzionali, di integrazione e prestazionali (per reti containerizzate), inclusi test di base e di regressione function/virtual network function (CNF/VNF

  • Test di affidabilità e disaster recovery (DR).

Un diagramma che illustra i componenti della pipeline AWS CICD

AWS componenti della pipeline CICD

AWS può configurare pipeline CI/CD utilizzando i seguenti strumenti di sviluppo: AWS

La creazione di pipeline CI/CD può essere automatizzata utilizzando e. AWS CDKAWS CloudFormation Nel dominio NFV, questa automazione AWS nativa può essere integrata in un framework di Management and Orchestration (MANO) e nel framework di orchestrazione dei servizi del CSP.

Il processo CI/CD include i seguenti passaggi:

  • Configurazione della rete AWS CDK e AWS CloudFormation avvio della creazione dei prerequisiti di rete:

  • Implementazione dell'infrastruttura AWS CDK e AWS CloudFormation avvio della creazione dei seguenti stack di risorse:

Un diagramma che illustra il flusso della pipeline CICD. AWS

Diagramma di flusso della pipeline AWS CICD

La pipeline CI/CD è costruita utilizzando e utilizza un servizio di distribuzione continua che modella AWS CodePipeline, visualizza e automatizza i passaggi necessari per il rilascio del software. Definendo le fasi di una pipeline, è possibile recuperare il codice da un repository di codice sorgente, creare tale codice sorgente in un artefatto rilasciabile, testare l'artefatto e distribuirlo in produzione. Verrà distribuito solo il codice che supera con successo tutte queste fasi. Facoltativamente, puoi aggiungere altri requisiti alla tua pipeline, come le approvazioni manuali, per garantire che solo le modifiche approvate vengano implementate in produzione.