1、vmware Centos6.5虚拟机准备bash
1. 使用同一用户learn ,安装三台CentOS6.5系统虚拟机,分别为vm1, vm2, vm3。网络
2. 经过NAT或者桥接模式分别为vm1,vm2, vm3设置网络。文中采用NAT方式, ip地址分别为:app
vm1: 192.168.60.128 vm1.learn.com.net
vm2: 192.168.60.130 vm2.learn.com日志
vm2: 192.168.60.131 vm3.learn.comcode
保证相互之间能够ping通, 且/etc/hosts文件配置各节点host。server
3. 为每台机器设置SSH免密登陆, 参见:https://blog.csdn.net/zhujq_icode/article/details/82629745blog
2、安装Zookeeper集群ip
1. 下载Zookeeper安装包,本文下载的是:zookeeper-3.4.13.tar.gzget
2. 解压安装包至安装目录 /home/learn/app/zookeeper/
tar -zxvf zookeeper-3.4.13.tar.gz -C /home/learn/app/zookeeper
3. vm1修改zoo.cfg配置文件, 设置集群节点。(若节点间链接有问题,可将本机的server改为:如vm1的, server.1=0.0.0.0:2888:3888)
dataDir=/home/learn/data/zookeeper/data dataLogDir=/home/learn/data/zookeeper/logs server.1=vm1.learn.com:2888:3888 server.2=vm2.learn.com:2888:3888 server.3=vm3.learn.com:2888:3888
4. 复制安装包及配置文件至vm2, vm3机器。
5. 为各个节点设置server id 和zoo.cfg配置的一致, 如server.1=vm1.learn.com:2888:3888,这vm1的zookeeper节点的server id为1。
在dataDir=/home/learn/data/zookeeper/data目录下,生成一个配置文件myid,配置内容即为对应的id值, 如:
//vm1机器 echo 1 > /home/learn/data/zookeeper/data/myid //vm2机器 echo 2 > /home/learn/data/zookeeper/data/myid //vm3机器 echo 3 > /home/learn/data/zookeeper/data/myid
6. 启动各个节点
cd /home/learn/app/zookeeper/zookeeper-3.4.13/bin //启动zookeeper ./zkServer.sh start //查看启动状态mode: follower 仍是 leader ./zkServer.sh status //中止zookeeper ./zkServer.sh start
7. 观察启动日志
/home/zhujq/app/zookeeper/zookeeper-3.4.13/bin/zookeeper.out
不少错误均可以在此发现并获得解决。
3、Connect Refused 或者 Connect time out
1. 检查是否设置server id, myid配置文件位置,值是否正确。
2. /etc/hosts文件是否正确设置了各节点host。
3. 防火墙是否容许zookeeper端口访问,
//检查防火墙状态 service iptables status //暂时关闭防火墙, 重启以后,防火墙也会开启 service iptables stop //启动防火墙 service iptables start //永久关闭防火墙, 开机不启动防火墙 service iptables stop chkconfig iptables off //开机启动防火墙 chkconfig iptables on