- 集群规划:在master01,,slave01和slave02三个节点上部署Zookeeper
- 解压安装
- 在master01下解压安装到指定目录
tar -zxvf zookeeper-3.4.10.tar.gz -C /opt/module/
- 将zookeeper安装目录分发到slave01和slave02
scp -r zookeeper-3.4.10/ slave01:/opt/module/
scp -r zookeeper-3.4.10/ slave02:/opt/module/
- 配置服务器编号
- 在master01的zookeeper安装目录下,新建zkData目录
mkdir zkData
- 在zkData目录下,创建一个myid的文件【一定要在Linux里面创建】
- 修改myid文件,唯一标识的id
vim myid
----------------------
每台服务器的id都是唯一的
- 分发myid文件到slave01和slave02
- 到slave01和slave02更改myid的内容【注意:每台服务器的id都是唯一的】
- 配置zoo.cfg文件
- 重命名zookeeper安装目录下,conf目录下的zoo_sample.sfg为zoo.cfg
mv zoo_sample.cfg zoo.cfg
- 打开zoo.cfg,并修改配置文件
vim zoo.cfg
-------------------------------------------
# 修改数据存储路径配置
dataDir=/opt/module/zookeeper-3.4.10/zkData
# 增加如下配置
# A为myid中的id号,B为id号对应的ip地址(或主机名,对于已完成主机映射),C为leader和follower通信端口号,D为follower和follower选举端口号
##################cluster###################
server.0=master01:2888:3888
server.1=slave01:2888:3888
server.2=slave02:2888:3888
cluster配置参数解读:server.A=B:C:D
A是一个数字,表示这个是第几号服务器;【集群模式下配置一个文件myid,这个文件在dataDir目录下,这个文件里面有一个数据就是A的值,Zookeeper启动时读取此文件,拿到里面的数据与zoo.cfg里面的配置信息比较从而判断到底是哪个server。】
B是这个服务器的ip地址;【主机名称(配置主机映射文件可以写主机名称)】
C是这个服务器与集群中的Leader服务器交换信息的端口;
D是万一集群中的Leader服务器挂了,需要一个端口来重新进行选举,选出一个新的Leader,而这个端口就是用来执行选举时服务器相互通信的端口。
- 分发zoo.cfg到slave01和slave02
- 集群操作
- 在master01下,启动zookeeper服务器
- 查看zookeeper服务器状态
error是因为目前集群只有一台服务器启动,未到达半数以上
- 在slave01下,启动zookeeper服务器
- 关闭zookeeper服务器【工具:发送键到所有对话,关闭zookeeper集群】