gpt4 book ai didi

configuration - ZooKeeper 多服务器设置示例

转载 作者:行者123 更新时间:2023-12-01 01:56:42 25 4
gpt4 key购买 nike

来自 ZooKeeper multi-server config docs它们显示了可以放置在 zoo.cfg 中的以下配置(ZK 的配置文件)在每个服务器上:

tickTime=2000
dataDir=/var/zookeeper/
clientPort=2181
initLimit=5
syncLimit=2
server.1=zoo1:2888:3888
server.2=zoo2:2888:3888
server.3=zoo3:2888:3888

此外,他们说您需要 myid每个 ZK 节点上的文件,其内容与 server.id 之一匹配上面的值。例如,在一个 3 节点的“集成”(ZK 集群)中,第一个节点的 myid文件将只包含值 1 .第二个节点的 myid文件将包含 2 ,等等。

关于现实世界中的样子,我有几个实际问题:

1.可以localhost使用? 如果 zoo.cfg必须在 ensemble 中的每个节点上重复,是否可以将当前服务器定义为 localhost ?例如,在 3 节点集成中,服务器 #2 的 zoo.cfg 是否可以?看起来像:
tickTime=2000
dataDir=/var/zookeeper/
clientPort=2181
initLimit=5
syncLimit=2
server.1=zoo1:2888:3888
server.2=localhost:2888:3888 # Afterall, we're on server #2!
server.3=zoo3:2888:3888

还是不建议/不可能?

2.他们的服务器ID必须是数字吗? 例如,我可以有一个 5 节点集合,其中每个服务器的 zoo.cfg好像:
tickTime=2000
dataDir=/var/zookeeper/
clientPort=2181
initLimit=5
syncLimit=2
server.red=zoo1:2888:3888
server.green=zoo2:2888:3888
server.blue=zoo3:2888:3888
server.orange=zoo1:2888:3888
server.purple=zoo2:2888:3888

比如说,服务器 1 的 myid将包含值 red在里面(等等)?

最佳答案

1、可以使用localhost吗?

这是一个很好的问题,因为 ZooKeeper 文档并没有明确说明配置文件是否只接受 IP 地址。它只说hostname这可能意味着 IP 地址、DNS 或 hosts 中的名称文件,例如 localhost .

server.x=[hostname]:nnnnn[:nnnnn], etc
(No Java system property)

servers making up the ZooKeeper ensemble. When the server starts up, it determines which server it is by looking for the file myid in the data directory. That file contains the server number, in ASCII, and it should match x in server.x in the left hand side of this setting.



但是,请注意 ZooKeeper 建议在所有主机中使用完全相同的配置文件:

ZooKeeper's behavior is governed by the ZooKeeper configuration file. This file is designed so that the exact same file can be used by all the servers that make up a ZooKeeper server assuming the disk layouts are the same. If servers use different configuration files, care must be taken to ensure that the list of servers in all of the different configuration files match.



所以只需输入机器IP地址,一切都应该工作。另外,我个人使用 0.0.0.0 进行了测试。 (在接口(interface) IP 地址与公共(public) IP 地址不同的情况下)并且它确实有效。

2.他们的服务器ID必须是数字吗?

来自 ZooKeeper multi-server configuration docs , myid需要是从 1 到 255 的数值:

The myid file consists of a single line containing only the text of that machine's id. So myid of server 1 would contain the text "1" and nothing else. The id must be unique within the ensemble and should have a value between 1 and 255.



由于 myid必须匹配 xserver.x参数,我们可以推断出 x也必须是数值。

关于configuration - ZooKeeper 多服务器设置示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39986257/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com