I'm trying to understand the way nodes are working together as the cluster. I am working on a new app version (migrating mysql => couchdb). I noticed that sometimes a node is not a part of cluster anymore.
{"all_nodes":["[email protected]"],"cluster_nodes":["[email protected]","[email protected]","couchdb
@couchdb-2.couchdb-stage-svc.default.svc.cluster.local"]}
Other container:
{"all_nodes":["[email protected]","[email protected]"],"cluster_nodes":["[email protected]","[email protected]","couchdb
@couchdb-2.couchdb-stage-svc.default.svc.cluster.local"]}
That causes data inconsistency - couchdb-0 forms a second cluster behind the same loadbalancer.
I if restart any of 3 containers in the cluster, the issue will gone.
Network is running over VPN (latency 7-50ms, depends on the region). Is there anything I could tune in couchdb to prevent that situation?
As far as I know cluster_nodes is the list of connected nodes, all_nodes is the list of nodes the node knows about. So how is this even possible, the node does not know about the other connected ones?
question from:
https://stackoverflow.com/questions/65652014/couchdb-cluster-split 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…