Middle
Qu'est-ce que le déploiement Blue-Green?
sobes.tech IA
Réponse de l'IA
Le déploiement bleu-vert est une stratégie de lancement de nouvelles fonctionnalités avec un temps d'arrêt minimal, basée sur le maintien de deux environnements identiques : "bleu" (version actuelle en fonctionnement) et "vert" (nouvelle version).
Algorithme :
- Un environnement "bleu" actif gère tout le trafic.
- La nouvelle version de l'application est déployée dans un environnement "vert" entièrement identique mais inactif.
- Après des tests réussis dans l'environnement "vert", le trafic est redirigé vers celui-ci.
- L'environnement "bleu" est conservé pour un rollback rapide ou peut être utilisé pour de futurs déploiements.
Avantages clés :
- Temps d'arrêt minimal : La commutation du trafic est presque instantanée.
- Rollback simple : En cas de problème avec la nouvelle version, le trafic est facilement redirigé vers l'environnement "bleu".
- Moindre risque : La nouvelle version est testée dans un environnement isolé avant de changer le trafic.
Inconvénients :
- Ressources doubles : Nécessite des ressources pour maintenir deux environnements complets.
- Gestion de l'état : Peut être difficile de gérer l'état de l'application si elle utilise une base de données avec des changements constants.
Exemple de changement de trafic avec un répartiteur de charge :
// Configuration du répartiteur (simplifiée)
{
"listeners": [
{
"port": 80,
"protocol": "HTTP",
"default_actions": [
{
"type": "forward",
"target_group_arn": "arn:aws:elasticloadbalancing:..." // ARN du groupe d'instances de l'environnement "bleu"
}
]
}
]
}
# Commande pour changer le trafic vers l'environnement "vert"
# (exemple pour AWS CLI, en supposant que l'ARN du nouveau groupe cible est disponible)
aws elbv2 modify-listener --listener-arn "arn:aws:elasticloadbalancing:..." --default-actions Type=forward,TargetGroupArn="arn:aws:elasticloadbalancing:..." // ARN du groupe d'instances de l'environnement "vert"