在CentOS上配置Zookeeper的步骤如下:
-
安装Java环境: Zookeeper需要Java环境才能运行,建议在CentOS上安装OpenJDK 8或更高版本。可以通过以下命令安装:
sudo yum install java-1.8.0-openjdk-devel
-
下载并解压Zookeeper: 从Apache Zookeeper的官方网站下载所需版本的Zookeeper压缩包,然后解压到指定目录。例如,下载zookeeper-3.4.14版本:
wget https://archive.apache.org/dist/zookeeper/zookeeper-3.4.14/zookeeper-3.4.14.tar.gz tar -zxvf zookeeper-3.4.14.tar.gz -C /usr/local/
-
配置Zookeeper:
- 进入解压后的Zookeeper目录,复制并修改zoo_sample.cfg配置文件为zoo.cfg。主要需要修改的配置项包括:
dataDir
:数据目录clientPort
:客户端连接端口tickTime
:Zookeeper的基本时间单位(以毫秒为单位)initLimit
:初始化连接时最长能忍受的心跳时间间隔数syncLimit
:Leader与Follower之间发送消息、请求和应答时间长度
- 示例配置:
tickTime=2000 dataDir=/usr/local/zookeeper/data clientPort=2181 initLimit=10 syncLimit=5
- 设置集群节点信息(如果配置集群):
server.1=192.168.0.11:2888:3888 server.2=192.168.0.12:2888:3888 server.3=192.168.0.13:2888:3888
- 进入解压后的Zookeeper目录,复制并修改zoo_sample.cfg配置文件为zoo.cfg。主要需要修改的配置项包括:
-
创建myid文件: 在每台服务器的
data
目录下创建一个名为myid
的文件,文件内容为本机的编号(例如:1、2、3)。 -
设置开机启动:
- 创建并编辑zookeeper.service文件:
sudo vi /etc/systemd/system/zookeeper.service
- 添加以下内容:
[Unit] Description=Zookeeper After=network.target [Service] Type=forking ExecStart=/usr/local/zookeeper/bin/zkServer.sh start ExecStop=/usr/local/zookeeper/bin/zkServer.sh stop PrivateTmp=true Environment=JAVA_HOME=/usr/local/java/jdk1.8.0_202 User=root Group=root PIDFile=/usr/local/zookeeper/data/zookeeper.pid Restart=always [Install] WantedBy=multi-user.target
- 添加可执行权限并注册为系统服务:
sudo chmod +x /etc/systemd/system/zookeeper.service sudo chkconfig --add zookeeper sudo chkconfig zookeeper on
- 创建并编辑zookeeper.service文件:
-
启动和验证Zookeeper:
- 启动Zookeeper服务:
sudo systemctl start zookeeper
- 验证Zookeeper状态:
sudo systemctl status zookeeper
或使用:/usr/local/zookeeper/bin/zkServer.sh status
- 启动Zookeeper服务: