我正在开发一个全新的 SolrCloud - ZooKeeper 基础设施。
一些背景资料:
- 所有其他服务(主要是网站基础设施)分布在两个数据中心,具有主动-主动配置。
- 在网络层面,服务器设置在扩展 LANS 上,数据中心采用暗光纤。所以延迟是最小的。
- SolrCloud - ZooKeeper 基础设施将被大多数应用程序使用。
我有一个 Solr Cloud 和一个正在运行的 ZooKeeper 集成。在这个级别的实施很好。
但我想知道如何分发我的 ZooKeeper 服务器。我必须有奇数个服务器,但我只有 2 个数据中心。如果一个失败,我有 50-50 的机会失去多数。
有任何想法吗?到目前为止,我想到了:
请求第三个数据中心(不太可能发生,$$$!)
每个数据中心托管 2 个,在外部云提供商(亚马逊或...?)上托管 1 个。再次$$$
在数据中心 1 设置一个奇数,并在站点 2 上使用观察者。如果站点 1 发生故障,会发生什么情况?SolrCloud 可以仅与 1 个观察者一起工作吗?
感谢您的任何想法和评论。
网卡