在CentOS上部署ZooKeeper的步骤如下:
确保系统更新:
sudo yum update -y 安装Java环境(ZooKeeper需要Java运行时环境):
sudo yum install java-1.8.0-openjdk-devel -y 验证Java安装:
java -version 下载ZooKeeper: 访问ZooKeeper官方网站下载最新版本的ZooKeeper压缩包。例如,下载3.7.0版本:
wget https://archive.apache.org/dist/zookeeper/zookeeper-3.7.0/apache-zookeeper-3.7.0-bin.tar.gz 解压压缩包:
tar -xzvf apache-zookeeper-3.7.0-bin.tar.gz -C /opt 重命名目录(可选):
sudo mv /opt/apache-zookeeper-3.7.0-bin /opt/zookeeper 进入配置目录:
cd /opt/zookeeper/conf 复制示例配置文件:
cp zoo_sample.cfg zoo.cfg 编辑配置文件: 使用文本编辑器(如vi或nano)打开zoo.cfg文件:
sudo vi zoo.cfg 修改以下配置项:
dataDir:指定数据存储目录,例如/var/lib/zookeeper。clientPort:指定客户端连接端口,默认是2181。server:配置集群中的服务器节点,例如:server.1=zoo1:2888:3888 server.2=zoo2:2888:3888 server.3=zoo3:2888:3888 其中zoo1, zoo2, zoo3是服务器的主机名或IP地址。创建数据目录:
sudo mkdir -p /var/lib/zookeeper 设置权限:
sudo chown -R $(whoami):$(whoami) /var/lib/zookeeper sudo chmod -R 755 /var/lib/zookeeper 进入ZooKeeper目录:
cd /opt/zookeeper/bin 启动ZooKeeper:
./zkServer.sh start 检查ZooKeeper状态:
./zkServer.sh status 如果一切正常,你应该会看到类似以下的输出:
ZooKeeper JMX enabled by default Using config: /opt/zookeeper/conf/zoo.cfg Mode: Leader 创建systemd服务文件:
sudo vi /etc/systemd/system/zookeeper.service 添加以下内容:
[Unit] Description=Apache ZooKeeper Server After=network.target [Service] Type=forking User=$(whoami) Group=$(whoami) ExecStart=/opt/zookeeper/bin/zkServer.sh start ExecStop=/opt/zookeeper/bin/zkServer.sh stop Restart=on-abort [Install] WantedBy=multi-user.target 启用并启动服务:
sudo systemctl enable zookeeper sudo systemctl start zookeeper 检查服务状态:
sudo systemctl status zookeeper 通过以上步骤,你应该能够在CentOS上成功部署ZooKeeper。如果有任何问题,请检查日志文件/var/log/zookeeper/zookeeper.out以获取更多信息。