在CentOS上配置Zookeeper的步骤如下:
1. 环境准备
- 安装Java环境。Zookeeper需要Java运行环境(JRE)或Java开发工具包(JDK)才能运行。建议在CentOS上安装OpenJDK 8或更高版本。
sudo yum install java-1.8.0-openjdk-devel
- 下载并解压Zookeeper。从Apache Zookeeper的官方网站下载所需版本的Zookeeper压缩包,然后解压到指定目录。
wget http://mirrors.hust.edu.cn/apache/zookeeper/zookeeper-3.5.2-alpha/zookeeper-3.5.2-alpha.tar.gz tar -zxvf zookeeper-3.5.2-alpha.tar.gz -C /usr/local/
2. 创建数据和日志目录
mkdir -p /usr/local/zookeeper/data mkdir -p /usr/local/zookeeper/logs
3. 修改配置文件
- 进入解压后的Zookeeper目录,复制并修改
zoo_sample.cfg
配置文件为zoo.cfg
。cp /usr/local/zookeeper/conf/zoo_sample.cfg /usr/local/zookeeper/conf/zoo.cfg vi /usr/local/zookeeper/conf/zoo.cfg
- 修改主要配置项,例如
dataDir
(数据目录)、clientPort
(客户端连接端口)等。dataDir=/usr/local/zookeeper/data clientPort=2181
4. 创建myid文件
在data
目录下创建myid
文件,内容为本机的唯一标识(通常是1)。
echo "1" > /usr/local/zookeeper/data/myid
5. 设置开机启动
- 新建并编辑
zookeeper.service
文件。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 [Install] WantedBy=multi-user.target
- 设置开机自启:
systemctl daemon-reload systemctl enable zookeeper systemctl start zookeeper
6. 启动和验证Zookeeper
- 启动Zookeeper服务:
/usr/local/zookeeper/bin/zkServer.sh start
- 查看Zookeeper状态:
/usr/local/zookeeper/bin/zkServer.sh status
以上步骤是在CentOS上配置Zookeeper的基本流程。如果是集群模式,还需要配置多个节点,并确保每个节点的myid
文件和配置文件正确。