Déploiements bleu/vert d'Amazon ECS
Un déploiement bleu/vert est une méthodologie de publication qui réduit la durée d’indisponibilité et les risques en exécutant deux environnements de production identiques appelés bleu et vert. Avec les déploiements bleu/vert Amazon ECS, vous pouvez valider les nouvelles révisions de service avant de leur diriger le trafic de production. Cette approche fournit un moyen plus sûr de déployer les modifications avec la possibilité de revenir rapidement en arrière si nécessaire.
Avantages
Les déploiements bleu/vert offrent les avantages suivants :
-
Réduction des risques en testant le trafic de production avant de passer à la production. Vous pouvez valider le nouveau déploiement avec le trafic de test avant de diriger le trafic de production vers celui-ci.
-
Déploiements sans durée d’indisponibilité. L’environnement de production reste disponible tout au long du processus de déploiement, garantissant ainsi la disponibilité continue du service.
-
Restauration facile si des problèmes sont détectés. Si des problèmes surviennent avec le déploiement vert, vous pouvez rapidement revenir au déploiement bleu sans interruption de service prolongée.
-
Environnement de test contrôlé. L’environnement vert fournit un espace isolé pour tester les nouvelles fonctionnalités avec des modèles de trafic réels avant le déploiement complet.
-
Processus de déploiement prévisible. L’approche structurée avec des étapes du cycle de vie définies rend les déploiements plus cohérents et fiables.
-
Validation automatisée via des hooks de cycle de vie. Vous pouvez implémenter des tests automatisés à différentes étapes du déploiement afin de vérifier le fonctionnement.
Terminologie
Voici les conditions de déploiement bleu/vert Amazon ECS :
-
Durée de l’intégration : durée pendant laquelle les révisions de service bleues et vertes sont exécutées simultanément après le transfert du trafic de production.
-
Déploiement bleu : révision actuelle du service de production que vous souhaitez remplacer.
-
Déploiement vert : nouvelle version du service que vous souhaitez déployer.
-
Étapes du cycle de vie : une série d’événements au cours de l’opération de déploiement, tels que le « après transfert du trafic de production » :
-
Hook de cycle de vie : fonction Lambda qui vérifie le déploiement à une étape spécifique du cycle de vie.
-
Écouteur : une ressource Elastic Load Balancing qui vérifie les demandes de connexion à l’aide du protocole et du port que vous configurez. Les règles que vous définissez pour un écouteur déterminent la manière dont Amazon ECS achemine les requêtes vers ses cibles enregistrées.
-
Règle : ressource Elastic Load Balancing associée à un écouteur. Une règle définit la manière dont les requêtes sont acheminées et comprend une action, une condition et une priorité.
-
Groupe cible : ressource Elastic Load Balancing utilisée pour acheminer les requêtes vers une ou plusieurs cibles enregistrées (par exemple, des instances EC2). Lorsque vous créez un écouteur, vous spécifiez un groupe cible pour son action par défaut. Le trafic est transféré vers le groupe cible spécifié dans la règle de l'écouteur.
-
Transfert de trafic : processus utilisé par Amazon ECS pour transférer le trafic du déploiement bleu au déploiement vert. Pour les déploiements bleu/vert Amazon ECS, tout le trafic est transféré du service bleu au service vert en une seule fois.
Considérations
Tenez compte des éléments suivants lors du choix d’un type de déploiement :
-
Utilisation des ressources : les déploiements bleu/vert exécutent temporairement les révisions de service bleues et vertes simultanément, ce qui peut doubler votre utilisation des ressources pendant les déploiements.
-
Surveillance du déploiement : les déploiements bleu/vert fournissent des informations plus détaillées sur l’état du déploiement, ce qui vous permet de surveiller chaque étape du processus de déploiement.
-
Restauration : les déploiements bleu/vert facilitent le retour à la version précédente en cas de détection de problèmes, car la version bleue est maintenue en cours d’exécution jusqu’à l’expiration de la durée de l’intégration.