centos7搭建zookeeper 集群
- 准备
- 前提
- 规划
- 防火墙
- 开始搭建集群
- 192.168.83.144
- 上传安装包
- 添加环境变量
- 修改zookeeper 的配置
- 192.168.83.145 和 192.168.83.146 配置
- 启动 集群
准备
- vm 虚拟机
- centos7系统
- zookeeper 安装包
- FinalShell或者其他shell工具
前提
- 虚拟机安装好3台centos7系统的虚拟机服务器。且相互之间可以互通访问。
- 提前下载好zookeeper 安装包。此处使用的安装包为apache-zookeeper-3.9.2-bin.tar.gz(下载地址:zookeeper下载地址)
规划
三台服务器地址IP地址如下:
ip | 集群myid序号 |
---|---|
192.168.83.144 | 1 |
192.168.83.145 | 2 |
192.168.83.146 | 3 |
防火墙
三台服务器都关闭防火墙
systemctl stop firewalld
开始搭建集群
192.168.83.144
上传安装包
将提前下载好的安装包上传到服务器上,我这上传到 /root 上。
使用命令将压缩包解压到 /usr/local目录下
tar -zxvf apache-zookeeper-3.9.2-bin.tar.gz -C /usr/local
解压完成后,在 /usr/local 下得到文件夹 ** apache-zookeeper-3.9.2-bin**
重命名为 zookeeper
mv apache-zookeeper-3.9.2-bin zookeeper
添加环境变量
编辑环境变量文件
vim /etc/profile
在文件中添加zookeeper的环境变量配置
export ZOOKEEPER_HOME=/usr/local/zookeeper
export PATH=$ZOOKEEPER_HOME/bin:$PATH
保存退出编辑,刷新配置
source /etc/profile
修改zookeeper 的配置
进入 /usr/local/zookeeper/conf 目录下
将 zoo_sample.cfg 复制并重命名为 zoo.cfg
cp zoo_sample.cfg zoo.cfg
并编辑 zoo.cfg 文件
vim zoo.cfg
在 文件中找到 dataDir 的配置,并按下面的修改
# 原配置为:dataDir=/tmp/zookeeper 修改后如下:
dataDir=/usr/local/zookeeper/data
然后在zoo.cfg 文件的末尾添加集群的配置信息
# 2888为组成zookeeper服务器之间的通信端口
# 3888为用来选举主节点的端口
# server.序号。此处的序号为集群节点的id,不可以冲突,必须唯一。在下面的myid文件中用到。对应 【规划】步骤中的序号
server.1=192.168.83.144:2888:3888
server.2=192.168.83.145:2888:3888
server.3=192.168.83.146:2888:3888
在 /usr/local/zookeeper/ 下创建 data 目录
mkdir -p /usr/local/zookeeper/data
在 /usr/local/zookeeper/data 目录下创建文件 myid
touch myid
根据 规划 或者 zoo.cfg 中的配置,将id 写入myid文件中
当前操作的是192.168.83.144,对应的序号是1.所以使用以下的命令将id写入myid文件中
echo "1">myid
192.168.83.145 和 192.168.83.146 配置
实际上192.168.83.145 和 192.168.83.146 配置步骤和192.168.83.144 一致。为了方便快捷的安装。可以将192.168.83.144上已经配置好的zookeeper复制一份到192.168.83.145 和 192.168.83.146上即可。
用以下命令复制
# 复制给192.168.83.145
scp -r /usr/local/zookeeper root@192.168.83.145:/usr/local
# 复制给192.168.83.146
scp -r /usr/local/zookeeper root@192.168.83.146:/usr/local
修改myid文件
在192.168.83.145的myid文件中,使用以下命令修改myid的值
echo "2">myid
在192.168.83.146的myid文件中,使用以下命令修改myid的值
echo "3">myid
配置环境变量
步骤和192.168.83.144一致。可以自己配,也可以使用scp从192.168.83.144上复制。复制后记得要执行命令: source /etc/profile
启动 集群
进入 /usr/local/zookeeper/bin 目录下
执行以下命令
# 启动
./zkServer.sh start
由于zookeeper的主节点选举模式需要集群过半数量正常启动才可以选举。
此时我们将三台服务器的集群启动完成后。使用以下命令查看集群状态
./zkServer.sh status
可以看到以下信息:
192.168.83.144:
follower :表示从节点
192.168.83.145:
leader:表示主节点
192.168.83.146:
follower :表示从节点