Skip to content

Commit b06b4f0

Browse files
brandondaauren
authored andcommitted
Move ipset restore outside policy loop
Signed-off-by: Brad Davidson <[email protected]>
1 parent e34ef29 commit b06b4f0

File tree

1 file changed

+21
-19
lines changed

1 file changed

+21
-19
lines changed

pkg/controllers/netpol/policy.go

+21-19
Original file line numberDiff line numberDiff line change
@@ -112,8 +112,7 @@ func (npc *NetworkPolicyController) syncNetworkPolicyChains(networkPoliciesInfo
112112
}
113113
}
114114

115-
for ipFamily, ipset := range npc.ipSetHandlers {
116-
ipFamily := ipFamily
115+
for ipFamily := range npc.ipSetHandlers {
117116
// ensure there is a unique chain per network policy in filter table
118117
policyChainName := networkPolicyChainName(policy.namespace, policy.name, version, ipFamily)
119118

@@ -143,26 +142,29 @@ func (npc *NetworkPolicyController) syncNetworkPolicyChains(networkPoliciesInfo
143142
}
144143
activePolicyIPSets[targetSourcePodIPSetName] = true
145144
}
145+
}
146+
}
146147

147-
restoreStart := time.Now()
148-
err := ipset.Restore()
149-
restoreEndTime := time.Since(restoreStart)
150-
151-
defer func() {
152-
if npc.MetricsEnabled {
153-
switch ipFamily {
154-
case api.IPv4Protocol:
155-
metrics.ControllerPolicyIpsetV4RestoreTime.Observe(restoreEndTime.Seconds())
156-
case api.IPv6Protocol:
157-
metrics.ControllerPolicyIpsetV6RestoreTime.Observe(restoreEndTime.Seconds())
158-
}
148+
for ipFamily, ipset := range npc.ipSetHandlers {
149+
ipFamily := ipFamily
150+
restoreStart := time.Now()
151+
err := ipset.Restore()
152+
restoreEndTime := time.Since(restoreStart)
153+
154+
defer func() {
155+
if npc.MetricsEnabled {
156+
switch ipFamily {
157+
case api.IPv4Protocol:
158+
metrics.ControllerPolicyIpsetV4RestoreTime.Observe(restoreEndTime.Seconds())
159+
case api.IPv6Protocol:
160+
metrics.ControllerPolicyIpsetV6RestoreTime.Observe(restoreEndTime.Seconds())
159161
}
160-
klog.V(2).Infof("Restoring %v ipset took %v", ipFamily, restoreEndTime)
161-
}()
162-
163-
if err != nil {
164-
return nil, nil, fmt.Errorf("failed to perform ipset restore: %w", err)
165162
}
163+
klog.V(2).Infof("Restoring %v ipset took %v", ipFamily, restoreEndTime)
164+
}()
165+
166+
if err != nil {
167+
return nil, nil, fmt.Errorf("failed to perform ipset restore: %w", err)
166168
}
167169
}
168170

0 commit comments

Comments
 (0)