You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Jun 20, 2024. It is now read-only.
Currently if you docker plugin install weave net comes up on every node but the nodes don't know how to find eachother. Implement this by copying the way weave-kube does it but plugging it into the swarm nodes API instead.
To use GET /nodes (Docker API reference) to get a list of nodes to connect to when starting the plugin. Unfortunately, /nodes can be called only from a master node, so it cannot be used when starting the plugin on a worker node.
Accidentally I found out that GET /info returns the list of master nodes. So, when starting the plugin on a worker, we pass -ipalloc-init observer, while on a master node we pass --ipalloc-init consensus=$NUMBER_OF_MASTERS. In both cases, we pass the list of master peers to weave to connect to. It works fine, but it's not clear whether it is safe to use the info from /info. See Undocumented field in GET /info response moby/moby#31386.
To use GET /nodes and DiscoverNew events which the plugin receives when a node joins the Swarm cluster.
I implemented the 2nd one, because of the simplicity, and because at the time of testing I couldn't receive DiscoverNew events. However, after cleaning up my testing env I am able to receive the events. Depending on moby/moby#31386 I might need to implement the 3rd option.
Currently if you
docker plugin install weave
net comes up on every node but the nodes don't know how to find eachother. Implement this by copying the wayweave-kube
does it but plugging it into the swarm nodes API instead.cc @bboreham
The text was updated successfully, but these errors were encountered: