将 conf/zoo_sample.cfg文件, 命名为 conf/zoo.cfg
# 此应用的所有时间都以这个时间为单位(毫秒), 如 session的最小超时时间2*tickTime
tickTime=2000
# Leader限制, 在 Follower启动过程中同步数据的时间, 要求 initLimit时间内完成, 否则连接失败. 默认为10*ticktime
initLimit=10
# Leader与 Follower之间发生请求后, 当设置的时间内未收到应答时, 指定 Follower将被丢弃. 默认为5*ticktime
syncLimit=5
# 快照文件存储目录, 快照数据文件名为:snapshot.x, (x是 Zxid)
dataDir=/Users/quanchunlin/Desktop/zookeeper-3.6.1/data
# 事务日志存储目录, 当客户端请求事务时, 在未收到成功响应前, 会将事务操作写入到磁盘上. 如不设置, 默认事务日志与快照文件存在同一个目录, 建议分开设置
dataLogDir=/Users/quanchunlin/Desktop/zookeeper-3.6.1/logs
# 提供给客户端链接的服务端口
clientPort=2181
# 限制单个客户端和单台服务器之间的最大并发连接数, 即以 IP地址粒度来进行连接数的限制, 如果为0 表示不作限制, 默认为60
maxClientCnxns=60
# 设置保留多少个 snapshot文件
#autopurge.snapRetainCount=3
# 设置多少小时清理一次 snapshot文件, 如果为0 表示禁用自动清除功能
#autopurge.purgeInterval=1
## Metrics Providers
#
# https://prometheus.io Metrics Exporter
#metricsProvider.className=org.apache.zookeeper.metrics.prometheus.PrometheusMetricsProvider
#metricsProvider.httpPort=7000
#metricsProvider.exportJvmInfo=true
zenshunrins-MacBook-Air:zookeeper-3.6.1 quanchunlin$ bin/zkServer.sh start
/usr/bin/java
ZooKeeper JMX enabled by default
Using config: /Users/quanchunlin/Desktop/zookeeper-3.6.1/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
...
2020-08-02 20:53:09,287 [myid:localhost:2181] - INFO [main-SendThread(localhost:2181):ClientCnxn$SendThread@1420] - Session establishment complete on server localhost/127.0.0.1:2181, session id = 0x100049502990000, negotiated timeout = 30000
WATCHER::
WatchedEvent state:SyncConnected type:None path:null
[zk: localhost:2181(CONNECTED) 0]
# server1\conf\zoo.cfg
dataDir=D:/Program Files/zookeeper-3.6.1/server1/data
dataLogDir=D:/Program Files/zookeeper-3.6.1/server1/logs
clientPort=2181
server.1=0.0.0.0:2887:3887
server.2=127.0.0.1:2888:3888
server.3=127.0.0.1:2889:3889
# server2\conf\zoo.cfg
dataDir=D:/Program Files/zookeeper-3.6.1/server2/data
dataLogDir=D:/Program Files/zookeeper-3.6.1/server2/logs
clientPort=2182
server.1=127.0.0.1:2887:3887
server.2=0.0.0.0:2888:3888
server.3=127.0.0.1:2889:3889
# server3\conf\zoo.cfg
dataDir=D:/Program Files/zookeeper-3.6.1/server3/data
dataLogDir=D:/Program Files/zookeeper-3.6.1/server3/logs
clientPort=2183
server.1=127.0.0.1:2887:3887
server.2=127.0.0.1:2888:3888
server.3=0.0.0.0:2889:3889
# server.A=B:C:D
# A: 整数值, 表示服务器编号
# B: 服务器 ip地址
# C: Leader选举的端口
# D: Zookeeper服务器之间的通信端口
# 启动服务
server1/bin/zkServer.cmd # Linux时 bin/zkServer.sh [start/restart/stop/status]
server2/bin/zkServer.cmd
server3/bin/zkServer.cmd
server3/bin/zkCli.cmd -server 127.0.0.1:2181 create /test-key "test-value"
- Created /test-key
server1/bin/zkCli.cmd -server 127.0.0.1:2182 get /test-key
- test-value
server2/bin/zkCli.cmd -server 127.0.0.1:2183 ls /
- [test-key, zookeeper]
如果您觉得有帮助,欢迎点赞哦 ~ 谢谢!!