Skip to content

Commit 1b9a4b9

Browse files
committed
controller: check condition NodeNetworkUnavailable when determining whether node is ready (#4917)
Signed-off-by: zhangzujian <zhangzujian.7@gmail.com>
1 parent e90637a commit 1b9a4b9

File tree

1 file changed

+8
-4
lines changed

1 file changed

+8
-4
lines changed

pkg/controller/node.go

+8-4
Original file line numberDiff line numberDiff line change
@@ -47,12 +47,16 @@ func (c *Controller) enqueueAddNode(obj interface{}) {
4747
}
4848

4949
func nodeReady(node *v1.Node) bool {
50-
for _, con := range node.Status.Conditions {
51-
if con.Type == v1.NodeReady && con.Status == v1.ConditionTrue {
52-
return true
50+
var ready, networkUnavailable bool
51+
for _, c := range node.Status.Conditions {
52+
switch c.Type {
53+
case v1.NodeReady:
54+
ready = c.Status == v1.ConditionTrue
55+
case v1.NodeNetworkUnavailable:
56+
networkUnavailable = c.Status == v1.ConditionTrue
5357
}
5458
}
55-
return false
59+
return ready && !networkUnavailable
5660
}
5761

5862
func (c *Controller) enqueueUpdateNode(oldObj, newObj interface{}) {

0 commit comments

Comments
 (0)