在CentOS系统上安装和配置Zookeeper的步骤如下:
1. 安装Java环境
Zookeeper需要Java环境才能运行,因此首先需要安装Java。可以通过以下命令在CentOS上安装OpenJDK:
sudo yum install java-1.8.0-openjdk-devel
2. 下载并解压Zookeeper
从Apache Zookeeper的官方网站下载所需版本的Zookeeper压缩包,然后解压到指定目录。例如,下载zookeeper-3.5.9版本:
wget https://archive.apache.org/dist/zookeeper/zookeeper-3.5.9/apache-zookeeper-3.5.9-bin.tar.gz tar -zxvf apache-zookeeper-3.5.9-bin.tar.gz -C /usr/local/
3. 配置Zookeeper
进入解压后的Zookeeper目录,复制并修改zoo_sample.cfg
配置文件为zoo.cfg
。主要需要修改的配置项包括:
dataDir
:数据目录clientPort
:客户端连接端口tickTime
:Zookeeper的基本时间单位(以毫秒为单位)initLimit
:初始通信时限syncLimit
:同步通信时限
例如:
cp /usr/local/zookeeper-3.5.9/conf/zoo_sample.cfg /usr/local/zookeeper-3.5.9/conf/zoo.cfg vi /usr/local/zookeeper-3.5.9/conf/zoo.cfg
配置示例:
tickTime=2000 dataDir=/usr/local/zookeeper-3.5.9/data clientPort=2181 initLimit=10 syncLimit=5
4. 创建myid文件
在每台Zookeeper服务器的dataDir
路径下创建一个文件叫做myid
,每台服务器对应service几,就在myid
文件中写数字几。
例如,在/usr/local/zookeeper-3.5.9/data
目录下创建myid
文件并写入节点ID:
echo "1" > /usr/local/zookeeper-3.5.9/data/myid
5. 配置环境变量
编辑/etc/profile
文件,添加Zookeeper的环境变量:
vi /etc/profile
添加以下内容:
export ZOOKEEPER_HOME=/usr/local/zookeeper-3.5.9 export PATH=$PATH:$ZOOKEEPER_HOME/bin
使更改生效:
source /etc/profile
6. 设置开机启动
为了确保Zookeeper服务在系统启动时自动运行,需要将其添加到系统服务并设置开机自启。可以通过创建并编辑zookeeper.service
文件来实现:
vi /etc/systemd/system/zookeeper.service
添加以下内容:
[Unit] Description=Apache Zookeeper After=network.target [Service] Type=forking ExecStart=/usr/local/zookeeper-3.5.9/bin/zkServer.sh start ExecStop=/usr/local/zookeeper-3.5.9/bin/zkServer.sh stop PrivateTmp=true Environment=JAVA_HOME=/usr/local/java/jdk1.8.0_202 User=root Group=root PIDFile=/usr/local/zookeeper-3.5.9/data/zookeeper.pid Restart=always [Install] WantedBy=multi-user.target
使服务自启:
systemctl daemon-reload systemctl enable zookeeper systemctl start zookeeper
7. 验证安装
启动成功后,可以使用以下命令检查Zookeeper的状态:
/usr/local/zookeeper-3.5.9/bin/zkServer.sh status
以上步骤应该能够在CentOS系统上成功安装并运行Zookeeper。如果在安装过程中遇到问题,建议查阅Zookeeper的官方文档或寻求社区的帮助。