Zookeeper安装
目录
Zookeeper安装
Zookeeper简介
安装
相关命令
Zookeeper的集群配置
Zookeeper简介
Zookeeper是一个开源的分布式协调服务,是Google Chubby的一个开源实现。分布式应用程序可以基于Zookeeper实现诸如数据发布/订阅、负载均衡、命名服务、分布式协调/通知、集群管理、Master选举、配置维护等功能。在Zookeeper中共有三种角色:leader、follower和observer,同一时刻Zookeeper集群中只有一个leader,其它都是follower和observer。observer不参与投票,默认情况下Zookeeper中只有一个leader和follower两个角色。
安装
cd /opt
下载:wget https://mirrors.bfsu.edu.cn/apache/zookeeper/zookeeper-3.6.3/apache-zookeeper-3.6.3-bin.tar.gz
解压:tar zxvf apache-zookeeper-3.6.3-bin.tar.gz
编辑 vi /etc/profile
export ZOOKEEPER_HOME=/opt/apache-zookeeper-3.6.3-bin
export PATH=${ZOOKEEPER}/bin:$PATH
并执行 source /etc/profile
cd /opt/apache-zookeeper-3.6.3-bin/conf
# 拷贝一份配置文件
cp zoo_sample.cfg ./zoo.cfg
配置zoo.cfg
# Zookeeper服务器心跳时间,单位为ms
tickTime=2000
# 允许follower连接并同步到leader的初始化连接时间,以tickTime的倍数来表示
initLimit=10
# leader与follower心跳检测最大容忍时间,响应超过syncLimit * tickTime,leader认为follower 死掉,从服务器列表中删除follower
syncLimit=5
# 数据目录
dataDir=/tmp/zookeeper/data
# 日志目录
dataLogDir=/tmp/zookeeper/log
# Zookeeper对外服务端口
clientPort=2181
注:Zookeeper的默认配置文件中没有/tmp/zookeeper/data和/tmp/zookeeper/log目录
mkdir /tmp/zookeeper/data
mkdir /tmp/zookeeper/log
在mkdir /tmp/zookeeper/data/目录下创建一个文件myid,并写入一个数值,如0,myid文件里面存放的是服务器的编号
相关命令
# 启动
./zkServer.sh start
# 查看服务状态
./zkServer.sh status
Zookeeper的集群配置
# 首先在这3台机器的/etc/hosts文件中添加3台集群的IP地址与机器域名的映射
编辑 vi /etc/hosts
192.168.0.2 node1
192.168.0.3 node2
192.168.0.4 node3
# 然后在这3台机器的zoo.cfg文件中添加以下配置
server.0=192.168.0.2:2888:3888
server.0=192.168.0.3:2888:3888
server.0=192.168.0.4:2888:3888
# 注:公式说明,server.A=B:C:D。其中A是一个数字,代表服务器的编号,就是前面说的myid文件里面的值。集群中的每台服务器的编号都必须唯一,所以要保证每台服务器中的myid文件中的值不同。B代表服务器的IP地址。C表示服务器与集群中的leader服务器交换的端口。D表示选举时服务器相互通信的端口。