Samuel Lang
39e55daa04
📈 Skipper Metrics Observer
...
Te be able to distinct Skipper routes we need to combine the Canary data to generate the Skipper metric label.
"request-success-rate" and "request-duration" queries are implemented and tested that provide those obersvations from Skipper metrics
* Takes into account how Skipper renders the paths accordingly and reformats the quieries.
2020-08-17 08:23:38 +02:00
Samuel Lang
ca14a08f9c
✨ Skipper Router Implementation
...
Router implementation for zalan.do/Skipper Ingress -
An HTTP router and reverse proxy for service composition, including use cases like Kubernetes Ingress
https://github.com/zalando/skipper/
* The concept is to define routes with specific weights via the skipper specific annotation predicate of "zalando.org/backend-weights".
* A new "canary ingress" is created that has higher "weight" thus receiving all traffic, which distributes progressively
* After the canary process is finished, this ingress is disabled via the "False()" annotation predicate to route traffic again back to the apex Ingress.
There are certain Skipper principles which are taken into account:
```
Skipper Principles:
* if only one backend has a weight, only one backend will get 100% traffic
* if two of three or more backends have a weight, only those two should get traffic.
* if two backends don't have any weight, it's undefined and right now they get equal amount of traffic.
* weights can be int or float, but always treated as a ratio.
Implementation:
* apex Ingress is immutable
* new canary Ingress contains two paths for primary and canary service
* canary Ingress manages weights on primary & canary service, hence no traffic to apex service
```
2020-08-17 08:23:38 +02:00
leigh capili
1242825c42
Fix O(log n) bug over network in GetTargetConfigs() when using --enable-config-tracking
...
Read for more details:
https://github.com/weaveworks/flagger/issues/658#issuecomment-669389203
2020-08-05 13:16:50 -06:00
stefanprodan
74db314288
Release v1.0.1
2020-07-18 09:21:37 +03:00
jqlu
7fd8251a06
fix typo in status.go
2020-07-03 10:47:40 +08:00
Rafael Gaspar
b890b79234
Fix multiple paths per rule on canary ingress
2020-06-22 15:59:27 +02:00
stefanprodan
de3aeab702
Release v1.0.0
2020-06-17 11:11:06 +03:00
stefanprodan
e8ca5f270b
Change builtin metrics to work with Istio >= 1.5
2020-06-17 10:13:29 +03:00
Stefan Prodan
6f65f6096d
Merge pull request #607 from justinabrahms/master
...
Support for specifying additional arguments to concord tasks
2020-06-16 09:26:37 +03:00
stefanprodan
0715e1ca37
Add AppMesh timeout unit test
2020-06-04 13:48:52 +03:00
stefanprodan
37ec07d2ec
Set timeout for virtual nodes and routers
2020-06-04 12:37:34 +03:00
stefanprodan
7a18bfaac5
Add timeout fields to AppMesh client
2020-06-04 12:15:44 +03:00
Sebastien Le Digabel
8c55bb222d
Rephrasing Canary Progressing message
...
Fixes #606 .
Also fixed the alert message to keep it consistent with the message,
along with the documentation.
2020-06-02 14:35:55 +01:00
Justin Abrahms
dcab2d518f
Support for specifying additional arguments to concord tasks
2020-06-02 04:28:54 -07:00
stefanprodan
6db5b5c417
Add allow origins field to CORS spec
2020-06-01 14:58:08 +03:00
stefanprodan
2e75dbb170
Add progressive promotion test
2020-05-18 10:44:23 +03:00
stefanprodan
eaa5b14be6
Implement progressive traffic shifting on promotion
2020-05-18 10:34:10 +03:00
stefanprodan
f3b444ab49
Add promotion step weight to Canary CRD
2020-05-18 10:34:10 +03:00
mathetake
e0de9d0afa
pkg/controller: add unit test for checkMetricProviderAvailability
2020-05-16 11:12:45 +09:00
mathetake
a17e8b4794
not return even if checkMetricProviderAvailability fails
2020-05-15 21:44:35 +09:00
mathetake
ad73643e4a
pkg/metrics/provideres: delete fake value
2020-05-15 19:36:11 +09:00
mathetake
5d84596bc0
pkg/controller: check metrics server's availability during initalization
2020-05-15 19:35:40 +09:00
stefanprodan
99bc7040a3
Release v1.0.0-rc.5
2020-05-14 14:00:23 +03:00
Stefan Prodan
3e19ef0f01
Make Contour annotation const
...
Co-authored-by: Takeshi Yoneda <cz.rk.t0415y.g@gmail.com >
2020-05-14 12:48:12 +03:00
stefanprodan
fbaf8fedc7
Set ingress class in factory
2020-05-14 12:27:11 +03:00
stefanprodan
48467eb8b3
Add ingress class support for Contour
...
Add `-ingress-class` command flag. When set, the specified class is used to annotate the generated HTTPProxy objects.
2020-05-14 12:17:03 +03:00
mathetake
772099f073
pkg/metrics/providers: remove redundant assertion in prometheus test
2020-05-14 17:48:14 +09:00
stefanprodan
e7f2d22505
Fix svc update conflict
2020-05-14 11:08:32 +03:00
stefanprodan
6cfa432834
Retry canary initialization on conflict
2020-05-14 11:03:32 +03:00
stefanprodan
6498cccb85
Use target port for virtual routers
...
AppMesh does not support port mappings
2020-05-13 22:50:26 +03:00
stefanprodan
6c9847ae14
Use FQDN for virtual nodes DNS
2020-05-13 22:43:10 +03:00
stefanprodan
b0b0cedde1
Map target port for virtual node listeners
2020-05-13 17:26:36 +03:00
stefanprodan
86939d9dce
Register AppMesh VirtualNodes before Deployment init
2020-05-08 13:16:19 +03:00
stefanprodan
854d7665f0
Add AppMesh v1beta2 to factories
2020-05-08 13:15:37 +03:00
stefanprodan
52c757250a
Fix annotations diff
2020-05-08 13:14:50 +03:00
stefanprodan
fe1d85b0ce
Add AppMesh v1beta2 router tests
2020-05-08 13:13:27 +03:00
stefanprodan
0aac94b782
Implement AppMesh v1beta2 router
2020-05-08 13:12:58 +03:00
stefanprodan
2d1c4a9d84
Use API providers in observer factory
2020-05-06 01:14:41 +03:00
stefanprodan
eba6478729
Add providers to API
2020-05-06 01:12:41 +03:00
stefanprodan
7686b4b01a
Generate AppMesh v1beta2 client
2020-05-05 19:31:03 +03:00
stefanprodan
55c89770d7
Add AppMesh v1beta2 clientset and RBAC
2020-05-04 22:22:51 +03:00
Ed
f46eaa8d05
This makes the primary ready in the TestScheduler_DeploymentAlerts test
...
in order to send out an alert. Previously, it did not reach a state
to send an alert.
2020-04-30 00:20:25 -04:00
Gijs van Dulmen
2b7a95fee5
Fix slack naming as well in tests
2020-04-27 13:13:46 +02:00
Gijs van Dulmen
647eb81021
Fix naming but keep structs
2020-04-27 09:46:13 +02:00
Stefan Prodan
bda620aae9
Merge pull request #560 from tariq1890/fix_lint
...
fix issues reported by the linter
2020-04-18 11:12:38 +03:00
Tariq Ibrahim
d41ed43ef9
fix issues reported by the linter
2020-04-17 11:45:44 -07:00
Tariq Ibrahim
e473d4b2fb
remove unnecessary dependency on k/utils
2020-04-16 16:14:08 -07:00
Arnaud Lemaire
4a4f8555df
Check prometheus is online with simple query
2020-04-15 10:29:05 +02:00
stefanprodan
84dd0006ca
Add service metadata update unit test
2020-04-04 17:16:49 +03:00
stefanprodan
8d37b7b20b
Update service metadata if ownerRef kind is canary
2020-04-04 16:52:12 +03:00