Skip to content
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

Only use endpoint slices to generate network endpoints #1973

Merged
merged 3 commits into from
Feb 27, 2023

Conversation

swetharepakula
Copy link
Member

removes support for using endpoints to generate network endpoints

This PR combines #1957 and does additional cleanup

/assign @aojea
/assign @bowei

swetharepakula and others added 3 commits February 27, 2023 14:59
 * remove Endpoints code path and only use EndpointSlices for endpoint
   decisions
 * removes --enable-endpoints-slices flag and makes that code path
   default and only option
The neg syncer was doing some wrong assumptions:

1. Endpoints that are not Ready can have Pods with deletionTimestamp
not nil.
The Endpoint and EndpointSlice controller will remove the Pod from
the corresponding object once it gets deleted (DeletionTimestamp != nil)

2. Any pod with deletionTimestamp == nil is valid, this is the most
dangerous assumption, since a pod can be Unready and be used.
 * terminating pods are already removed from the endpoints from the EPS,
   so this check is no longer needed.

 * this check was a remanent of using endpoints as the source of truth
   since endpoints did not have a terminating field
@k8s-ci-robot k8s-ci-robot added cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. approved Indicates a PR has been approved by an approver from all required OWNERS files. labels Feb 27, 2023
@k8s-ci-robot k8s-ci-robot added the size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. label Feb 27, 2023
@@ -253,7 +253,6 @@ L7 load balancing. CSV values accepted. Example: -node-port-ranges=80,8080,400-5
flag.StringVar(&F.GKEClusterHash, "gke-cluster-hash", "", "The cluster hash of the GKE cluster this Ingress Controller will be interacting with")
flag.StringVar(&F.GKEClusterType, "gke-cluster-type", "ZONAL", "The cluster type of the GKE cluster this Ingress Controller will be interacting with")
flag.BoolVar(&F.EnableTrafficScaling, "enable-traffic-scaling", false, "Enable support for Service {max-rate-per-endpoint, capacity-scaler}")
flag.BoolVar(&F.EnableEndpointSlices, "enable-endpoint-slices", false, "Enable using Endpoint Slices API instead of Endpoints API")
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we not use this flag anymore? Usually when retiring flags, you keep the command line param, but make it log so existing callers on the executable aren't broken. Then fix all of the callers and then delete the flag. If we can fix all of the associated call sites, then ok, we can delete this in one shot.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We will be able to fix the call sites, so this is safe to delete.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

so bowei nailed it i the review 😄

@bowei
Copy link
Member

bowei commented Feb 27, 2023

/lgtm
/approve

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Feb 27, 2023
@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: bowei, swetharepakula

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:
  • OWNERS [bowei,swetharepakula]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@k8s-ci-robot k8s-ci-robot merged commit 5c07837 into kubernetes:master Feb 27, 2023
k8s-ci-robot added a commit that referenced this pull request Mar 14, 2023
…elease-1.22

[Cherry pick #1973] Only use endpoint slices to generate network endpoints
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. lgtm "Looks good to me", indicates that a PR is ready to be merged. size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants