If I want zero downtime deployments when using externalTrafficPolicy: Local, should I set preStop hook while using ProxyTerminatingEndpoints?

Asking for help? Comment out what you need so we can get more information to help you!

Cluster information:

Kubernetes version: 1.28
Cloud being used: (put bare-metal if not on a public cloud) EKS
Installation method: Terraform
Host OS: Linux
CNI and version: amazon-k8s-cni:v1.18.2
CRI and version: containerd://1.7.11

Hi, everyone. I want to know something about ProxyTerminatingEndpoints.

When I use a LoadBalancer Service with externalTrafficPolicy: Local, if all pods in one node are deleted. ProxyTerminatingEndpoints makes it possible to route traffic to terminating pod. and " kube-proxy’s node port health check should fail if there are only Terminating endpoints"

But if my ELB has such config: healthcheck-unhealthy-threshhold = 2, healthcheck-interval = 30s
if during the interval(0-15s) there is no request to the elb, can kube-proxy affect the health check?
And if at a time(16s) pods are deleted.

At a time (18s) a request is sent to the node without any pods. The request will fail, right?

So is it neccessary to set a preStop hook to sleep for a time according to the health check config?

enhancements/keps/sig-network/1669-proxy-terminating-endpoints/README.md at master · kubernetes/enhancements (github.com)
Create ability to do zero downtime deployments when using externalTrafficPolicy: Local · Issue #85643 · kubernetes/kubernetes (github.com)