- 3台机器上分别创建zookeeper的安装目录
mkdir -p /usr/local/software/zookeeper
- 官网下载tar包,3台机器上分别分别解压
tar -xvf zookeeper-3.4.11.tar.gz -C /usr/local/software/zookeeper/
- 3台机器分别进入安装目录下,将zoo.sample.cfg重命名为zoo.cfg,然后修改dataDir配置并添加dataLogDIr配置。dataDir是存储快照文件的目录,dataLogDir是存储事务日志的目录,默认的事务日志文件存储在dataDir指定的目录中,由于事务日志的写性能直接关系到zookeeper的性能,最好单独指定。
dataDir=/opt/data/zookeeper/data
dataLogDir=/opt/data/zookeeper/logs - 开始集群配置,修改3台机器下的zoo.cfg文件,添加如下内容:
server.1=192.168.174.7:2888:3888 server.2=192.168.174.8:2888:3888 server.3=192.168.174.9:2888:3888
有n台服务器就到server.n。后面分别配置ip地址和端口。2888端口是该服务器与集群中的leader交换信息的端口,3888是选举时服务器相互通信的端口。
- 分别在3台机器的${dataDir}路径下即上面第三步指定的dataDir目录下创建myid文件,myid文件里只写入对应服务器的编号即上面第四步的n。在本配置中ip为174.7的服务器在该文件下写入1,其他的服务器对应写入n值(2,3...)
mkdir -p /opt/data/zookeeper/data vim /opt/data/zookeeper/data/myid
- 为了以后执行zookeeper命令方便,配置一下zookeeper的环境变量。
vim /etc/profile
在文件中添加如下内容:
export ZOOKEEPER_HOME=/usr/local/software/zookeeper/zookeeper-3.4.11 export PATH=$PATH:$ZOOKEEPER_HOME/bin
- 分别启动三台zookeeper并查看各台机器的角色,是leader或是follower
开启zookeeper服务zkServer.sh start
查看zookeeper状态
zkServer.sh status
当仅开启第一台时,查看状态显示未运行,当至少开启两台时,集群模式才会正常,才会选举leader和follower,如果启动报错,查看${dataDir}下的zookeeper.out日志文件。
注意事项:开启集群模式时,要注意防火墙的配置。