const ToBeDeletedTaint … type ProxierHealthServer … // NewProxierHealthServer returns a proxier health http server. func NewProxierHealthServer(addr string, healthTimeout time.Duration) *ProxierHealthServer { … } func newProxierHealthServer(listener listener, httpServerFactory httpServerFactory, c clock.Clock, addr string, healthTimeout time.Duration) *ProxierHealthServer { … } // Updated should be called when the proxier of the given IP family has successfully updated // the service rules to reflect the current state and should be considered healthy now. func (hs *ProxierHealthServer) Updated(ipFamily v1.IPFamily) { … } // QueuedUpdate should be called when the proxier receives a Service or Endpoints event // from API Server containing information that requires updating service rules. It // indicates that the proxier for the given IP family has received changes but has not // yet pushed them to its backend. If the proxier does not call Updated within the // healthTimeout time then it will be considered unhealthy. func (hs *ProxierHealthServer) QueuedUpdate(ipFamily v1.IPFamily) { … } // IsHealthy returns only the proxier's health state, following the same // definition the HTTP server defines, but ignoring the state of the Node. func (hs *ProxierHealthServer) IsHealthy() bool { … } func (hs *ProxierHealthServer) isHealthy() (bool, time.Time) { … } // SyncNode syncs the node and determines if it is eligible or not. Eligible is // defined as being: not tainted by ToBeDeletedTaint and not deleted. func (hs *ProxierHealthServer) SyncNode(node *v1.Node) { … } // NodeEligible returns nodeEligible field of ProxierHealthServer. func (hs *ProxierHealthServer) NodeEligible() bool { … } // Run starts the healthz HTTP server and blocks until it exits. func (hs *ProxierHealthServer) Run(ctx context.Context) error { … } type healthzHandler … func (h healthzHandler) ServeHTTP(resp http.ResponseWriter, req *http.Request) { … } type livezHandler … func (h livezHandler) ServeHTTP(resp http.ResponseWriter, req *http.Request) { … }