From 06dab2e13772a760595a87ebddf89509dcca3d7f Mon Sep 17 00:00:00 2001 From: stefanprodan Date: Wed, 19 Aug 2020 11:29:08 +0300 Subject: [PATCH 1/2] Docs tidy up Split feature comparison into two tables: service mesh and ingress. --- README.md | 37 +++++++++++++------ docs/gitbook/SUMMARY.md | 6 +-- .../tutorials/skipper-progressive-delivery.md | 34 +++++++---------- 3 files changed, 42 insertions(+), 35 deletions(-) diff --git a/README.md b/README.md index 3c4801ed..8a931f81 100644 --- a/README.md +++ b/README.md @@ -181,17 +181,32 @@ For more details on how the canary analysis and promotion works please [read the ### Features -| Feature | Istio | Linkerd | App Mesh | NGINX | Skipper | Gloo | Contour | CNI | -| ------------------------------------------ | ------------------ | ------------------ | ------------------ | ------------------ | ------------------ | ------------------ | ------------------ | ------------------ | -| Canary deployments (weighted traffic) | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_minus_sign: | -| A/B testing (headers and cookies routing) | :heavy_check_mark: | :heavy_minus_sign: | :heavy_check_mark: | :heavy_check_mark: | :heavy_minus_sign: | :heavy_minus_sign: | :heavy_check_mark: | :heavy_minus_sign: | -| 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: | :heavy_check_mark: | -| 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: | :heavy_check_mark: | -| 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: | :heavy_check_mark: | -| Request success rate check (L7 metric) | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_minus_sign: | -| Request duration check (L7 metric) | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_minus_sign: | -| Custom metric checks | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | -| Traffic policy, CORS, retries and timeouts | :heavy_check_mark: | :heavy_minus_sign: | :heavy_minus_sign: | :heavy_minus_sign: | :heavy_check_mark: | :heavy_minus_sign: | :heavy_check_mark: | :heavy_minus_sign: | +**Service Mesh** + +| Feature | App Mesh | Istio | Linkerd | Kubernetes CNI | +| ------------------------------------------ | ------------------ | ------------------ | ------------------ | ----------------- | +| Canary deployments (weighted traffic) | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_minus_sign: | +| A/B testing (headers and cookies routing) | :heavy_check_mark: | :heavy_check_mark: | :heavy_minus_sign: | :heavy_minus_sign: | +| Blue/Green deployments (traffic switch) | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | +| Blue/Green deployments (traffic mirroring) | :heavy_minus_sign: | :heavy_check_mark: | :heavy_minus_sign: | :heavy_minus_sign: | +| Webhooks (acceptance/load testing) | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | +| Manual gating (approve/pause/resume) | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | +| Request success rate check (L7 metric) | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_minus_sign: | +| Request duration check (L7 metric) | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_minus_sign: | +| Custom metric checks | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | + +**Ingress** + +| Feature | Contour | Gloo | NGINX | Skipper | +| ------------------------------------------ | ------------------ | ------------------ | ------------------ | ------------------ | +| Canary deployments (weighted traffic) | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | +| A/B testing (headers and cookies routing) | :heavy_check_mark: | :heavy_minus_sign: | :heavy_check_mark: | :heavy_minus_sign: | +| Blue/Green deployments (traffic switch) | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | +| Webhooks (acceptance/load testing) | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | +| Manual gating (approve/pause/resume) | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | +| Request success rate check (L7 metric) | :heavy_check_mark: | :heavy_check_mark: | :heavy_minus_sign: | :heavy_check_mark: | +| Request duration check (L7 metric) | :heavy_check_mark: | :heavy_check_mark: | :heavy_minus_sign: | :heavy_check_mark: | +| Custom metric checks | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | ### Roadmap diff --git a/docs/gitbook/SUMMARY.md b/docs/gitbook/SUMMARY.md index d39be4b2..240d1801 100644 --- a/docs/gitbook/SUMMARY.md +++ b/docs/gitbook/SUMMARY.md @@ -24,10 +24,10 @@ * [Istio A/B Testing](tutorials/istio-ab-testing.md) * [Linkerd Canary Deployments](tutorials/linkerd-progressive-delivery.md) * [App Mesh Canary Deployments](tutorials/appmesh-progressive-delivery.md) +* [Contour Canary Deployments](tutorials/contour-progressive-delivery.md) +* [Gloo Canary Deployments](tutorials/gloo-progressive-delivery.md) * [NGINX Canary Deployments](tutorials/nginx-progressive-delivery.md) * [Skipper Canary Deployments](tutorials/skipper-progressive-delivery.md) -* [Gloo Canary Deployments](tutorials/gloo-progressive-delivery.md) -* [Contour Canary Deployments](tutorials/contour-progressive-delivery.md) * [Blue/Green Deployments](tutorials/kubernetes-blue-green.md) * [Crossover Canary Deployments](tutorials/crossover-progressive-delivery.md) * [Canary analysis with Prometheus Operator](tutorials/prometheus-operator.md) @@ -38,4 +38,4 @@ * [Development Guide](dev/dev-guide.md) * [Release Guide](dev/release-guide.md) -* [Upgrade Guide](dev/upgrade-guide.md) \ No newline at end of file +* [Upgrade Guide](dev/upgrade-guide.md) diff --git a/docs/gitbook/tutorials/skipper-progressive-delivery.md b/docs/gitbook/tutorials/skipper-progressive-delivery.md index c7868668..3cc3d17f 100644 --- a/docs/gitbook/tutorials/skipper-progressive-delivery.md +++ b/docs/gitbook/tutorials/skipper-progressive-delivery.md @@ -281,33 +281,25 @@ the canary is scaled to zero and the rollout is marked as failed. ```text kubectl -n flagger-system logs deploy/flagger -f | jq .msg -"New revision detected! Scaling up podinfo.test" -"canary deployment podinfo.test not ready: waiting for rollout to finish: 0 of 1 updated replicas are available" -"Starting canary analysis for podinfo.test" -"Pre-rollout check acceptance-test passed" -"primaryWeight: 95, canaryWeight: 5" -"Advance podinfo.test canary weight 5" -"primaryWeight: 90, canaryWeight: 10" -"Advance podinfo.test canary weight 10" -"primaryWeight: 85, canaryWeight: 15" -"Advance podinfo.test canary weight 15" -"primaryWeight: 80, canaryWeight: 20" -"Advance podinfo.test canary weight 20" -"Halt podinfo.test advancement success rate 53.42% < 99%" -"Halt podinfo.test advancement success rate 53.19% < 99%" -"Halt podinfo.test advancement success rate 48.05% < 99%" -"Rolling back podinfo.test failed checks threshold reached 3" -"primaryWeight: 100, canaryWeight: 0" -"Canary failed! Scaling down podinfo.test" +New revision detected! Scaling up podinfo.test +Canary deployment podinfo.test not ready: waiting for rollout to finish: 0 of 1 updated replicas are available +Starting canary analysis for podinfo.test +Pre-rollout check acceptance-test passed +Advance podinfo.test canary weight 5 +Advance podinfo.test canary weight 10 +Advance podinfo.test canary weight 15 +Advance podinfo.test canary weight 20 +Halt podinfo.test advancement success rate 53.42% < 99% +Halt podinfo.test advancement success rate 53.19% < 99% +Halt podinfo.test advancement success rate 48.05% < 99% +Rolling back podinfo.test failed checks threshold reached 3 +Canary failed! Scaling down podinfo.test ``` ## Custom metrics The canary analysis can be extended with Prometheus queries. -The demo app is instrumented with Prometheus so you can create a custom check that will use the -HTTP request duration histogram to validate the canary. - Create a metric template and apply it on the cluster: ```yaml From b6c98799d1dcfeab32dcf46b95b09534c9494998 Mon Sep 17 00:00:00 2001 From: stefanprodan Date: Wed, 19 Aug 2020 11:38:26 +0300 Subject: [PATCH 2/2] Release v1.1.0 --- CHANGELOG.md | 28 +++++++++++++++++++++++ artifacts/flagger/deployment.yaml | 2 +- charts/flagger/Chart.yaml | 4 ++-- charts/flagger/values.yaml | 2 +- kustomize/base/flagger/kustomization.yaml | 2 +- pkg/version/version.go | 2 +- 6 files changed, 34 insertions(+), 6 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3fa78c9b..8d36f224 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,34 @@ All notable changes to this project are documented in this file. +## 1.1.0 (2020-08-18) + +Add support for Skipper ingress controller + +#### Features + +- Skipper Ingress Controller support + [#670](https://github.com/weaveworks/flagger/pull/670) +- Support per-config configTracker disable via ConfigMap/Secret annotation + [#671](https://github.com/weaveworks/flagger/pull/671) + +#### Improvements + +- Add priorityClassName and securityContext to Helm charts + [#652](https://github.com/weaveworks/flagger/pull/652) + [#668](https://github.com/weaveworks/flagger/pull/668) +- Update Kubernetes packages to v1.18.8 + [#672](https://github.com/weaveworks/flagger/pull/672) +- Update Istio, Linkerd and Contour e2e tests + [#661](https://github.com/weaveworks/flagger/pull/661) + +#### Fixes + +- Fix O(log n) bug over network in GetTargetConfigs + [#663](https://github.com/weaveworks/flagger/pull/663) +- Fix(grafana): metrics change since Kubernetes 1.16 + [#663](https://github.com/weaveworks/flagger/pull/663) + ## 1.0.1 (2020-07-18) Add support for App Mesh Gateway GA diff --git a/artifacts/flagger/deployment.yaml b/artifacts/flagger/deployment.yaml index 74be4a3b..a82da6b8 100644 --- a/artifacts/flagger/deployment.yaml +++ b/artifacts/flagger/deployment.yaml @@ -22,7 +22,7 @@ spec: serviceAccountName: flagger containers: - name: flagger - image: weaveworks/flagger:1.0.1 + image: weaveworks/flagger:1.1.0 imagePullPolicy: IfNotPresent ports: - name: http diff --git a/charts/flagger/Chart.yaml b/charts/flagger/Chart.yaml index 6a2ced3b..36dd58aa 100644 --- a/charts/flagger/Chart.yaml +++ b/charts/flagger/Chart.yaml @@ -1,7 +1,7 @@ apiVersion: v1 name: flagger -version: 1.0.1 -appVersion: 1.0.1 +version: 1.1.0 +appVersion: 1.1.0 kubeVersion: ">=1.11.0-0" engine: gotpl description: Flagger is a progressive delivery operator for Kubernetes diff --git a/charts/flagger/values.yaml b/charts/flagger/values.yaml index 94286043..3956f5ff 100644 --- a/charts/flagger/values.yaml +++ b/charts/flagger/values.yaml @@ -2,7 +2,7 @@ image: repository: weaveworks/flagger - tag: 1.0.1 + tag: 1.1.0 pullPolicy: IfNotPresent pullSecret: diff --git a/kustomize/base/flagger/kustomization.yaml b/kustomize/base/flagger/kustomization.yaml index 4356b691..b4859564 100644 --- a/kustomize/base/flagger/kustomization.yaml +++ b/kustomize/base/flagger/kustomization.yaml @@ -8,4 +8,4 @@ resources: - deployment.yaml images: - name: weaveworks/flagger - newTag: 1.0.1 + newTag: 1.1.0 diff --git a/pkg/version/version.go b/pkg/version/version.go index a1397302..1bd77e47 100644 --- a/pkg/version/version.go +++ b/pkg/version/version.go @@ -1,4 +1,4 @@ package version -var VERSION = "1.0.1" +var VERSION = "1.1.0" var REVISION = "unknown"