@@ -123,28 +123,28 @@ func NewNodeManager(logger logr.Logger, resourceManager resource.ResourceManager
123
123
}
124
124
125
125
func (m * manager ) CheckNodeForLeakedENIs (nodeName string ) {
126
- managedNode , found := m .GetNode (nodeName )
127
- if ! found {
128
- m .Log .Info ("Node manager couldn't find the node for reconciliation cleanup " , "NodeName " , nodeName )
126
+ cachedNode , found := m .GetNode (nodeName )
127
+ if ! found || ! cachedNode . IsManaged () {
128
+ m .Log .V ( 1 ). Info ("node not found or not managed by controller, skip reconciliation " , "nodeName " , nodeName )
129
129
return
130
130
}
131
131
132
132
// Only start a goroutine when need to
133
- if time .Now ().After (managedNode .GetNextReconciliationTime ()) {
133
+ if time .Now ().After (cachedNode .GetNextReconciliationTime ()) {
134
134
go func () {
135
135
if resourceProvider , found := m .resourceManager .GetResourceProvider (config .ResourceNamePodENI ); found {
136
136
foundLeakedENI := resourceProvider .ReconcileNode (nodeName )
137
137
if foundLeakedENI {
138
- managedNode .SetReconciliationInterval (node .NodeInitialCleanupInterval )
138
+ cachedNode .SetReconciliationInterval (node .NodeInitialCleanupInterval )
139
139
} else {
140
- interval := wait .Jitter (managedNode .GetReconciliationInterval (), 5 )
140
+ interval := wait .Jitter (cachedNode .GetReconciliationInterval (), 5 )
141
141
if interval > node .MaxNodeReconciliationInterval {
142
142
interval = node .MaxNodeReconciliationInterval
143
143
}
144
- managedNode .SetReconciliationInterval (interval )
144
+ cachedNode .SetReconciliationInterval (interval )
145
145
}
146
- managedNode .SetNextReconciliationTime (time .Now ().Add (managedNode .GetReconciliationInterval ()))
147
- m .Log .Info ("reconciled cleanup node for leaking branch interfaces " , "NodeName" , nodeName , "NextInterval" , managedNode .GetReconciliationInterval (), "NextReconciliationTime" , managedNode .GetNextReconciliationTime ())
146
+ cachedNode .SetNextReconciliationTime (time .Now ().Add (cachedNode .GetReconciliationInterval ()))
147
+ m .Log .Info ("reconciled node to cleanup leaked branch ENIs " , "NodeName" , nodeName , "NextInterval" , cachedNode .GetReconciliationInterval (), "NextReconciliationTime" , cachedNode .GetNextReconciliationTime ())
148
148
} else {
149
149
// no SGP provider enabled
150
150
return
0 commit comments