diff --git a/pkg/proxy/iptables/proxier.go b/pkg/proxy/iptables/proxier.go index 5a242460932..34e4d3e8f83 100644 --- a/pkg/proxy/iptables/proxier.go +++ b/pkg/proxy/iptables/proxier.go @@ -670,17 +670,19 @@ func (proxier *Proxier) syncProxyRules() { proxier.mu.Lock() defer proxier.mu.Unlock() + // don't sync rules till we've received services and endpoints + if !proxier.endpointsSynced || !proxier.servicesSynced { + klog.V(2).Info("Not syncing iptables until Services and Endpoints have been received from master") + return + } + + // Keep track of how long syncs take. start := time.Now() defer func() { metrics.SyncProxyRulesLatency.Observe(metrics.SinceInSeconds(start)) metrics.DeprecatedSyncProxyRulesLatency.Observe(metrics.SinceInMicroseconds(start)) klog.V(4).Infof("syncProxyRules took %v", time.Since(start)) }() - // don't sync rules till we've received services and endpoints - if !proxier.endpointsSynced || !proxier.servicesSynced { - klog.V(2).Info("Not syncing iptables until Services and Endpoints have been received from master") - return - } // We assume that if this was called, we really want to sync them, // even if nothing changed in the meantime. In other words, callers are diff --git a/pkg/proxy/ipvs/proxier.go b/pkg/proxy/ipvs/proxier.go index 6652000d80f..6264ea33587 100644 --- a/pkg/proxy/ipvs/proxier.go +++ b/pkg/proxy/ipvs/proxier.go @@ -789,17 +789,19 @@ func (proxier *Proxier) syncProxyRules() { proxier.mu.Lock() defer proxier.mu.Unlock() + // don't sync rules till we've received services and endpoints + if !proxier.endpointsSynced || !proxier.servicesSynced { + klog.V(2).Info("Not syncing ipvs rules until Services and Endpoints have been received from master") + return + } + + // Keep track of how long syncs take. start := time.Now() defer func() { metrics.SyncProxyRulesLatency.Observe(metrics.SinceInSeconds(start)) metrics.DeprecatedSyncProxyRulesLatency.Observe(metrics.SinceInMicroseconds(start)) klog.V(4).Infof("syncProxyRules took %v", time.Since(start)) }() - // don't sync rules till we've received services and endpoints - if !proxier.endpointsSynced || !proxier.servicesSynced { - klog.V(2).Info("Not syncing ipvs rules until Services and Endpoints have been received from master") - return - } // We assume that if this was called, we really want to sync them, // even if nothing changed in the meantime. In other words, callers are