1- # flaggerreadme
1+ # Flagger
22
33[ ![ release] ( https://img.shields.io/github/release/fluxcd/flagger/all.svg )] ( https://github.com/fluxcd/flagger/releases )
44[ ![ CII Best Practices] ( https://bestpractices.coreinfrastructure.org/projects/4783/badge )] ( https://bestpractices.coreinfrastructure.org/projects/4783 )
@@ -16,39 +16,26 @@ by gradually shifting traffic to the new version while measuring metrics and run
1616Flagger implements several deployment strategies (Canary releases, A/B testing, Blue/Green mirroring)
1717and integrates with various Kubernetes ingress controllers, service mesh, and monitoring solutions.
1818
19- Flagger is a [ Cloud Native Computing Foundation] ( https://cncf.io/ ) project
19+ Flagger is a [ Cloud Native Computing Foundation] ( https://cncf.io/ ) graduated project
2020and part of the [ Flux] ( https://fluxcd.io ) family of GitOps tools.
2121
2222### Documentation
2323
24- Flagger documentation can be found at [ fluxcd.io/ flagger] ( https://fluxcd.io/ flagger/ ) .
24+ The Flagger documentation can be found at [ docs. flagger.app ] ( https://docs. flagger.app/main ) .
2525
2626* Install
27- * [ Flagger install on Kubernetes ] ( https://fluxcd.io/ flagger/ install/flagger-install-on-kubernetes )
27+ * [ Flagger Install with Flux ] ( https://docs. flagger.app/main/ install/flagger-install-with-flux )
2828* Usage
29- * [ How it works] ( https://fluxcd.io/flagger/usage/how-it-works )
30- * [ Deployment strategies] ( https://fluxcd.io/flagger/usage/deployment-strategies )
31- * [ Metrics analysis] ( https://fluxcd.io/flagger/usage/metrics )
32- * [ Webhooks] ( https://fluxcd.io/flagger/usage/webhooks )
33- * [ Alerting] ( https://fluxcd.io/flagger/usage/alerting )
34- * [ Monitoring] ( https://fluxcd.io/flagger/usage/monitoring )
35- * Tutorials
36- * [ App Mesh] ( https://fluxcd.io/flagger/tutorials/appmesh-progressive-delivery )
37- * [ Istio] ( https://fluxcd.io/flagger/tutorials/istio-progressive-delivery )
38- * [ Linkerd] ( https://fluxcd.io/flagger/tutorials/linkerd-progressive-delivery )
39- * [ Open Service Mesh (OSM)] ( https://dfluxcd.io/flagger/tutorials/osm-progressive-delivery )
40- * [ Kuma Service Mesh] ( https://fluxcd.io/flagger/tutorials/kuma-progressive-delivery )
41- * [ Contour] ( https://fluxcd.io/flagger/tutorials/contour-progressive-delivery )
42- * [ Gloo] ( https://fluxcd.io/flagger/tutorials/gloo-progressive-delivery )
43- * [ NGINX Ingress] ( https://fluxcd.io/flagger/tutorials/nginx-progressive-delivery )
44- * [ Skipper] ( https://fluxcd.io/flagger/tutorials/skipper-progressive-delivery )
45- * [ Traefik] ( https://fluxcd.io/flagger/tutorials/traefik-progressive-delivery )
46- * [ Gateway API] ( https://fluxcd.io/flagger/tutorials/gatewayapi-progressive-delivery/ )
47- * [ Kubernetes Blue/Green] ( https://fluxcd.io/flagger/tutorials/kubernetes-blue-green )
29+ * [ How it works] ( https://docs.flagger.app/main/usage/how-it-works )
30+ * [ Deployment strategies] ( https://docs.flagger.app/main/usage/deployment-strategies )
31+ * [ Metrics analysis] ( https://docs.flagger.app/main/usage/metrics )
32+ * [ Webhooks] ( https://docs.flagger.app/main/usage/webhooks )
33+ * [ Alerting] ( https://docs.flagger.app/main/usage/alerting )
34+ * [ Monitoring] ( https://docs.flagger.app/main/usage/monitoring )
4835
4936### Adopters
5037
51- ** Our list of production users has moved to < https://fluxcd.io/adopters/#flagger > ** .
38+ The list of production users can be found at [ fluxcd.io/adopters/#flagger ] ( https://fluxcd.io/adopters/#flagger ) .
5239
5340If you are using Flagger, please
5441[ submit a PR to add your organization] ( https://github.com/fluxcd/website/blob/main/data/adopters/2-flagger.yaml ) to the list!
@@ -72,8 +59,8 @@ metadata:
7259 namespace : test
7360spec :
7461 # service mesh provider (optional)
75- # can be: kubernetes, istio, linkerd, appmesh, nginx, skipper , contour, gloo, supergloo, traefik, osm
76- # for SMI TrafficSplit can be: smi:v1alpha1, smi:v1alpha2, smi:v1alpha3
62+ # can be: kubernetes, istio, linkerd, kuma, knative, nginx , contour, gloo, traefik, skipper
63+ # for Gateway API implementations: gatewayapi:v1 and gatewayapi:v1beta1
7764 provider : istio
7865 # deployment reference
7966 targetRef :
@@ -178,23 +165,23 @@ spec:
178165 name : on-call-msteams
179166` ` `
180167
181- For more details on how the canary analysis and promotion works please [read the docs](https://fluxcd.io/ flagger/usage/how-it-works).
168+ For more details on how the canary analysis and promotion works please [read the docs](https://docs. flagger.app /usage/how-it-works).
182169
183170### Features
184171
185172**Service Mesh**
186173
187- | Feature | App Mesh | Istio | Linkerd | Kuma | OSM | Knative | Kubernetes CNI |
188- |--------------------------------------------|--------------------|--------------------|--------------------|--------------------|--------------------|--------------------|--------------------|
189- | Canary deployments (weighted traffic) | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | : heavy_minus_sign: |
190- | A/B testing (headers and cookies routing) | :heavy_check_mark: | :heavy_check_mark: | :heavy_minus_sign: | : heavy_minus_sign: | :heavy_minus_sign: | :heavy_minus_sign: | :heavy_minus_sign: |
191- | Blue/Green deployments (traffic switch) | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | : heavy_minus_sign: | :heavy_check_mark: |
192- | Blue/Green deployments (traffic mirroring) | :heavy_minus_sign: | : heavy_check_mark: | :heavy_minus_sign : | :heavy_minus_sign: | :heavy_minus_sign: | :heavy_minus_sign: | :heavy_minus_sign: |
193- | Webhooks (acceptance/load testing) | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
194- | Manual gating (approve/pause/resume) | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
195- | Request success rate check (L7 metric) | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | : heavy_minus_sign: | :heavy_check_mark: |
196- | Request duration check (L7 metric) | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | : heavy_minus_sign: | :heavy_check_mark: |
197- | Custom metric checks | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
174+ | Feature | Istio | Linkerd | Kuma | Knative | Kubernetes CNI |
175+ |--------------------------------------------|--------------------|--------------------|--------------------|--------------------|--------------------|
176+ | Canary deployments (weighted traffic) | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_minus_sign: |
177+ | A/B testing (headers and cookies routing) | :heavy_check_mark: | :heavy_minus_sign: | :heavy_minus_sign: | :heavy_minus_sign: | :heavy_minus_sign: |
178+ | Blue/Green deployments (traffic switch) | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_minus_sign: | :heavy_check_mark: |
179+ | Blue/Green deployments (traffic mirroring) | :heavy_check_mark: | :heavy_minus_sign: | :heavy_minus_sign: | :heavy_minus_sign: | :heavy_minus_sign: |
180+ | Webhooks (acceptance/load testing) | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
181+ | Manual gating (approve/pause/resume) | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
182+ | Request success rate check (L7 metric) | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_minus_sign: | :heavy_check_mark: |
183+ | Request duration check (L7 metric) | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_minus_sign: | :heavy_check_mark: |
184+ | Custom metric checks | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
198185
199186**Ingress**
200187
@@ -211,29 +198,26 @@ For more details on how the canary analysis and promotion works please [read the
211198
212199**Networking Interface**
213200
214- | Feature | Gateway API | SMI |
215- |-----------------------------------------------|--------------------|--------------------|
216- | Canary deployments (weighted traffic) | :heavy_check_mark: | :heavy_check_mark: |
217- | A/B testing (headers and cookies routing) | :heavy_check_mark: | :heavy_minus_sign: |
218- | Blue/Green deployments (traffic switch) | :heavy_check_mark: | :heavy_check_mark: |
219- | Blue/Green deployments (traffic mirrroring) | :heavy_minus_sign: | :heavy_minus_sign: |
220- | Webhooks (acceptance/load testing) | :heavy_check_mark: | :heavy_check_mark: |
221- | Manual gating (approve/pause/resume) | :heavy_check_mark: | :heavy_check_mark: |
222- | Request success rate check (L7 metric) | :heavy_minus_sign: | :heavy_minus_sign: |
223- | Request duration check (L7 metric) | :heavy_minus_sign: | :heavy_minus_sign: |
224- | Custom metric checks | :heavy_check_mark: | :heavy_check_mark: |
225-
226- For all [Gateway API](https://gateway-api.sigs.k8s.io/) implementations like
227- [Contour](https://projectcontour.io/guides/gateway-api/) or
228- [Istio](https://istio.io/latest/docs/tasks/traffic-management/ingress/gateway-api/)
229- and [SMI](https://smi-spec.io) compatible service mesh solutions like
230- [Nginx Service Mesh](https://docs.nginx.com/nginx-service-mesh/),
231- [Prometheus MetricTemplates](https://docs.flagger.app/usage/metrics#prometheus)
201+ | Feature | Gateway API | SMI |
202+ |--------------------------------------------|--------------------|--------------------|
203+ | Canary deployments (weighted traffic) | :heavy_check_mark: | :heavy_check_mark: |
204+ | Canary deployments with session affinity | :heavy_check_mark: | :heavy_minus_sign: |
205+ | A/B testing (headers and cookies routing) | :heavy_check_mark: | :heavy_minus_sign: |
206+ | Blue/Green deployments (traffic switch) | :heavy_check_mark: | :heavy_check_mark: |
207+ | Blue/Green deployments (traffic mirroring) | :heavy_minus_sign: | :heavy_minus_sign: |
208+ | Webhooks (acceptance/load testing) | :heavy_check_mark: | :heavy_check_mark: |
209+ | Manual gating (approve/pause/resume) | :heavy_check_mark: | :heavy_check_mark: |
210+ | Request success rate check (L7 metric) | :heavy_minus_sign: | :heavy_minus_sign: |
211+ | Request duration check (L7 metric) | :heavy_minus_sign: | :heavy_minus_sign: |
212+ | Custom metric checks | :heavy_check_mark: | :heavy_check_mark: |
213+
214+ For all the [Gateway API](https://gateway-api.sigs.k8s.io/) compatible ingress controllers and service meshes,
215+ the [Prometheus MetricTemplates](https://docs.flagger.app/usage/metrics#prometheus)
232216can be used to implement the request success rate and request duration checks.
233217
234218### Roadmap
235219
236- #### [GitOps Toolkit](https://github.com/fluxcd/flux2 ) compatibility
220+ #### [GitOps Toolkit](https://fluxcd.io/flux/components/ ) compatibility
237221
238222- Migrate Flagger to Kubernetes controller-runtime and [kubebuilder](https://github.com/kubernetes-sigs/kubebuilder)
239223- Make the Canary status compatible with [kstatus](https://github.com/kubernetes-sigs/cli-utils)
@@ -242,7 +226,7 @@ can be used to implement the request success rate and request duration checks.
242226
243227#### Integrations
244228
245- - Add support for ingress controllers like HAProxy, ALB, and Apache APISIX
229+ - Migrate Linkerd, Kuma and other service mesh integrations to Gateway API
246230
247231### Contributing
248232
0 commit comments