文章目录:
▶ 单机环境搭建
▶ 设置zookeeper为开机服务
▶ 集群环境搭建
单机环境搭建
要求:
依赖Java环境
单机搭建过程:
进入到/opt目录下,创建zookeeper 文件夹
cd /opt
mkdir zookeeper
进入到zookeeper文件夹下下载zookeeper包
或者手动下载地址:
https://www-eu.apache.org/dist/zookeeper/
cd zookeeper
wget https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.4.14/zookeeper-3.4.14.tar.gz
解压zookeeper-3.4.14.tar.gz文件
tar -zvxf zookeeper-3.4.14.tar.gz
进入配置文件目录
重命名zoo_sample.cfg配置文件
zoo_sample.cfg 这个文件是官方给我们的zookeeper的样板文件,给他复制一份命名为zoo.cfg,zoo.cfg是官方指定的文件命名规则
cp zoo_sample.cfg zoo.cfg
进入到/opt/zookeeper/zookeeper-3.4.14目录下新建data和logs两个文件夹
cd /opt/zookeeper/zookeeper-3.4.14
mkdir data
mkdir logs
修改zoo.cfg 配置文件
cd conf
vi zoo.cfg
#输入以下内容:
dataDir=/opt/zookeeper/zookeeper-3.4.14/data
dataLogDir=/opt/zookeeper/zookeeper-3.4.14/logs
#退出并保存
先按ESC键,输入:wq!回车
进入到bin目录,启动zookeeper
./zkServer.sh start
利用 ./zkServer.sh status 查看当前zookeeper的状态
./zkServer.sh status
至此,zookeeper的单机版搭建成功。
设置开机启动
进入到 /etc/rc.d/init.d 目录下 ,新建一个名为 zookeeper 的文件
cd /etc/rc.d/init.d
mkdir zookeeper
touch zookeeper
编辑zookeeper文件,把文件修改为 :
vi zookeeper
内容如下:
#!/bin/bash
#chkconfig: 2345 10 90
#description: service zookeeper
export JAVA_HOME=/opt/java8/jdk1.8.0_171
export ZOO_LOG_DIR=/opt/zookeeper/zookeeper-3.4.14/logs
ZOOKEEPER_HOME=/opt/zookeeper/zookeeper-3.4.14
su root ${ZOOKEEPER_HOME}/bin/zkServer.sh "$1"
退出并保存 ,为新建的/etc/rc.d/init.d/zookeeper文件添加可执行权限
chmod +x /etc/rc.d/init.d/zookeeper
把zookeeper这个脚本添加到开机启动项里面
chkconfig --add zookeeper
最后重启linux
reboot
重启之后 ,使用如下命令,查看zookeeper是否启动
service zookeeper status
集群环境搭建
下载:
https://www-eu.apache.org/dist/zookeeper/ https://www-eu.apache.org/dist/zookeeper/zookeeper-3.4.14/zookeeper-3.4.14.tar.gz环境配置:
Linux服务器1:192.168.73.181
Linux服务器2:192.168.73.182
Linux服务器3:192.168.73.183
搭建过程:
进入到opt目录下,新建zookeeper目录,下载zookeeper文件
wget https://www-eu.apache.org/dist/zookeeper/zookeeper-3.4.14/zookeeper-3.4.14.tar.gz
解压zookeeper文件
tar -zvxf zookeeper-3.4.14.tar.gz
重命名zoo_sample.cfg配置文件
cp zoo_sample.cfg zoo.cfg
进入到/opt/zookeeper/zookeeper-3.4.14目录下新建data和logs两个文件夹
cd /opt/zookeeper/zookeeper-3.4.14
mkdir data
mkdir logs
复制并修改zookeeper配置文件
cd conf
vi zoo.cfg
#输入以下内容:
dataDir=/opt/zookeeper/zookeeper-3.4.14/data
dataLogDir=/opt/zookeeper/zookeeper-3.4.14/logs
增加如下配置:
server.1=192.168.73.181:2888:3888
server.2=192.168.73.182:2888:3888
server.3=192.168.73.183:2888:3888
解读:
Server.A=B:C:D
A 是一个数字,表示这个是第几号服务器
B 是这个服务器的 ip 地址
C 是这个服务器与集群中的 Leader 服务器交换信息的端口
D 是万一集群中的 Leader 服务器挂了,需要一个端口来重新进行选举,选出一个新的Leader,而这个端口就是用来执行选举时服务器相互通信的端口
#退出并保存
先按ESC键,输入:wq!回车
- 集群模式下配置一个文件 myid,这个文件在 data目录下,这个文件里面有一个数据就是 A 的值,Zookeeper
启动时读取此文件,拿到里面的数据与 zoo.cfg 里面的配置信息比较从而判断到底是哪个 server
切换到data目录下,创建一个 myid 的文件
touch myid
文件中添加与 server 对应的编号:如 2
其他服务器同上操作
分别启动zookeeper
./zkServer.sh start
开启端口号
/sbin/iptables -I INPUT -p tcp --dport 2888 -j ACCEPT
/sbin/iptables -I INPUT -p tcp --dport 3888 -j ACCEPT
分别查看zookeeper集群状态
./zkServer.sh status
登录zookeeper客户端
./zkCli.sh
参考链接 :
zookeeper单机和集群搭建过程详细步骤:
https://mp.weixin.qq.com/s/F3NjmyjpSr4xJITGUbnbfg