AWS CodeDeploy è un servizio che automatizza la distribuzione di applicazioni a qualunque istanza, incluse le istanze di Amazon EC2 e le istanze eseguite localmente. CodeDeploy automatizza completamente la distribuzione di applicazioni eliminando le operazioni manuali. CodeDeploy protegge l’applicazione dai tempi di inattività durante la distribuzione tramite aggiornamenti in sequenza e rilevamenti dell’integrità dell’implementazione. CodeDeploy fornisce un controllo centralizzato delle distribuzioni tramite la Console di gestione AWS, la CLI, gli SDK o le API permettendo di avviare, controllare e monitorare le distribuzioni. Il progresso della distribuzione può essere visualizzato fino agli eventi di configurazione individuali su ogni istanza. CodeDeploy tiene traccia e conserva lo storico recente delle distribuzioni, per permettere indagini sulla timeline e lo storico delle modifiche delle distribuzioni passate.
Inizia a usare AWS gratis
Crea un account gratuitoRicevi dodici mesi di accesso al piano gratuito di AWS e sfrutta le funzionalità di supporto di base di AWS, inclusi l'assistenza clienti 24x7x365, i forum di supporto e molto altro.
Visualizza i dettagli del piano gratuito di AWS »
AWS CodeDeploy non si basa su una piattaforma o un linguaggio specifici e funziona con qualsiasi applicazione, consentendo di riutilizzare il proprio codice di configurazione esistente. Inoltre le distribuzioni di applicazione possono essere facilmente integrate con il processo di distribuzione di software o la toolchain di distribuzione continua esistenti utilizzando le API AWS CodeDeploy.
Una distribuzione di applicazione può essere facilmente ripetuta su diversi gruppi di istanze con AWS CodeDeploy. CodeDeploy utilizza un file e un modello di installazione basato su comandi che consente di distribuire qualunque applicazione e riutilizzare il codice di configurazione esistente. Lo stesso codice di configurazione utilizzato per distribuire la revisione a un’istanza di sviluppo per debug viene utilizzato per distribuire alle istanze di gestione temporanea per test e poi alla produzione per il rilascio ai clienti. L’eliminazione di fasi manuali dalle distribuzioni aumenta la rapidità e l’affidabilità del tuo processo di distribuzione di software.
AWS CodeDeploy si integra con Auto Scaling per mantenere il tuo software di applicazione aggiornato in un’infrastruttura che cambia dinamicamente. Auto Scaling ti permette di aumentare o diminuire automaticamente la capacità di Amazon EC2 secondo le condizioni da te definite, come ad esempio i picchi di traffico. CodeDeploy riceve notifiche ogni volta che viene avviata una nuova istanza in un gruppo Auto Scaling ed esegue automaticamente una distribuzione di applicazione sulla nuova istanza prima che venga aggiunta a un Elastic Load Balancer.
Puoi utilizzare AWS CodeDeploy per automatizzare le distribuzioni di codice sui tuoi ambienti di sviluppo, test e produzione in esecuzione su qualunque istanza, incluse le istanze nei tuoi data center (le tue istanze dovranno potersi connettere agli endpoint pubblici di AWS. Questo ti consente di utilizzare un solo servizio per distribuire applicazioni in modo uniforme su architetture ibride.
Con AWS CodeDeploy, le applicazioni non necessitano tempi di inattività durante gli aggiornamenti a una nuova revisione. CodeDeploy può effettuare un aggiornamento in sequenza su un gruppo di istanze dove solo una piccola parte delle istanze si trova offline in qualunque momento. CodeDeploy avanza progressivamente nelle istanze permettendo alle applicazioni di rimanere disponibili e continuare a essere utilizzate per il traffico. CodeDeploy può anche eseguire distribuzioni blue/green, nelle quali viene effettuato il provisioning e viene installato un nuovo gruppo di istanze con l'ultima revisione. Quando la nuova revisione è stata installata sulle nuove istanze, CodeDeploy reindirizza il traffico dalle istanze di produzione alle nuove istanze.
Il rilevamento dell’integrità dell’implementazione funziona insieme agli aggiornamenti in sequenza per mantenere una disponibilità elevata delle applicazioni durante le distribuzioni. Se vengono distribuiti aggiornamenti errati, può verificarsi un tempo di inattività. AWS CodeDeploy monitora il successo dell’aggiornamento di ogni istanza in una distribuzione a più istanze. Si può specificare il numero minimo delle istanze che devono restare integre, in modo che CodeDeploy interrompa una distribuzione nel caso di un numero troppo elevato di istanze non funzionanti.
La distribuzione di un’applicazione in corso può essere interrotta in qualunque momento utilizzando la Console di gestione AWS, la CLI di AWS o qualunque SDK di AWS. La revisione può essere semplicemente distribuita nuovamente se si vuole continuare la distribuzione interrotta più tardi. Si può anche effettuare un rollback immediato ridistribuendo la revisione precedente.
Puoi avviare, controllare e monitorare le distribuzioni di tutte le tue applicazioni a istanze di destinazione direttamente dalla Console di gestione AWS o utilizzando la CLI di AWS, gli SDK o le API. Il progresso della distribuzione può essere visualizzato fino agli eventi di configurazione individuali su ogni istanza. In caso di errore, puoi individuare esattamente l’istanza e lo script non funzionanti senza dover accedere a un’istanza individuale. Inoltre puoi impostare notifiche push che ti permettono di osservare lo stato delle tue distribuzioni tramite SMS o messaggi email con Amazon Simple Notification Service.
Le applicazioni possono essere distribuite a più gruppi di distribuzione. Un gruppo di distribuzione è un gruppo di istanze, come per esempio ambienti di gestione temporanea o di produzione. Puoi testare una revisione in gestione temporanea e poi distribuirla alla produzione quando ne hai verificato il funzionamento corretto. AWS CodeDeploy utilizza tag o nomi di gruppo Auto Scaling per definire i gruppi di distribuzione. Basta applicare un tag a un’istanza per aggiungerla a un gruppo di distribuzione e AWS CodeDeploy distribuirà automaticamente la revisione più recente della tua applicazione a questa istanza con la distribuzione successiva.
AWS CodeDeploy tiene traccia e conserva lo storico recente delle distribuzioni. Puoi visualizzare quali versioni dell’applicazione sono attualmente distribuite a ciascuno dei tuoi gruppi di distribuzione di destinazione. Puoi esaminare lo storico delle modifiche e i tassi di successo delle distribuzioni precedenti a gruppi di distribuzione specifici. Puoi anche investigare sugli eventi e timeline a livello di istanza delle distribuzioni precedenti per ottenere una visualizzazione dettagliata dei successi e degli errori delle tue distribuzioni.
AWS CodeDeploy utilizza un file e un modello di installazione basato su comandi che consente di distribuire qualunque applicazione e riutilizzare il codice di configurazione esistente. CodeDeploy utilizza un singolo file di configurazione AppSpec per mappare i file nella tua applicazione con la loro destinazione di hosting e specificare i comandi da eseguire a ogni evento di ciclo di vita (fase di distribuzione) quali "dipendenze di installazione" o "arresto di server". I comandi possono essere in qualunque codice, come uno script della shell, un programma personalizzato o anche uno strumento di gestione di configurazione.
Con le API AWS CodeDeploy, è facile integrare la distribuzione di applicazioni con la tua toolchain di distribuzione di software. Alcuni partner AWS forniscono integrazioni CodeDeploy predefinite insieme ai loro servizi di integrazione continua e distribuzione continua, semplificando la distribuzione automatica alle tue istanze delle build più recenti della tua applicazione.