【发布时间】:2014-09-01 21:01:57
【问题描述】:
我是 Solr 的新手,正在尝试使用 SolrCloud - ZooKeeper 似乎是管理高可用性的最佳方式。
但是,在我们的生产环境中,我们只有两台服务器(主动-主动),我担心 Zookeeper 在两台服务器上并不理想,因为如果其中任何一个出现故障,整个集成都将停止工作。到目前为止的解决方法是在 server1 上运行两个 ZK,在 server2 上运行一个 ZK,这样至少如果 server2 出现故障,我们仍然有 quorum(但如果 server1 出现故障,游戏结束)。
在这种情况下,Solr 的最佳实践/推荐解决方案是什么?它可以在不使用 Zookeeper 的情况下在两台服务器之间使用 SolrCloud 自动复制/故障转移吗?或者有什么方法可以使用 Zookeeper(或其他工具?),以便它在 2 台服务器上具有强大的功能?还是我必须重新使用传统模式复制?
谢谢!
【问题讨论】:
-
非常相关的问题..我们面临同样的问题..Matt 你最后是怎么解决这个问题的?
-
恐怕最终没有“正确”的解决方案——我们在一台服务器上运行了 2 个 ZK,在另一台服务器上运行了 1 个......
-
嗨,马特,我现在也面临同样的问题,您找到更好的解决方案了吗?如果没有,运行 2 zK 1 server + 1 zK 1 server 作为 ensemble 运行顺利吗?在此先感谢您的分享。
-
@jumping_monkey 是的,它在性能方面运行良好 - 但是“如果”带有 2 个 zookeeper 的服务器崩溃,你会丢失整个集群,所以需要注意
-
嗨@Matt,感谢您回来。我猜这个配置的附加值(即 2 台服务器上的 3 个 zk 实例,v/s 1 台服务器上的 1 个 zk 实例)是,如果 1 台服务器崩溃,zk 配置在另一台正在运行的服务器上仍然可用,并且可以用来调出“崩溃”的服务器吗?我只是在大声思考,哪个选项“更好”。请提出您的想法。
标签: solr apache-zookeeper