-
Notifications
You must be signed in to change notification settings - Fork 38.7k
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
Automated cherry pick of #112806: test: demote service ClientIP affinity timeout tests from #112990
Automated cherry pick of #112806: test: demote service ClientIP affinity timeout tests from #112990
Conversation
During the September 29th, 2022 SIG-Network meeting we decided to demote the two affinity timeout conformance tests. This was because: (a) there is no documented correct behavior for these tests other than "what kube-proxy does" (b) even the kube-proxy behavior differs depending on the backend implementation of iptables, IPVS, or [win]userspace (and winkernel doesn't at all) (c) iptables uses only srcip matching, while userspace and IPVS use srcip+srcport (d) IPVS and iptables have different minimum timeouts and we had to hack up the test itself to make IPVS pass (e) popular 3rd party network plugins also vary in their implementation Our plan is to deprecate the current affinity options and re-add specific options for various behaviors so it's clear exactly what plugins support and which behavior (if any) we want to require for conformance in the future. Signed-off-by: Dan Williams <dcbw@redhat.com>
@dcbw: Adding label: Reasons for blocking this PR:[ Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
@dcbw: This cherry pick PR is for a release branch and has not yet been approved by Release Managers. To merge this cherry pick, it must first be approved ( AFTER it has been approved by code owners, please leave the following comment on a line by itself, with no leading whitespace: /cc kubernetes/release-managers (This command will request a cherry pick review from Release Managers and should work for all GitHub users, whether they are members of the Kubernetes GitHub organization or not.) For details on the patch release process and schedule, see the Patch Releases page. Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
/sig network |
@dcbw: The label(s) In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
@aojea @johnbelamaric @thockin @danwinship |
Correct. I followed some breadcrumbs, there's a long slack thread linked in kubernetes/test-infra#21082 Basically changing the conformance test metadata (inclusion/exclusion, name) post-release messes with the CNCF conformance certification process. Now it's been a while since we did that, let's say maybe the technical reasons resolved... I would still be extremely conservative about changing conformance tests post-release anyway. What's the reasoning for the necessity of the backport? |
@aojea wanted a ping on this one too... |
@spiffxp could you elaborate on the tooling problems? re "What's the reasoning for the necessity of the backport?" see #112806 (comment) . We've all agreed this test is bad and should be demoted, because a number of 3rd party network plugins have trouble implementing it exactly the same way that iptables/ipvs do (which don't implement it the same way either!). I'm happy to dedicate some resources to working through the problem, I just need to know what to help with :) |
I opened kubernetes/community#7071 to cover the change, sig-arch will review and then assuming we merge that we'll do quick round of consensus on the decision. Ultimately the definition of conformance is owned by the project, and since we have agreed to demote the tests for release N I believe it is unreasonable to hold a conformant distribution in N from being conformant in N-1 when the cause is due to an oversight. |
@hh @spiffxp the changes covering the demotion process are now merged. Can you please have another look at this PR and provide any inputs around @dcbw's comments? |
/assign @johnbelamaric |
/lgtm |
LGTM label has been added. Git tree hash: 03043e8b076c04e47299d418e9fe2959bc95ab51
|
@Riaankl @heyste Can you answer the question regarding the conformance automation? Will this cause problems? If so, what needs to be done to fix it? |
The conformance bot processes the results provided by sonobuoy which uses this list of e2e tests for each patch release of Kubernetes. AFAIK, after the PR has merged, the sonobuoy team need to update the e2e files for 1.25 and then publish a new version of sonobuoy. I've asked for some clarification about this in the sonobuoy slack channel. |
@dcbw would this also be done for 1.24? |
@Riaankl yes indeed. #115510 is for the demotion of the test in 1.24 Thanks for the help here. |
@dcbw I have added this for discussion to the SIG Arch meeting agenda for tomorrow. |
This was discussed in SIG Arch meeting. From a conformance point of this PR can be merge. The only issue the that there is no clear trigger system to enforce the updating of Sonobuoy to match. |
/approve |
Pinging some folks involved with this PR, but also who are root-approvers... |
/approve ok to remove blocked-paths tags |
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.
For RelEng:
/lgtm
/approve
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: aojea, dcbw, dims, johnbelamaric, xmudrii 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 |
/test pull-kubernetes-e2e-gce-ubuntu-containerd |
Cherry pick of #112806 on release-1.25.
#112806: test: demote service ClientIP affinity timeout tests from
For details on the cherry pick process, see the cherry pick requests page.