Apache 动物园管理员工作
我正在学习动物园管理员。我了解到,当集群包含1000台机器时,zookeeper非常有用。我没有什么疑问 我试着阅读以下链接来理解Apache 动物园管理员工作,apache,distributed-computing,apache-zookeeper,Apache,Distributed Computing,Apache Zookeeper,我正在学习动物园管理员。我了解到,当集群包含1000台机器时,zookeeper非常有用。我没有什么疑问 我试着阅读以下链接来理解 我有以下问题 1) zookeeper在集群中处理数千台机器时有何帮助 2) zookeeper如何解决分布式同步问题 3) zookeeper是如何解决集中配置问题的?zookeeper在集群中处理数千台机器时有何帮助? ZooKeeper有很多可能的用例,最突出的当然是 服务注册 配置存储 分布式锁定 分布式通知服务(使用监视程序) 还有更多 您可以根据
我有以下问题 1) zookeeper在集群中处理数千台机器时有何帮助
2) zookeeper如何解决分布式同步问题
3) zookeeper是如何解决集中配置问题的?zookeeper在集群中处理数千台机器时有何帮助? ZooKeeper有很多可能的用例,最突出的当然是
- 服务注册
- 配置存储
- 分布式锁定
- 分布式通知服务(使用监视程序)
- 还有更多
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
作为ZooKeeper集合一部分的每台机器都应该知道集合中的每台其他机器。您可以通过表单server.id=host:port:port的一系列行来实现这一点。主机和端口的参数很简单。根据配置文件参数dataDir的指定,通过创建名为myid的文件(每个服务器一个)将服务器id赋予每台计算机,该文件位于该服务器的数据目录中
5.myid文件由一行组成,其中只包含该机器id的文本。因此,服务器1的myid将包含文本“1”,而不包含其他内容。id在集合中必须是唯一的,并且其值应介于1和255之间
[……]
zookeeper如何解决分布式同步问题?
ZooKeeper通过使用特殊协议(ZooKeeper Atomic Broadcast,ZAB)收集共识并发布关于内部数据结构状态的结果,确保整个集群的一致性。虽然它并不完全等同,但可以粗略地想象它是Paxos协议的一个变体。此协议确保数据在每个时间点都保持一致,从而允许轻松安全的故障切换,例如,当一个特定ZooKeeper实例崩溃时
从技术上讲,但是如果你只是想使用ZooKeeper,两者之间的区别其实并不重要
zookeeper是如何解决集中式配置问题的?
通过没有(配置)数据的单个集中副本。尽管每个ZooKeeper客户端程序通常连接到一个特定的ZooKeeper实例,但所有数据始终是复制的