据我所知,建议有一个奇怪数量的动物园管理员,如Using Zookeeper with Solr but only have 2 servers所述。
我想知道一定数量的solr实例建议的动物园管理员数量。
让我们说我想知道x solr实例我需要多少个zookeeper实例?
由于
答案 0 :(得分:2)
一般情况下 - 如果你有相当数量的服务器,5通常是一个很好的数字。更多服务器意味着更低的写入性能,但读取性能稍好一些。五是好的,因为它允许您删除服务器以进行升级,同时仍然拥有健康的群集。
- 如何调整ZooKeeper集合(集群)的大小?
醇>通常在确定ZooKeeper服务节点的数量时 部署(整体的大小)你需要考虑 可靠性,而不是性能。
可靠性:
单个ZooKeeper服务器(独立)本质上是一个协调器 没有可靠性(单个服务节点故障会降低ZK 服务)。
一个3服务器集合(你需要跳转到3而不是2,因为ZK工作 基于简单多数表决,允许单个服务器失败 并且该服务仍然可用。
因此,如果您希望可靠性至少达到3.我们通常建议 在"在线"生产服务环境。这个 允许您使1台服务器停止服务(比如计划维护) 并且仍然能够承受其中一个人的意外停电 剩余的服务器没有中断服务。
性能:
当您添加ZK服务器时,写入性能实际上减少 read performance increases modestly
请参阅本页,了解Patrick Hunt(http://twitter.com/phunt)所做的调查 查看独立服务器和操作系统的操作延迟 大小为3的整体。你会注意到一台核心机器正在运行 独立的ZK合奏(1台服务器)仍然可以处理15k 每秒请求数。这比数量大几个数量级 大多数应用程序需要(如果他们正确使用ZooKeeper - 即 作为协调服务,而不是数据库的替代品, 文件存储,缓存等...)
即。群集的大小并不是限制因素,但更重要的是您对Zookeeper总共有多少查询(而不是Solr中的查询)。在您遇到非常专业的域名之前,您可能不会遇到任何问题。
答案 1 :(得分:0)
公式:2n+1
其中n是要处理的节点失败的最大数量。假设如果最多2个zookeeper节点发生故障,你想保持zookeeper集群服务的运行。你应该考虑集群中的(2 * 2 + 1)= 5个zookeeper实例(ZooKeeper集合)。