从单个Zookeeper服务器到集群配置的转变

4
我有一台单独的服务器,现在想要进行副本复制以达到更高的可用性。我的软件栈中包含了Zookeeper,因此似乎自然而然地向其集群配置转变。
然而,单独的服务器中存储了数据,我找不到任何关于如何进行集群设置的指南。我尝试着建立两个独立的实例并将其转为集群配置,但是只有选举的主节点上存在的数据会被保留。
那么,我该如何安全地从单独的服务器配置转变为集群配置而又不会丢失数据?
1个回答

2
如果您从1台服务器直接增加到3台服务器,可能会丢失数据,因为这2台新服务器足以形成一个法定人数,并选举其中一台作为领导者,忽略旧服务器并且丢失该机器上的所有数据。
如果您将群集从1个增长到2个,则在两个服务器启动时,必须涉及旧服务器才能形成法定人数,数据不会丢失。当群集完成启动后,所有数据将同步到两个服务器。
然后,您可以将群集从2个增长到3个,再次需要至少1台具有数据库副本的服务器才能形成法定人数,在群集完成启动后,所有数据将同步到所有三个服务器。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接