温馨提示×

centos怎么搭建zookeeper环境

小樊
47
2026-10-03 11:10:41
栏目: 智能运维

下面以 CentOS 7/8 为例,一步步说明如何搭建 ZooKeeper 单机环境(也包含伪集群/集群要点)。


一、环境准备

1. 安装 JDK(ZooKeeper 依赖 Java)

# 查看是否已安装
java -version

# 如果没有,安装 OpenJDK
yum install -y java-1.8.0-openjdk-devel

确认:

java -version

二、下载并安装 ZooKeeper

1. 创建目录

mkdir -p /opt/zookeeper
cd /opt/zookeeper

2. 下载 ZooKeeper

wget https://archive.apache.org/dist/zookeeper/zookeeper-3.7.1/apache-zookeeper-3.7.1-bin.tar.gz

可根据需要替换版本

3. 解压

tar -zxvf apache-zookeeper-3.7.1-bin.tar.gz
mv apache-zookeeper-3.7.1-bin zookeeper

三、配置 ZooKeeper

1. 创建数据目录

mkdir -p /opt/zookeeper/data

2. 修改配置文件

cd /opt/zookeeper/zookeeper/conf
cp zoo_sample.cfg zoo.cfg
vi zoo.cfg

核心配置示例:

tickTime=2000
initLimit=10
syncLimit=5
dataDir=/opt/zookeeper/data
clientPort=2181

保存退出。


四、启动 ZooKeeper

1. 启动

/opt/zookeeper/zookeeper/bin/zkServer.sh start

2. 查看状态

/opt/zookeeper/zookeeper/bin/zkServer.sh status

3. 连接测试

/opt/zookeeper/zookeeper/bin/zkCli.sh -server 127.0.0.1:2181

五、设置开机自启(Systemd)

1. 创建服务文件

vi /etc/systemd/system/zookeeper.service

内容:

[Unit]
Description=ZooKeeper
After=network.target

[Service]
Type=forking
ExecStart=/opt/zookeeper/zookeeper/bin/zkServer.sh start
ExecStop=/opt/zookeeper/zookeeper/bin/zkServer.sh stop
User=root

[Install]
WantedBy=multi-user.target

2. 生效并启动

systemctl daemon-reload
systemctl enable zookeeper
systemctl start zookeeper

六、伪集群(单台机器多实例,可选)

1. 配置多个 zoo.cfg

zoo1.cfg
zoo2.cfg
zoo3.cfg

2. 每个配置加:

server.1=127.0.0.1:2888:3888
server.2=127.0.0.1:2889:3889
server.3=127.0.0.1:2890:3890

并在各自 dataDir 中创建 myid 文件:

echo 1 > /opt/zookeeper/data1/myid
echo 2 > /opt/zookeeper/data2/myid
echo 3 > /opt/zookeeper/data3/myid

七、防火墙(如开启)

firewall-cmd --add-port=2181/tcp --permanent
firewall-cmd --reload

八、常见问题

  • 启动失败:检查 dataDir 权限
  • 端口占用:修改 clientPort
  • Java 未找到:确认 JDK 安装并配置 JAVA_HOME

如果你需要 CentOS + Docker 方式 或 生产级集群配置,可以继续问我。

0 踩