前提:
1.安装好java环境
2.下载好zookeeper包
环境以window电脑为例
文件目录:
zookeeper可以分为单机部署,集群部署,伪集群部署
一、单机部署
1.zk配置
配置文件存放目录:上图中conf文件夹下
将原有zoo_sample.cfg复制出一个zoo.cfg文件,作为zk使用的配置文件,配置文件内容如下:
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/tmp/zookeeper
clientPort=2181
2.zk启动
然后进入目录中bin目录中,windows系统直接运行zkServer.cmd即可
3.zk客户端连接
目录中bin目录中,windows系统直接运行zkCli.cmd即可,即可连接上当前启动的zk服务,可以输入命令ls /进行查看内容
二、集群部署
本节内容可以参考 伪集群部署,因为原理一样。可能需要开通不同机器间的端口信息,用于通信即可
三、伪集群部署
1.zk配置
1.配置文件内容增加上server信息,格式:server.{id}={ip}:{port1}:{port2},server.后面的数字为当前节点id,需要在集群中唯一,由于是伪集群,本机部署三台服务,所以ip都是127.0.0.1,port1用于指定Follower服务器与Leader进行运行时通信和数据同步的端口,port2用于进行Leader选举过程中的投票通信。
#server.1
tickTime=2000
initLimit=10
dataDir=D://SOFT//zookeeper-3.4.3//zookeeper-3.4.3
syncLimit=5
clientPort=2181
# 新增内容:
server.1=127.0.0.1:2888:3888
server.2=127.0.0.1:2889:3889
server.3=127.0.0.1:2890:3890
2.目前配置了三个server信息,所以要指定当前机器在集群中的id是多少,需要创建在dataDir目录中创建myid文件,不需要后缀,文件内容只有一个id即可。
例如:
3.同理复制出相同的zookeeper服务,因为需要在同一台机器启动,所以我们也需要配置文件中将dataDir目录和clientPort端口区分开,分别将myid内容改为2和3
分别贴上server.2和server.3的zoo.cfg文件
#server.2
tickTime=2000
initLimit=10
dataDir=D://SOFT//zookeeper-3.4.3//zookeeper-3.4.3-2
syncLimit=5
clientPort=2182
server.1=127.0.0.1:2888:3888
server.2=127.0.0.1:2889:3889
server.3=127.0.0.1:2890:3890
#server.3
tickTime=2000
initLimit=10
dataDir=D://SOFT//zookeeper-3.4.3//zookeeper-3.4.3-3
syncLimit=5
clientPort=2183
server.1=127.0.0.1:2888:3888
server.2=127.0.0.1:2889:3889
server.3=127.0.0.1:2890:3890
2.启动
分别启动bin目录下的zkServer.cmd即可运行。
3.连接
当前本机启动了三个zk服务,有三个端口,2181,2182和2183,那么使用zkCli.cmd时候会默认连接2181,如果连接其他节点,此时我们需要使用命令进行连接,连接方式
格式:
zkCli.cmd -server {ip}:{port}
连接2182节点:
zkCli.cmd -server 127.0.0.1:2182
至此均已完成,可以查看集群信息了