一.单机环境安装
1.下载zookeeper的安装包
http://apache.fayea.com/zookeeper/stable/zookeeper-3.4.10.tar.gz
2.解压zookeeper
tar -zxvf zookeeper-3.4.10.tar.gz
3.cd 到 ZK_HOME/conf , copy一份zoo.cfg
cp zoo_sample.cfg zoo.cfg
4.sh zkServer.sh 启动zookeeper服务
{start|start-foreground|stop|restart|status|upgrade|print-cmd}
5.sh zkCli.sh -server ip:port 启动客户端
二.集群配置
现有192.168.81.113,192.168.81.115,192.168.81.117,192.168.81.119四台机器,在每台机器按照单机环境安装配置一下,然后每台机器按照以下配置
1.cd ZK_HOME/conf/
2.vim zoo.cfg
修改zoo.cfg 最后一行增加(server.id=ip:port:port,server.id是对本机服务器在集群的id序号标识,id的取值范围1~255,ip是集群每台机器的ip,第一个是port用于数据的通信同步,第二个port是用于leader选举):
server.1=192.168.81.113:2888:3181
server.2=192.168.81.115:2888:3181
server.3=192.168.81.117:2888:3181
server.4=192.168.81.119:2888:3181:observer
(如果需要增加observer节点需要的话,以server.4为例,server.4=192.168.81.119:2181:3181:observer , 并且在192.168.81.113的zoo.cfg增加一行peerType=observer )
3.在zoo.cfg文件有个dataDir配置,默认是dataDir=/tmp/zookeeper,此目录是存储zookeeper的快照文件,若没有配置dataLog,事务日志也一并存在此目录中。
cd /tmp/zookeeper
vim myid 增加一行本机服务器在集群的id序号,例如192.168.81.110对应就是1,在myid里面对应增加1即可
4.启动zookeeper
cd ZK_HOME/bin 在每台机器执行:sh zkServer.sh start
启动完以后可以用 sh zkServer.sh status查看每台机器在集群中的角色。
zookeeper集群有三个角色:leader、follower、observer(observer是按照上面第二条增加peerType=observer和在server.id后面增加:observer进行配置的)。默认集群中只有一个leader节点,其他就是follower节点,leader是通过选举出来的