在centos系统上部署zookeeper集群,需要完成Java环境安装、zookeeper下载解压、配置以及设置开机启动等步骤。以下为详细步骤:
准备工作
sudo yum install java-1.8.0-openjdk-devel
- 下载并解压ZooKeeper: 从apache ZooKeeper官方网站下载所需版本,例如zookeeper-3.4.14,并解压到指定目录(例如/usr/local/):
wget http://mirrors.shu.edu.cn/apache/zookeeper/zookeeper-3.4.14/zookeeper-3.4.14.tar.gz tar -zxvf zookeeper-3.4.14.tar.gz -C /usr/local/
配置ZooKeeper
- 创建数据和日志目录:
mkdir -p /usr/local/zookeeper/data mkdir -p /usr/local/zookeeper/log
- 修改配置文件: 复制zoo_sample.cfg并重命名为zoo.cfg。关键配置项包括dataDir(数据目录)、clientPort(客户端端口)以及集群节点信息(server.N)。 集群配置示例:
tickTime=2000 dataDir=/usr/local/zookeeper/data clientPort=2181 initLimit=10 syncLimit=5 server.1=192.168.0.1:2888:3888 server.2=192.168.0.2:2888:3888 server.3=192.168.0.3:2888:3888
- 创建myid文件: 在每个节点的data目录下创建myid文件,内容为该节点的编号(例如,节点1的myid文件内容为1)。
设置开机自动启动
将ZooKeeper注册为系统服务,实现开机自动启动。
- 创建并编辑zookeeper.service文件:
sudo vi /etc/systemd/system/zookeeper.service
添加以下内容:
[Unit] Description=Apache ZooKeeper After=network.target [Service] Type=forking User=root Group=root PIDFile=/usr/local/zookeeper/data/zookeeper.pid ExecStart=/usr/local/zookeeper/bin/zkServer.sh start ExecStop=/usr/local/zookeeper/bin/zkServer.sh stop PrivateTmp=true Environment=JAVA_HOME=/usr/lib/jvm/java-8-openjdk Restart=always [Install] WantedBy=multi-user.target
- 启动并启用ZooKeeper服务:
sudo systemctl daemon-reload sudo systemctl start zookeeper sudo systemctl enable zookeeper
启动和验证
启动ZooKeeper并检查状态:
/usr/local/zookeeper/bin/zkServer.sh start /usr/local/zookeeper/bin/zkServer.sh status
完成以上步骤后,ZooKeeper集群应该在centos系统上成功部署并运行。 请根据实际IP地址修改配置文件中的服务器地址。