zookeeper集群/伪集群搭建
1. 安装包下载
安装包下载地址:https://archive.apache.org/dist/zookeeper/
2. 配置
2.1 zoo.cfg配置
安装包解压之后的目录结构如下:
进入conf目录,将zoo_sample.cfg文件复制一份,重命名为zoo.cfg:
按照如下的示例,修改zoo.cfg的配置信息:
tickTime=2000
dataDir=/zookeeper/data
dataLogDir=/zookeeper/logs
clientPort=2181
initLimit=5
syncLimit=2
server.1=10.203.32.17:2888:3888
server.2=10.203.32.27:2888:3888
server.3=10.203.32.31:2888:3888
tickTime : zookeeper使用的基本的时间单位,该值的单位是ms,示例中的值2000ms = 2s。
dataDir : 内存数据快照存储的目录。
dataLogDir : 事务日志文件的存储路径。
clientPort : 客户端访问的端口号。
initLimit : 集群中的节点连接leader节点的超时时间,示例中的值为5 * 2s = 10s。
syncLimit : 数据同步的超时时间。
server.X=A:B:C : X表示节点的id,A表示节点的ip,B表示集群中的X节点与其他节点通信的端口,C表示leader选举时使用的端口号。
2.2 myid配置
在dataDir
配置项对应的目录下,创建一个名为myid
的文件,编辑此文件,将上述配置项中ip值A所对应的节点id值写入文件中。比如,假如某台server的ip为10.203.32.17,则该server上的myid文件中的值就是1。
3. 启动
进入每个节点的%ZOOKEEPER_HOME%/bin
目录,运行zkServer.sh
脚本。
伪集群的搭建基本一样,每个实例的客户端访问端口号要进行区别;此外,节点信息配置时,每个peer的ip一样,只要确保端口号不一样即可。示例如下:
server.1=10.203.32.17:2888:3191
server.2=10.203.32.17:2889:3192
server.3=10.203.32.17:2890:3193