创建3台机器的集群,这里没有三台机器,打算使用一台机器不同端口(虚拟机)来创建。
1、在/usr/local/zookeeper-3.4.9目录下创建三个子目录zk1,zk2,zk3
mkdir zk1 zk2 zk3
2、在子目录zk1,zk2,zk3下分别创建data、logs目录
mkdir data logs
3、分别在子目录下zk1,zk2,zk3下创建myid。
3.1、zk1:创建myid,写入数字1,代表服务器1
echo 1 >> myid
3.2、zk2:创建myid,写入数字2,代表服务器2
echo 2 >> myid
3.3、zk3:创建myid,写入数字3,代表服务器3
echo 3 >> myid
4、分别copy zookeeper/conf到子目录zk1,zk2,zk3下
cp -rf /usr/local/zookeeper/conf /usr/local/local/zookeeper-3.4.9/zk1/
cp -rf /usr/local/zookeeper/conf /usr/local/local/zookeeper-3.4.9/zk2/
cp -rf /usr/local/zookeeperconf /usr/local/local/zookeeper-3.4.9/zk3/
5、修改/usr/local/zookeeper-3.4.9的目录名为/usr/local/zookeeper(刚开忘记修改了)
mv zookeeper-3.4.9 zookeeper
6、修改配置文件zoo.cfg
6.1、修改/usr/local/zookeeper/conf/zk1/zoo.cfg
tickTime=2000
dataDir=/usr/local/zookeeper/zk1/data
dataLogDir= /usr/local/zookeeper/zk1/logs
clientPort=2181
initLimit=5
syncLimit=2
server.1=10.1.1.165:2888:3888
server.2=10.1.1.165:2889:3889
server.3=10.1.1.165:2890:3890
6.2、修改/usr/local/zookeeper/conf/zk2/zoo.cfg
tickTime=2000
dataDir=/usr/local/zookeeper/zk2/data
dataLogDir= /usr/local/zookeeper/zk2/logs
clientPort=2182
initLimit=5
syncLimit=2
server.1=10.1.1.165:2888:3888
server.2=10.1.1.165:2889:3889
server.3=10.1.1.165:2890:3890
6.3、修改/usr/local/zookeeper/conf/zk3/zoo.cfg
tickTime=2000
dataDir=/usr/local/zookeeper/zk3/data
dataLogDir= /usr/local/zookeeper/zk3/logs
clientPort=2183
initLimit=5
syncLimit=2
server.1=10.1.1.165:2888:3888
server.2=10.1.1.165:2889:3889
server.3=10.1.1.165:2890:3890
7、启动
7.1、启动zk1:./zkServer.sh start ../zk1/conf/zoo.cfg
7.2、启动zk2:./zkServer.sh start ../zk2/conf/zoo.cfg
7.3、启动zk3:./zkServer.sh start ../zk3/conf/zoo.cfg
8、查看服务状态信息,没有nc工具,使用yum -y install nc安装
8.1、服务器1:echo stat |nc 10.1.1.165 2181
8.1、服务器2:echo stat |nc 10.1.1.165 2182
8.1、服务器3:echo stat |nc 10.1.1.165 2183
可以发现服务器3为Leader,其他两台为follower