zookeeper单机和集群🔥
单机
注:提前配置java环境,zkCli.sh需要java环境
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
{start|start-foreground|stop|restart|status|upgrade|print-cmd}
5.进入客户端
sh zkCli.sh -server ip:port
集群
假设现在有三台服务器:192.168.22.11,192.168.22.12,192.168.22.13
配置数据目录
cd /usr/local/zookeepermkdir datamkdir logstouch data/myid
更改zoo.cfg
# 数据目录dataDir=/usr/local/zookeeper/data# 日志目录dataLogDir=/usr/local/zookeeper/logs# the port at which the clients will connectclientPort=2181# 集群配置server.1=192.168.22.11:21888:31888server.2=192.168.22.12:21888:31888server.3=192.168.22.13:21888:31888
修改data/myid
server.1 的配置中写1,以此类推,更改myid
启动验证
启动三台服务器的zookeeper
[root@localhost zookeeper]# ./bin/zkServer.sh startZooKeeper JMX enabled by defaultUsing config: /usr/local/zookeeper/bin/../conf/zoo.cfgStarting zookeeper ... STARTED[root@localhost zookeeper]# ./bin/zkServer.sh statusZooKeeper JMX enabled by defaultUsing config: /usr/local/zookeeper/bin/../conf/zoo.cfgMode: follower
参数普及
# zookeeper中最小的时间单位长度 (ms)tickTime=2000# follower节点启动后与leader节点完成数据同步的时间initLimit=10# leader节点和follower节点进行心跳检测的最大延时时间syncLimit=5# 表示zookeeper服务器存储快照文件的目录dataDir=/tmp/zookeeper# 表示配置 zookeeper事务日志的存储路径,默认指定在dataDir目录下dataLogDir# 表示客户端和服务端建立连接的端口号: 2181clientPort
