{"id":1839,"date":"2020-10-16T12:00:00","date_gmt":"2020-10-16T10:00:00","guid":{"rendered":"https:\/\/blog.besharp.it\/?p=1839"},"modified":"2021-03-17T15:28:04","modified_gmt":"2021-03-17T14:28:04","slug":"strategie-di-rilascio-con-amazon-ecs-il-blue-green-deployment","status":"publish","type":"post","link":"https:\/\/blog.besharp.it\/it\/strategie-di-rilascio-con-amazon-ecs-il-blue-green-deployment\/","title":{"rendered":"Strategie di rilascio con Amazon ECS: il blue\/green deployment."},"content":{"rendered":"\n

L’architettura a microservizi<\/strong> \u00e8 diventata ormai predominante in molti progetti software. Grazie ai suoi enormi vantaggi in termini di velocit\u00e0 di sviluppo e di deploy, agevola i task quotidiani dei DevOps e non solo.<\/p>\n\n\n\n

Per sfruttare questo pattern architetturale su AWS possiamo utilizzare Amazon Elastic Container Service (Amazon ECS)<\/strong>, un servizio di orchestrazione dei container completamente gestito.<\/p>\n\n\n\n

ECS \u00e8 una grande scelta per l’esecuzione dei container per diverse ragioni. Per prima cosa, permette di scegliere di eseguire i cluster ECS utilizzando AWS Fargate, un\u2019infrastruttura serverless per container. Fargate rimuove la necessit\u00e0 di effettuare il provisioning e la gestione dei server, permettendoci di pagare solo per le risorse utilizzate per ciascuna applicazione.<\/p>\n\n\n\n

Inoltre, ECS pu\u00f2 essere integrato in modo nativo con altri servizi come Amazon Route 53, Secrets Manager, AWS Identity and Access Management (IAM) e Amazon CloudWatch.<\/p>\n\n\n\n

Gestire architetture a microservizi su ECS non \u00e8 sempre banale. Sul nostro blog abbiamo gi\u00e0 parlato di come creare e gestire cluster e implementare pipeline di CI\/CD per ECS.<\/p>\n\n\n\n

In questo articolo andremo invece a vedere un aspetto fondamentale per la continuous integration<\/strong> del software, ovvero le diverse modalit\u00e0 di rilascio dei nuovi pacchetti software. In particolare, ci focalizzeremo sulla metodologia blue\/green<\/strong>, una tecnica relativamente nuova che risolve molti dei problemi presenti con altre modalit\u00e0 di deployment pi\u00f9 semplici.<\/p>\n\n\n\n

Strategie di deployment<\/h2>\n\n\n\n

Ad oggi esistono numerose strategie di deployment. Vediamo insieme quelle pi\u00f9 diffuse e supportate da ECS:<\/p>\n\n\n\n