View a markdown version of this page

Containerizzazione del codice sorgente - AWS Trasformazione

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à.

Containerizzazione del codice sorgente

AWS Transform supporta la ripiattaforma delle applicazioni in contenitori durante la migrazione verso. AWS Questo capitolo descrive le funzionalità di intelligenza artificiale agentica di AWS Transform per automatizzare la containerizzazione del codice sorgente. Puoi migrare e modernizzare in parallelo, riducendo i tempi e la complessità del passaggio da architetture locali a architetture native per il cloud. Puoi containerizzare il codice sorgente da file Bitbucket o .zip GitHub, generare immagini Docker GitLab, pubblicare su Amazon Elastic Container Registry (Amazon ECR) e distribuirlo su Amazon Elastic Container Service (Amazon ECS) o Amazon Elastic Kubernetes Service (Amazon EKS). In questo modo la containerizzazione viene inserita nello stesso flusso di lavoro utilizzato per pianificare ed eseguire le migrazioni di rehosting.

Funzionalità e caratteristiche principali

AWS Transform offre le seguenti funzionalità per la containerizzazione delle applicazioni.

  • AI-driven analisi del codice sorgente. Analizza il codice sorgente dell'applicazione e genera automaticamente gli artefatti Docker, inclusi i Dockerfile e i relativi file di configurazione. Non è richiesta alcuna competenza in Docker.

  • Creazione e pubblicazione di immagini per container. Crea e testa automaticamente le immagini dei contenitori e le pubblica su Amazon Elastic Container Registry con scansione automatica delle vulnerabilità.

  • Infrastruttura come generazione di codice. Genera un'infrastruttura di distribuzione pronta per la produzione per Amazon Elastic Kubernetes Service (Helm charts) o Amazon Elastic Container Service (moduli Terraform), con validazione automatica e scansione di sicurezza. Non è necessario scrivere IaC da zero.

  • Supporto privato per le dipendenze. Facoltativamente, puoi configurare i AWS CodeArtifact repository (Maven, PyPI, npm) e le immagini di base private di Amazon ECR come fonti di dipendenza per le tue build.

  • Test iterativi e distribuzione definitiva. Implementa un'infrastruttura di test per la convalida, quindi implementa un'infrastruttura finalizzata per il completamento della produzione.

Nota

La containerizzazione del codice sorgente è progettata per applicazioni che non sono ancora containerizzate. Richiede l'accesso al codice sorgente dell'applicazione e non supporta la migrazione dei carichi di lavoro containerizzati esistenti. Per migrare i contenitori esistenti verso AWS, utilizza i metodi di distribuzione standard per Amazon Elastic Container Service o Amazon Elastic Kubernetes Service.

Come funziona la containerizzazione

AWS Transform utilizza un AI-powered agente per guidarti nel processo di containerizzazione in un flusso di lavoro basato su chat. L'agente gestisce l'intero processo, dall'analisi del codice al container distribuito, riducendo i giorni di creazione manuale di Dockerfile e configurazione dell'infrastruttura a ore. AWS Transform coordina attività specializzate come l'analisi del codice sorgente, la generazione di immagini Docker e la creazione dell'infrastruttura. Nei punti chiave del flusso di lavoro, si esamina e si approva l'output prima di procedere.

È possibile accedere alla containerizzazione del codice sorgente creando un processo di migrazione. All'interno del job, è possibile eseguire la containerizzazione come flusso di lavoro autonomo o come parte di una migrazione end-to-end quando la strategia di migrazione di un'ondata è impostata per la containerizzazione. Per ulteriori informazioni, consulta Migrazioni (incluso VMware).

Prerequisiti

Prima di iniziare, assicurati di disporre di quanto riportato di seguito:

  • Un'area di lavoro Transform. AWS Per informazioni su come ottenere uno spazio di lavoro, consulta Guida introduttiva.

  • Il codice sorgente dell'applicazione in un repository Git accessibile tramite AWS CodeConnections o impacchettato come file zip per il caricamento. I singoli file non devono superare 1 GB e la dimensione totale di tutto il codice sorgente non deve superare gli 8 GB.

  • (Facoltativo) Un repository Amazon ECR per la pubblicazione di immagini di contenitori. Puoi configurare l'accesso ad Amazon ECR più avanti nel flusso di lavoro quando sei pronto per la pubblicazione.

  • Per le distribuzioni di Amazon EKS: un cluster Amazon EKS esistente o autorizzazioni per creare l'infrastruttura richiesta.

  • Per le distribuzioni Amazon ECS: autorizzazioni per creare cluster, servizi e risorse correlate Amazon ECS utilizzando Terraform,, o. AWS CloudFormation AWS Cloud Development Kit (AWS CDK)

Flusso di lavoro di containerizzazione

Il flusso di lavoro di containerizzazione è costituito dai seguenti passaggi. L'agente AWS Transform ti guida in ogni passaggio dell'interfaccia di chat.

  1. Fase 1: Rivedi la dichiarazione di non responsabilità sulla sicurezza. Rivedi e accetta la dichiarazione di non responsabilità sulla sicurezza.

  2. Fase 2: clonare il codice sorgente. Fornisci il codice sorgente dell'applicazione.

  3. Fase 3: Containerizzazione. L'agente AI analizza il codice e genera artefatti Docker.

  4. Passaggio 4: rivedi gli artefatti e le modifiche al codice di Docker. Esamina gli artefatti generati e approva le modifiche al codice.

  5. Fase 5: Pubblicare immagini. Pubblica immagini dei contenitori su Amazon ECR.

  6. Fase 6: Generazione dell'infrastruttura come codice. Genera modelli di distribuzione Amazon EKS o Amazon ECS.

  7. Fase 7: Implementazione dell'infrastruttura di test. Implementa e convalida l'infrastruttura di test.

  8. Fase 8: Pulizia dell'infrastruttura di test. Elimina le risorse per i test.

  9. Fase 9: Implementazione dell'infrastruttura Cutover. Implementa l'infrastruttura di produzione.

Avvio di un processo di containerizzazione

Per containerizzare le tue applicazioni, devi prima creare un processo di migrazione VMware nel tuo spazio di lavoro Transform. AWS All'interno del processo, puoi scegliere di eseguire un flusso di lavoro di containerizzazione autonomo o un flusso di migrazione end-to-end che includa la containerizzazione.

  • Containerizzazione autonoma: containerizza il codice sorgente senza eseguire una migrazione completa a VMware. Scegli questa opzione quando desideri containerizzare le applicazioni indipendentemente da qualsiasi migrazione dell'infrastruttura.

  • End-to-end migrazione con containerizzazione: esegui l'intero flusso di lavoro di migrazione VMware con una strategia di migrazione containerizzata assegnata a una o più ondate. Il flusso di lavoro di containerizzazione viene eseguito come parte della migrazione per tali ondate. Per ulteriori informazioni sulla migrazione di VMware, vedere. Migrazioni (incluso VMware)

Per avviare un processo di containerizzazione
  1. Nella pagina di destinazione del tuo spazio di lavoro, scegli Crea un lavoro.

  2. Scegli la migrazione VMware.

  3. Scegli se eseguire un flusso di lavoro di containerizzazione autonomo o un flusso di migrazione end-to-end che includa la containerizzazione.

  4. AWS Transform ti guida attraverso le fasi del flusso di lavoro, a partire da. Fase 1: Rivedi la dichiarazione di non responsabilità sulla sicurezza