Ubuntu离线手动部署zookeeper集群,分别在三台服务器上,例如:

10.10.10.129
10.10.10.130
10.10.10.131

首先下载zookeeper压缩包,我用的版本是:

apache-zookeeper-3.7.2-bin.tar.gz

步骤1:配置zookeeper:

进入zookeeper的解压目录,复制一份默认的配置文件:

cd /path/to/zookeeper
cp conf/zoo_sample.cfg conf/zoo.cfg

编辑zoo.cfg配置文件:

vi zoo.cfg

确保以下配置项设置正确:

tickTime=2000
initLimit=10
syncLimit=5
dataDir=/path/to/data
clientPort=2181

其中,/path/to/data 是zookeeper存储数据的目录。

在每台服务器上创建数据目录:

mkdir -p /path/to/data
步骤2:配置集群节点:

在每台服务器上,编辑zoo.cfg,添加如下配置:

server.1=10.10.10.129:2888:3888
server.2=10.10.10.130:2888:3888
server.3=10.10.10.131:2888:3888
步骤3:创建myid文件:

在每台服务器上,确保在zookeeper数据目录(例如:/path/to/data)下创建一个myid文件。myid文件应该包含该节点在集群中的唯一ID:

#第1台:
echo "1" > /path/to/data/myid
#第2台:
echo "2" > /path/to/data/myid
#第3台:
echo "3" > /path/to/data/myid
步骤4:启动zookeeper:

在每台服务器上执行以下命令启动zookeeper:

#bin目录下:
./zkServer.sh start
步骤5:验证集群状态:

在任意一台服务器上执行以下命令:

bin/zkServer.sh status

你应该看到类似以下输出:

Mode: follower

这表示zookeeper节点已经成功启动并且处于follower模式。在其他服务器上也执行相同的命令,确保它们都显示正常。

PS:leader负责处理写操作,而follower则复制leader的数据并处理读请求。

常用指令:

检查服务是否被占用:

netstat -tulnp | grep 2181

确认zookeeper进程是否在运行:

ps aux | grep zookeeper

检查防火墙:

sudo ufw status

关闭防火墙:

sudo ufw disable

启动防火墙:

sudo ufw enable

重启zookeeper:

#bin目录下:
./zkServer.sh restart
最后修改:2024 年 01 月 25 日
给我一点小钱钱也很高兴啦!o(* ̄▽ ̄*)ブ