mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-31 07:20:13 +00:00
proxy/iptables: don't sync proxy rules if services map didn't change
This commit is contained in:
parent
433f6830f8
commit
6aa784e6f2
@ -556,8 +556,6 @@ func (proxier *Proxier) OnServiceUpdate(allServices []api.Service) {
|
||||
proxier.haveReceivedServiceUpdate = true
|
||||
|
||||
newServiceMap, hcAdd, hcDel, staleUDPServices := buildServiceMap(allServices, proxier.serviceMap)
|
||||
proxier.serviceMap = newServiceMap
|
||||
|
||||
for _, hc := range hcAdd {
|
||||
glog.V(4).Infof("Adding health check for %+v, port %v", hc.namespace, hc.nodeport)
|
||||
// Turn on healthcheck responder to listen on the health check nodePort
|
||||
@ -572,7 +570,13 @@ func (proxier *Proxier) OnServiceUpdate(allServices []api.Service) {
|
||||
healthcheck.DeleteServiceListener(hc.namespace, hc.nodeport)
|
||||
}
|
||||
|
||||
proxier.syncProxyRules()
|
||||
if len(newServiceMap) != len(proxier.serviceMap) || !reflect.DeepEqual(newServiceMap, proxier.serviceMap) {
|
||||
proxier.serviceMap = newServiceMap
|
||||
proxier.syncProxyRules()
|
||||
} else {
|
||||
glog.V(4).Infof("Skipping proxy iptables rule sync on service update because nothing changed")
|
||||
}
|
||||
|
||||
proxier.deleteServiceConnections(staleUDPServices.List())
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user