centos6搭建zookeeper集群环境
Zookeeper 集群中只要有过半的节点是正常的情况下,那么整个集群对外就是可用的。正是基于这个 特性, 要将 ZK 集群的节点数量要为奇数( 2n+1: 如 3、 5、 7 个节点)较为合适。 本例中用3台服务器测试。 服务器 1: 192.168.1.203 端口: 2181、 2881、 3881 服务器 2: 192.168.1.204端口: 2182、 2882、 3882 服务器 3: 192.168.1.205 端口: 2183、 2883、 3883 1、 修改操作系统的/etc/hosts 文件, 添加 IP 与主机名映射: vi /etc/hosts
添加 192.168.1.203 zk1 192.168.1.204 zk2 192.168.1.205 zk3 2、 下载或上传 zookeeper-3.3.6.tar.gz 解压到/usr/local/ 目录 tar -zvxf zookeeper-3.3.6.tar.gz -C /usr/local
3.解压 zookeeper 安装包, 并按节点号对 zookeeper 目录重命名 对三台服务器分别命名为zk1,zk2,zk3 cd /usr/local mv zookeeper-3.3.6 zk1 mv zookeeper-3.3.6 zk2 mv zookeeper-3.3.6 zk3
4.在各 zookeeper 节点目录下创建以下目录 mkdir /tmp/zookeeper/data/ mkdir /tmp/zookeeper/log/
5、 将 zookeeper 目录下的 zoo_sample.cfg 文件拷贝一份,命名为 zoo.cfg: cp zoo_sample.cfg zoo.cfg
6、 修改 zoo.cfg 配置文件 ####zk1 tickTime=2000 initLimit=10 syncLimit=5 dataDir=/tmp/zookeeper/data dataLogDir=/tmp/zookeeper/logs clientPort=2181 server.1=zk1:2881:3881 server.2=zk2:2882:3882 server.3=zk3:2883:3883
#####zk2 tickTime=2000 initLimit=10 syncLimit=5 dataDir=/tmp/zookeeper/data dataLogDir=/tmp/zookeeper/logs clientPort=2182 server.1=zk1:2881:3881 server.2=zk2:2882:3882 server.3=zk3:2883:3883
#####zk3 tickTime=2000 initLimit=10 syncLimit=5 dataDir=/tmp/zookeeper/data dataLogDir=/tmp/zookeeper/logs clientPort=2183 server.1=zk1:2881:3881 server.2=zk2:2882:3882 server.3=zk3:2883:3883
7、 在 dataDir=/tmp/zookeeper/data 下创建 myid 文件 编辑 myid 文件,并在对应的 IP 的机器上输入对应的编号 zk1 vi /tmp/zookeeper/data/myid ## 值为 1
zk2 vi /tmp/zookeeper/data/myid ## 值为 2
zk3 vi /tmp/zookeeper/data/myid ## 值为 3 8.打开防火墙端口 启动并测试 zookeeper (1) 使用 wusc 用户到/home/wusc/zookeeper/node-0X/bin 目录中执行: $ /usr/local/zookeeper/bin/zkServer.sh start $ /usr/local/zookeeper/bin/zkServer.sh start $ /usr/local/zookeeper/bin/zkServer.sh start
(2) 输入 jps 命令查看进程: $ jps 896 QuorumPeerMain
其中, QuorumPeerMain 是 zookeeper 进程, 说明启动正常 (3) 查看状态: $ /usr/local/zookeeper/bin/zkServer.sh status
(4) 查看 zookeeper 服务输出信息: 由于服务信息输出文件在/usr/local/zookeeper/bin/zookeeper.out $ tail -f zookeeper.out
|