Distribuzioni automatizzate

Distribuzioni ripetibili

Con AWS CodeDeploy, è possibile ripetere con la massima semplicità la distribuzione di applicazioni su diversi gruppi di istanze o funzioni AWS Lambda. CodeDeploy utilizza un modello di installazione basato su file e comandi che consente di distribuire qualunque applicazione e riutilizzare il codice di configurazione esistente. Lo stesso codice utilizzato per la configurazione può essere impiegato per ottenere distribuzioni e testare aggiornamenti in modo coerente in tutte le diverse fasi di distribuzione, testing e produzione per istanze Amazon EC2 o funzioni Lambda. L'eliminazione delle fasi che richiedono un intervento manuale dalle distribuzioni ne aumenta la rapidità e l'affidabilità.

Scalabilità automatica

AWS CodeDeploy permette di integrare distribuzione software e attività di dimensionamento per mantenere l'applicazione sempre aggiornata in ambienti di produzione dinamici. Per le istanze Amazon EC2, CodeDeploy si integra con Auto Scaling. Auto Scaling permette di ricalibrare automaticamente la capacità di EC2 secondo condizioni personalizzate, ad esempio i picchi di traffico. CodeDeploy riceve una notifica ogni volta che viene avviata una nuova istanza in un gruppo Auto Scaling ed esegue automaticamente la distribuzione dell'applicazione sulla nuova istanza prima che venga aggiunta a un sistema di bilanciamento del carico Elastic Load Balancing. Per AWS Lambda, le risorse delle funzioni vengono ricalibrate automaticamente in risposta alle variazioni del traffico, integrando CodeDeploy per garantire la distribuzione del codice più recente.

Distribuzioni locali

AWS CodeDeploy può essere utilizzato per automatizzare le distribuzioni di software su diversi ambienti di sviluppo, test e produzione in esecuzione su qualunque istanza, incluse le istanze nei data center (che dovranno potersi connettere agli endpoint pubblici di AWS). In questo modo, è possibile utilizzare un solo servizio per distribuire applicazioni in modo uniforme su architetture ibride.

Tempi di inattività ridotti al minimo

Aggiornamenti in sequenza e blue/green

Con AWS CodeDeploy, non è necessario interrompere l'attività di un'applicazione durante l'aggiornamento a una nuova revisione. Il servizio è in grado di applicare un aggiornamento su un gruppo di istanze Amazon EC2 interrompendone solo una piccola parte alla volta. CodeDeploy avanza progressivamente nelle istanze permettendo alle applicazioni di rimanere disponibili e continuare a essere utilizzate per ricevere traffico. Per quanto riguarda le funzioni AWS Lambda, il traffico in entrata sarà gradualmente instradato dalla versione precedente a quella nuova.

AWS CodeDeploy può anche eseguire distribuzioni blue/green, nelle quali viene effettuato il provisioning e viene installato un nuovo gruppo di istanze Amazon EC2 dotate della revisione più recente. Quando la nuova revisione è stata installata sulle nuove istanze, CodeDeploy reindirizza il traffico dalle istanze di produzione alle nuove istanze. Tutti gli aggiornamenti relativi ad AWS Lambda sono blue/green, perché non sono presenti istanze da allocare.

Rilevamento dell'integrità dell'implementazione

Il rilevamento dell'integrità dell'implementazione opera in sinergia con gli aggiornamenti continui e consente di mantenere elevata la disponibilità delle applicazioni durante le attività di distribuzione. Possono verificarsi tempi di inattività nel caso in cui vengano distribuiti aggiornamenti con errori. AWS CodeDeploy monitora la distribuzione e la interromperà se si verifica un numero eccessivo di errori.

Arresto e rollback

Una distribuzione in corso può essere interrotta in qualunque momento tramite Console di gestione AWS, interfaccia a riga di comando o uno dei kit SDK AWS. La revisione potrà essere distribuita nuovamente se si desidera proseguire in un secondo momento la distribuzione interrotta. Inoltre, è possibile eseguire un rollback immediato ridistribuendo la revisione precedente.

Controllo centralizzato

Monitoraggio e controllo

È possibile avviare, controllare e monitorare le distribuzioni di software direttamente dalla Console di gestione AWS o utilizzando l'interfaccia a riga di comando, i kit SDK o le API di AWS. In caso di errori, è possibile contrassegnare lo script che li provoca. È anche possibile impostare notifiche push che permettono di monitorare lo stato delle distribuzioni tramite SMS o e-mail utilizzando Amazon Simple Notification Service.

Gruppi di distribuzione

Un'applicazione può essere distribuita su più gruppi di distribuzione. I gruppi di distribuzione sono utilizzati per far corrispondere una determinata configurazione a un ambiente preciso, ad esempio ambienti temporanei o di produzione. Una revisione può essere testata in un ambiente temporaneo e poi distribuita in produzione quando è ritenuta sicura e adatta.

Storico delle distribuzioni

AWS CodeDeploy tiene traccia e conserva lo storico recente delle distribuzioni. Permette di visualizzare quali versioni dell'applicazione sono attualmente distribuite in ciascuno dei gruppi di distribuzione di destinazione. È possibile esaminare lo storico delle modifiche e i tassi di successo delle distribuzioni precedenti in gruppi di distribuzione specifici. È anche possibile consultare una cronologia delle ultime distribuzioni per individuare quelle andate a buon fine e gli eventuali errori.

Adozione semplificata

Non basato su sintassi o architetture specifiche

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 usa un file di configurazione AppSpec per mappare i file di applicazione o specificare le funzioni AWS Lambda da sostituire. È possibile utilizzare il file AppSpec per eseguire azioni, test o verifiche di ciascun evento del ciclo di vita o fase della distribuzione. I comandi possono composti da codice, ad esempio uno script della shell, da un programma personalizzato o anche da uno strumento di gestione della configurazione.

Integrazione di toolchain

Grazie alle API AWS CodeDeploy, integrare la distribuzione di applicazioni con una toolchain di distribuzione software esistente è semplice. È possibile ottenere integrazioni preconfigurate di CodeDeploy da AWS CodePipeline, AWS CodeStar e da alcuni partner AWS per servizi di integrazione e distribuzione continue, che semplificheranno la distribuzione e l'aggiornamento di applicazioni.

Ulteriori informazioni sui prezzi di AWS CodeDeploy

Visita la pagina dei prezzi
Ti senti pronto?
Inizia a usare AWS CodeDeploy
Hai altre domande?
Contattaci