在Ubuntu上部署Zookeeper的步骤是什么
导读:在Ubuntu上部署Zookeeper的步骤(以单机模式为例,集群模式需额外配置) 1. 准备工作 确保Ubuntu系统已联网,具备sudo权限; 推荐使用Ubuntu 20.04及以上版本(兼容性更好)。 2. 安装Java运行环境(...
在Ubuntu上部署Zookeeper的步骤(以单机模式为例,集群模式需额外配置)
1. 准备工作
- 确保Ubuntu系统已联网,具备
sudo
权限; - 推荐使用Ubuntu 20.04及以上版本(兼容性更好)。
2. 安装Java运行环境(JDK)
Zookeeper依赖Java环境,需先安装OpenJDK(推荐11及以上版本):
sudo apt update
sudo apt install -y openjdk-11-jdk
验证Java安装是否成功:
java -version
输出应包含Java版本信息(如openjdk 11.0.xx
),否则需检查安装过程。
3. 下载并解压Zookeeper
从Apache官方镜像下载最新稳定版Zookeeper(如3.7.0),并解压至/opt
目录(系统软件常用路径):
wget https://downloads.apache.org/zookeeper/zookeeper-3.7.0/apache-zookeeper-3.7.0-bin.tar.gz
sudo tar -xzvf apache-zookeeper-3.7.0-bin.tar.gz -C /opt
为简化后续命令,可创建符号链接:
sudo ln -s /opt/apache-zookeeper-3.7.0-bin /opt/zookeeper
4. 配置Zookeeper
- 进入Zookeeper配置目录,复制示例配置文件并重命名为
zoo.cfg
(核心配置文件):cd /opt/zookeeper/conf sudo cp zoo_sample.cfg zoo.cfg
- 编辑
zoo.cfg
,修改关键参数(以单机模式为例):
修改以下内容(重点关注sudo nano zoo.cfg
dataDir
和clientPort
):
保存并退出(tickTime=2000 # Zookeeper基本时间单位(毫秒) dataDir=/opt/zookeeper/data # 数据存储目录(需自定义) clientPort=2181 # 客户端连接端口(默认2181) initLimit=5 # Leader选举超时时间(单位:tickTime) syncLimit=2 # Leader与Follower同步超时时间(单位:tickTime)
Ctrl+O
→Enter
→Ctrl+X
)。
5. 创建数据目录
根据zoo.cfg
中的dataDir
路径,创建数据存储目录及日志目录(可选):
sudo mkdir -p /opt/zookeeper/data
sudo chown -R $USER:$USER /opt/zookeeper # 修改目录所有者(避免权限问题)
6. 配置环境变量(可选但推荐)
为方便全局使用Zookeeper命令,将Zookeeper路径添加至系统环境变量:
echo 'export ZOOKEEPER_HOME=/opt/zookeeper' >
>
~/.bashrc
echo 'export PATH=$PATH:$ZOOKEEPER_HOME/bin' >
>
~/.bashrc
source ~/.bashrc # 使配置立即生效
7. 启动Zookeeper服务
进入Zookeeper的bin
目录,执行启动脚本:
cd /opt/zookeeper/bin
./zkServer.sh start
若需后台运行,可添加&
参数:
./zkServer.sh start &
8. 验证Zookeeper状态
- 检查进程是否运行:
jps # 应输出"QuorumPeerMain"(Zookeeper主进程)
- 查看服务状态:
正常输出应包含./zkServer.sh status
Mode: standalone
(单机模式)或Mode: leader/follower
(集群模式)。
9. 测试Zookeeper连接
使用Zookeeper自带的命令行客户端连接服务端:
./zkCli.sh -server localhost:2181
连接成功后,输入ls /
命令,应输出[zookeeper]
(根节点),表示连接正常。
10. 设置开机自启动(可选)
若需Zookeeper随系统启动,可配置systemd服务:
sudo nano /etc/systemd/system/zookeeper.service
添加以下内容(根据实际路径调整):
[Unit]
Description=Apache ZooKeeper Server
After=network.target
[Service]
Type=simple
User=$USER
ExecStart=/opt/zookeeper/bin/zkServer.sh start
ExecStop=/opt/zookeeper/bin/zkServer.sh stop
Restart=on-abort
[Install]
WantedBy=multi-user.target
保存后,执行以下命令启用并启动服务:
sudo systemctl daemon-reload
sudo systemctl enable zookeeper
sudo systemctl start zookeeper
验证开机自启动状态:
sudo systemctl status zookeeper
注意事项
- 若部署集群模式,需在
zoo.cfg
中添加集群节点信息(server.X=host:2888:3888
),并在每个节点的dataDir
下创建myid
文件(内容为节点ID,如1
、2
); - 防火墙需开放
2181
(客户端连接)、2888
(Leader选举)、3888
(数据同步)端口; - 生产环境中建议使用
nohup
或systemd
实现后台运行,并配置日志轮转。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: 在Ubuntu上部署Zookeeper的步骤是什么
本文地址: https://pptw.com/jishu/733122.html