Closed jacknlliu closed 7 years ago
Can you check if the two hosts have the same time?
Some background on this error: the clock skew could be problematic for the gossip protocol Weave Net uses under the cover to exchange data between the various peers making your cluster. See also here and here.
If the two hosts have a different time (as asked by @bboreham above), then you may want to synchronise these using NTP.
@bboreham @marccarre the two hosts don't have the same time, but I wonder if it will work with this issue. I test etcd, and it will work with this issue even though some warning print.
Some people claimed etcd is resilient to skews, so yes, it could be that you will not experience issues on this specific front, however, in general,
ntp
on the various hosts forming the cluster, e.g. Kubernetes or Cassandra,so, IMHO, it definitely would be safer and preferable to synchronise these clocks, @jacknlliu. Is this something you have control over?
@bboreham, do you reckon this could be useful?
@marccarre thank you very much for sharing your brilliant opinion.
We use the time to remove "tombstones" which replace deleted DNS entries from the eventually-consistent data structure.
If two clocks are very out of sync then WeaveDNS would delete current data.
Without a mechanism to remove tombstone entries the data structure will grow bigger and bigger and consume more machine resources over time.
Etcd is completely different: it is a full-consensus system that will freeze under a network partition. Different trade-offs.
Closing because this is working as designed.
Peers connect failed, the following output show the error.
What happened?
Two hosts use weave to connect the docker containers.
On host A,
On host B,
and show the status
Then we get failed.