-
Notifications
You must be signed in to change notification settings - Fork 1.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
KEP-1669: promote ProxyTerminatingEndpoints to Beta #3505
Conversation
@@ -21,16 +21,17 @@ see-also: | |||
- https://github.com/kubernetes/kubernetes/issues/85643 | |||
|
|||
# The target maturity stage in the current dev cycle for this KEP. | |||
stage: alpha | |||
stage: beta |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actual KEP changes are light cause we added Beta criteria in previous releases:
#### Beta
* E2E tests are in place, exercising all permutations of internalTrafficPolicy and externalTrafficPolicy.
* Metrics to publish how many Services/Endpoints are routing traffic to terminating endpoints.
8fdc259
to
affb965
Compare
a60704e
to
a8ede61
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Couple comments about the PRR.
@@ -252,7 +253,7 @@ gauge if a rollback is necessary. | |||
|
|||
###### Were upgrade and rollback tested? Was the upgrade->downgrade->upgrade path tested? | |||
|
|||
Upgrade->downgrade->upgrade path has not been tested yet. We may want to require this for beta or GA. | |||
Upgrade->downgrade->upgrade testing (manual or automated) will be required for Beta. If tested manually, the steps will be documented in this KEP. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm fine with this for now - but please update the KEP with it before graduating the feature to Beta in k/k (and send the PR doing that to me too).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yup, will do.
@@ -269,7 +270,7 @@ regardless of their termination state. If this is undesired, workloads should be | |||
###### What are the SLIs (Service Level Indicators) an operator can use to determine the health of the service? | |||
|
|||
- [X] Metrics | |||
- Metric name: TBD | |||
- Metric name: `sync_proxy_rules_no_endpoints_total` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hmm - I was looking for this metric definition in k/k and I can't found it. Does this already exist?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sorry this is a typo. It's sync_proxy_rules_no_local_endpoints_total
https://github.com/kubernetes/kubernetes/blob/master/pkg/proxy/metrics/metrics.go#L152-L162
@@ -185,6 +185,7 @@ All existing E2E tests for Services should continue to pass. | |||
|
|||
* E2E tests are in place, exercising all permutations of internalTrafficPolicy and externalTrafficPolicy. | |||
* Metrics to publish how many Services/Endpoints are routing traffic to terminating endpoints. | |||
* Rollback testing (manual or automated) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sorry - can't comment on the untouched lines - so commenting here.
L228: were those tests added?
L250: were those metrics added?
L362: Can you fill this in? [I guess it's probably as simple as "update workloads to properly set readiness probe"]
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also - please adjust the Testing section to the new format.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
L228: were those tests added?
Yes, some examples:
https://github.com/kubernetes/kubernetes/blob/d436f5d0b7eb87f78eb31c12466e2591c24eef59/pkg/proxy/iptables/proxier_test.go#L6114
https://github.com/kubernetes/kubernetes/blob/6e9845f766e4d34620835aaa1e5f864211471a50/pkg/proxy/ipvs/proxier_test.go#L5493
L250: were those metrics added?
Yes, this should be accomplished with sync_proxy_rules_no_local_endpoints_total
on a per-node basis.
L362: Can you fill this in? [I guess it's probably as simple as "update workloads to properly set readiness probe"]
Yeah makes sense, sorry I missed this.
Will include these links in the PRR and use the new format.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Updated, PTAL
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, some examples:
https://github.com/kubernetes/kubernetes/blob/d436f5d0b7eb87f78eb31c12466e2591c24eef59/pkg/proxy/iptables/proxier_test.go#L6114
https://github.com/kubernetes/kubernetes/blob/6e9845f766e4d34620835aaa1e5f864211471a50/pkg/proxy/ipvs/proxier_test.go#L5493
Can you please update that in the PR?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah I already included them in the Test Plan section using the new format: https://github.com/kubernetes/enhancements/blob/6ddd543896cf6c201352ba302f4354c0e89e8165/keps/sig-network/1669-proxy-terminating-endpoints/README.md#unit-tests
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Heh...
Can you just add here sth like "(linked in Test Plan section)".
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sure, updated
Signed-off-by: Andrew Sy Kim <andrewsy@google.com>
…re promotion to Beta Signed-off-by: Andrew Sy Kim <andrewsy@google.com>
a8ede61
to
57fb5bb
Compare
…points_total and fix typo Signed-off-by: Andrew Sy Kim <andrewsy@google.com>
57fb5bb
to
6ddd543
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
One last minor comment - other than that LGTM.
@@ -185,6 +185,7 @@ All existing E2E tests for Services should continue to pass. | |||
|
|||
* E2E tests are in place, exercising all permutations of internalTrafficPolicy and externalTrafficPolicy. | |||
* Metrics to publish how many Services/Endpoints are routing traffic to terminating endpoints. | |||
* Rollback testing (manual or automated) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, some examples:
https://github.com/kubernetes/kubernetes/blob/d436f5d0b7eb87f78eb31c12466e2591c24eef59/pkg/proxy/iptables/proxier_test.go#L6114
https://github.com/kubernetes/kubernetes/blob/6e9845f766e4d34620835aaa1e5f864211471a50/pkg/proxy/ipvs/proxier_test.go#L5493
Can you please update that in the PR?
…ests Signed-off-by: Andrew Sy Kim <andrewsy@google.com>
… not being met to determine the problem?' Signed-off-by: Andrew Sy Kim <andrewsy@google.com>
6ddd543
to
6fedf3b
Compare
/label tide/merge-method-squash For SIG approval |
SIG: /lgtm |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: andrewsykim, thockin, wojtek-t The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
* KEP-1669: promote ProxyTerminatingEndpoints to Beta Signed-off-by: Andrew Sy Kim <andrewsy@google.com> * KEP-1669: add note that upgrade/downgrade testing should be done before promotion to Beta Signed-off-by: Andrew Sy Kim <andrewsy@google.com> * KEP-1669: add more details about metric sync_proxy_rules_no_local_endpoints_total and fix typo Signed-off-by: Andrew Sy Kim <andrewsy@google.com> * KEP-1669: use the new test plan format, including links to existing tests Signed-off-by: Andrew Sy Kim <andrewsy@google.com> * KEP-1669: answer PRR question 'What steps should be taken if SLOs are not being met to determine the problem?' Signed-off-by: Andrew Sy Kim <andrewsy@google.com> Signed-off-by: Andrew Sy Kim <andrewsy@google.com>
Signed-off-by: Andrew Sy Kim andrewsy@google.com
Promote ProxyTerminatingEndpoints feature to Beta (alpha since v1.24). #1669