Flagger est un outil de livraison progressive qui automatise le processus de mise en production des applications exécutées sur Kubernetes. Il réduit le risque d’introduction d’une nouvelle version logicielle en production en basculant progressivement le trafic vers la nouvelle version tout en mesurant les métriques et en exécutant des tests de conformité.
Flagger met en œuvre plusieurs stratégies de déploiement (versions Canary, tests A/B, miroir bleu/vert) en utilisant un maillage de services (App Mesh, Istio, Linkerd) ou un contrôleur d’entrée (Contour, Gloo, NGINX, Skipper, Traefik) pour le routage du trafic. Pour l’analyse des versions, Flagger peut interroger Prometheus, Datadog, New Relic ou CloudWatch et, pour les alertes, il utilise Slack, MS Teams, Discord et Rocket.
Flagger peut être configuré avec des ressources personnalisées Kubernetes et est compatible avec toutes les solutions CI/CD faites pour Kubernetes. Puisque Flagger est déclaratif et réagit aux événements Kubernetes, il peut être utilisé dans les pipelines GitOps avec des outils comme Flux, JenkinsX, Carvel, Argo, etc.
Flagger est un projet de la Cloud Native Computing Foundation et fait partie de la famille d’outils GitOps Flux.
Pour commencer avec Flagger, choisissez l’un des fournisseurs de routage pris en charge et installez Flagger avec Helm ou Kustomize.
Après avoir installé Flagger, vous pouvez suivre l’un de ces tutoriels pour commencer :
Tutoriels de maillage de services
-
Istio
-
Linkerd
Contrôleur d’adresse. tutoriels
-
Contour
-
Gloo
-
Traefik
Mains-on GitOps
-
Istio
-
Linkerd