安装步骤
1、下载zookeeper包
官网下载地址: http://www.apache.org/dist/zookeeper/
百度网盘:
链接:https://pan.baidu.com/s/1UdR3rLqx4mO7n2vkILfCHA 提取码:k8b5
#解压到 /usr/local/server 目录下 tar -zxvf zookeeper-3.4.14.tar.gz -C /usr/local/server
3、进入 zookeeper-3.4.14 目录,创建 data 文件夹
cd zookeeper-3.4.14/ mkdir data
4、修改zoo.cfg中的data属性
#进入conf目录 cd conf #修改 zoo_sample.cfg文件名为 zoo.cfg mv zoo_sample.cfg zoo.cfg #修改zoo.cfg中的data属性 dataDir=/usr/local/server/zookeeper-3.4.14/data
5、zookeeper 服务启动
进入bin目录,启动服务输入命令
./zkServer.sh start
输出以下内容表示启动成功
zkServer.sh常用命令
-
服务启动
./zkServer.sh start
-
关闭服务输入命令
./zkServer.sh stop
-
查看状态
./zkServer.sh status
如果启动状态,提示
如果未启动状态,提示:
二、集群环境部署
真实的集群是需要部署在不同的服务器上的,但是在我们测试时启动多个虚拟机的内存消耗太大,所以我们通常会搭建伪集群,也就是把所有的服务都搭建在一台虚拟机上,用端口进行区分。
准备工作
1、解压zookeeper到zkcluster的目录下,修改文件名为zookeeper-1,并复制两份分别为zookeeper-2,zookeeper-3
#创建zk集群应用目录 mkdir /usr/local/server/zkcluster #解压zookeeper到zkcluster目录 tar -zxvf zookeeper-3.4.14.tar.gz -C /usr/local/server/zkcluster #进入zkcluster目录,修改zk解压包名称,并复制两份 cd /usr/local/server/zkcluster mv zookeeper-3.4.14/ zookeeper-1 #修改文件名称 cp -r zookeeper-1/ zookeeper-2 #复制文件夹 cp -r zookeeper-1/ zookeeper-3
2、在解压后的三个 Zookeeper-* 目录下创建data目录
cd .zookeeper-1 mkdir data cd .zookeeper-2 mkdir data cd .zookeeper-3 mkdir data
3、修改zoo.cfg中的data属性(三个zk都要修改)
#进入conf目录 cd conf #修改 zoo_sample.cfg文件名为 zoo.cfg mv zoo_sample.cfg zoo.cfg #修改zoo.cfg中的data属性 dataDir=/usr/local/server/zkcluster/zookeeper-1/data #修改三个zk服务端口 #zookeeper-1 clientPort=2181 #zookeeper-2 clientPort=2182 #zookeeper-3 clientPort=2183
配置集群
(1)在每个zookeeper-*的 data 目录下创建一个 myid 文件,内容分别是1、2、3 。这个文件就是记录每个服务器的ID
#进入data目录 cd /usr/local/server/zkcluster/zookeeper-1/data/ #传进myid文件,并设置值(zookeeper-1为1 zookeeper-2为2 zookeeper-3为3) touch myid
查看zookeeper-1的myid值:
(2)在每一个zookeeper 的 zoo.cfg配置客户端访问端口(clientPort)和集群服务器IP列表。
#server.服务器ID(myid)=服务器IP地址:服务器之间通信端口:服务器之间投票选举端口 server.1=192.168.126.99:2881:3881 server.2=192.168.126.99:2882:3882 server.3=192.168.126.99:2883:3883
启动集群
依次zookeeper-1、zookeeper-2、zookeeper-3启动三个zk实例,服务启动时会发起选举,其中有一个leader和两个follower。按选举原则,leader为zookeeper-2 其他为follower。
使用 ./zkServer.sh status查看状态如下:
来源:https://www.cnblogs.com/TvvT-kevin/p/12249727.html