-
Notifications
You must be signed in to change notification settings - Fork 672
weave-net doesn't update the NetworkUnavailable
node status on GCE
#3249
Comments
Presumably weave-net or weave-kube should update the node status once weave comes up and is working? |
(Also related #2896) |
Was that the resolved "correct" way to do it? Is it documented anywhere? I would think Weave should signal to kubelet which updates the node status. Pretty sure there isn't a way to do that. |
I'm looking in particular at comments like kubernetes/kubernetes#33573 (comment) It looks to me like the current behaviour is that the gce controller sets this up and expects any network plugin in use to set it, which is why it doesn't work. And currently either the network plugin needs to set it, or you disable the gce cloud provider (which then means volumes etc don't work, so not really an option) I'm not confident what the right overall solution should be, but it does seem clear that the current behaviour doesn't work. |
current code has a special case for gce in This then gets used here to unconditionally set this to false So not sure if it's in the docs anywhere, but it does seem clear that networking plugins setting this status is expected behaviour in the current tree |
In the interest of getting my cluster working, I might hack something together that I can run as a sidecar in the weave-net DaemonSet. It would be useful to validate if that's a useful approach, anyway. (If it does some basic healthchecking on weave-net, might be able to solve #2896 too) Not sure if this is the correct long-term solution |
Current WIP:
Add another container to DaemonSet:
Obvioiusly not doing actual healthchecking of weave etc, but testing this now to see if I can get a cluster up and running |
Is there any progress on this issue ? At he moment my workaround is to enable the "create route" in the cloud-controller-manager but is ugly at best. |
Nitpick: the precondition isn't quite "on GCE" - we create Kubernetes clusters on GCE for every integration test run - but "when the GCE cloudprovider is in use". @mikebryant I took your WIP and slapped it into the Go code at #3307 |
This is needed to update the node NetworkUnavailable conditon see #3249
What you expected to happen?
For weave-net networking to work on GCE
What happened?
weave-net runs on a node, but the node has a
NetworkUnavailable
status so no pods are scheduledHow to reproduce it?
Anything else we need to know?
GCE, custom
See also:
Versions:
weave is 2.0.5
Logs:
The text was updated successfully, but these errors were encountered: