Zookeeper 是一个分布式协调服务, 本文介绍的 Zookeeper 是以 3.4.11 这个稳定版本为基础,最新的版本可以通过 官网 来获取,Zookeeper 的安装非常简单,下面将以集群模式介绍 Zookeeper 的安装和配置。
准备
三台 Linux 服务器:
- 172.16.129.18 redis18
- 172.16.129.21 redis21
- 172.16.129.22 redis22
安装 JDK
。。。。
下载 Zookeeper 解压
。。。。
修改配置文件
cp zoo_sample.cfg zoo.cfg
需要修改的配置项:
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/tkdata/zookeeper/data
clientPort=2181
server.1=172.16.129.18:2888:3888
server.2=172.16.129.21:2888:3888
server.3=172.16.129.22:2888:3888
#server.1 这个1是服务器的标识也可以是其他的数字, 表示这个是第几号服务器,用来标识服务器,这个标识要写到快照目录下面myid文件里
#第一个端口是master和slave之间的通信端口,默认是2888,第二个端口是leader选举的端口,集群刚启动的时候选举或者leader挂掉之后进行新的选举的端口默认是3888
创建 myid 文件
#server1
echo "1" > /tkdata/zookeeper/data/myid
#server2
echo "2" > /tkdata/zookeeper/data/myid
#server3
echo "3" > /tkdata/zookeeper/data/myid
指定日志路径
-
修改
conf/log4j.properties
文件中的zookeeper.root.logger=INFO, ROLLINGFILE
-
修改
bin/zkEnv.sh
文件中ZOO_LOG_DIR="/tkdata/zookeeper/logs"
和ZOO_LOG4J_PROP="INFO,ROLLINGFILE"
启动服务
./zkServer.sh start #启动服务(3台都需要操作)
./zkServer.sh status #检查服务器状态
jps
jps(Java Virtual Machine Process Status Tool)是 JDK 1.5 提供的一个显示当前所有 java 进程 pid 的命令
设置开机启动
cd /etc/rc.d/init.d/
touch zookeeper #创建一个空文件
chmod +x zookeeper #添加可执行权限
chkconfig --add zookeeper #把zookeeper添加到开机启动
chkconfig --list #列出所有的系统服务
service zookeeper start/stop #启动或停止zookeeper服务
zookeeper 文件内容:
查看集群状态
./zkServer.sh status
输出
ZooKeeper JMX enabled by default
Using config: /usr/local/zookeeper/bin/../conf/zoo.cfg
Mode: follower
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于