当前位置: 首页 > news >正文

一键安装单节点 Zookeeper 3.8.5(附完整 Bash 脚本)

适用环境:CentOS / Ubuntu / 其他 Linux 发行版
用途:开发测试、学习 Zookeeper 基础使用


✅ 前提条件

  1. 以 root 用户运行(或具有 sudo 权限)
  2. 已安装完整 JDK(非 JRE),并正确配置JAVA_HOME环境变量
    • 需包含javajps命令(通常 JDK 才有jps

你可以通过以下命令验证:

echo$JAVA_HOME$JAVA_HOME/bin/java -version$JAVA_HOME/bin/jps -V

📥 自动安装脚本(支持断点续装)

将以下脚本保存为install_zookeeper.sh,然后执行:

#!/bin/bash# 自动安装单节点 Zookeeperset-eZOOKEEPER_VERSION="3.8.5"ZOOKEEPER_INSTALL_DIR="/opt/zookeeper"echo"=== Zookeeper$ZOOKEEPER_VERSION自动安装脚本 ==="# 检查是否为 root 用户if["$EUID"-ne0];thenecho"❌ 请以 root 用户运行此脚本。"exit1fi# 检查 JAVA_HOME 是否设置if[-z"$JAVA_HOME"];thenecho"❌ JAVA_HOME 未设置,请先设置完整 JDK 的 JAVA_HOME"exit1fi# 检查 bin 目录下是否有 java 和 jpsif[!-x"$JAVA_HOME/bin/java"]||[!-x"$JAVA_HOME/bin/jps"];thenecho"❌ JAVA_HOME 指向的目录不完整,缺少 java 或 jps,请使用完整 JDK"exit1fi# 安装依赖(如 wget 未安装)whichwget>/dev/null||{echo"正在安装 wget...";apt-getupdate&&apt-getinstall-ywget||yuminstall-ywget;}# 下载 Zookeeper 包(如不存在)if[!-f"/tmp/apache-zookeeper-$ZOOKEEPER_VERSION-bin.tar.gz"];thenecho">>> 下载 Zookeeper$ZOOKEEPER_VERSION..."wget-q https://downloads.apache.org/zookeeper/zookeeper-$ZOOKEEPER_VERSION/apache-zookeeper-$ZOOKEEPER_VERSION-bin.tar.gz -P /tmpelseecho">>> 已存在 /tmp/apache-zookeeper-$ZOOKEEPER_VERSION-bin.tar.gz,跳过下载。"fi# 检查是否已安装 Zookeeperif[-d"$ZOOKEEPER_INSTALL_DIR"]||[-d"/opt/apache-zookeeper-$ZOOKEEPER_VERSION-bin"];thenecho">>> 检测到 Zookeeper 目录已存在,跳过解压步骤。"elseecho">>> 解压 Zookeeper..."tar-zxf /tmp/apache-zookeeper-$ZOOKEEPER_VERSION-bin.tar.gz -C /opt/mv-f /opt/apache-zookeeper-$ZOOKEEPER_VERSION-bin$ZOOKEEPER_INSTALL_DIRfi# 创建数据目录mkdir-p$ZOOKEEPER_INSTALL_DIR/data# 创建默认单节点配置cat>$ZOOKEEPER_INSTALL_DIR/conf/zoo.cfg<<EOF tickTime=2000 dataDir=$ZOOKEEPER_INSTALL_DIR/data clientPort=2181 initLimit=5 syncLimit=2 admin.serverPort=8081 server.1=node1:2888:3888 EOF# 设置 myid(单节点必须)echo"1">$ZOOKEEPER_INSTALL_DIR/data/myid# 设置环境变量(可选但推荐)if!grep-q"ZOOKEEPER_HOME"/etc/profile;thenecho">>> 写入 /etc/profile 环境变量..."cat>>/etc/profile<<EOF # Zookeeper 环境变量 export ZOOKEEPER_HOME=$ZOOKEEPER_INSTALL_DIRexport PATH=\$PATH:\$ZOOKEEPER_HOME/bin EOFfi# 加载环境变量source/etc/profile# 测试 Zookeeper 可用性echo">>> 验证 Zookeeper 安装..."if[-x"$ZOOKEEPER_INSTALL_DIR/bin/zkServer.sh"];thenecho"✅ Zookeeper 安装成功!"echo"💡 启动命令:zkServer.sh start"echo"💡 查看状态:zkServer.sh status"echo"💡 停止命令:zkServer.sh stop"$ZOOKEEPER_INSTALL_DIR/bin/zkServer.sh status||trueelseecho"⚠️ Zookeeper 安装完成,但未找到启动脚本,请检查目录$ZOOKEEPER_INSTALL_DIR/bin"fiecho"=== Zookeeper$ZOOKEEPER_VERSION安装完成 ==="

▶️ 使用方法

chmod+x install_zookeeper.sh ./install_zookeeper.sh

💡 脚本特点:

  • 自动跳过已下载的安装包
  • 若已安装则跳过解压
  • 自动创建myid文件(单节点必须!)
  • 自动配置zoo.cfg
  • 自动写入全局环境变量

🔧 启动与验证

安装完成后,你可以直接使用以下命令:

# 启动zkServer.sh start# 查看状态zkServer.sh status# 停止zkServer.sh stop

预期输出(首次启动后):

ZooKeeper JMX enabled by default Using config: /opt/zookeeper/bin/../conf/zoo.cfg Client port found: 2181. Client address: localhost. Mode: standalone

Mode: standalone表示单节点模式运行成功!


📌 注意事项

  • 单节点仅用于开发测试,生产环境请部署集群(至少 3 节点)。
  • 如果防火墙开启,请放行端口:2181(客户端)、2888/3888(集群通信,单节点可忽略)、8081(Admin Server)。
  • 若需关闭 Admin Server(减少端口暴露),取消注释配置中的#admin.enableServer=false

📚 参考资料

  • Apache Zookeeper 官网
  • Zookeeper 3.8.5 Release Notes

👍 觉得有用?欢迎点赞、收藏、关注!
如有疑问,欢迎在评论区留言交流~

http://www.cnnetsun.cn/news/818196.html

相关文章:

  • Z-Image-Turbo图像命名规范:便于检索的历史记录管理
  • 全网最全网络安全入门指南(2026版),零基础从入门到精通,看这一篇就够了!_网络安全指南
  • Face Fusion模型光线适应性分析:暗光与过曝场景优化策略
  • 手机变身U盘读卡器:OTG使用入门实战案例
  • 工业质检新方案:用YOLOE镜像打造实时检测系统
  • AI绘画提速神器!Z-Image-Turbo 8步出图实测分享
  • 手机截图去广告实战,fft npainting lama轻松搞定
  • 基于aarch64的云原生部署:完整指南与实践
  • 热词最多输10个?专业术语优先级这样排
  • 基于STC89C52的蜂鸣器驱动完整指南(初学者适用)
  • 保姆级教程:Open-AutoGLM手机Agent从0到1实战
  • 阿里通义实验室新作:Z-Image-Turbo到底强在哪?
  • 语言学习新方法:口语练习录音自动纠错与分析
  • Llama3与Qwen-Image-2512对比评测:多模态生成能力实战分析
  • 5分钟上手人像卡通化,科哥镜像让AI漫画变身超简单
  • 工业控制方向vivado安装教程2018新手教程
  • 一句话指令就能改图?Qwen-Image-Edit-2511操作逻辑揭秘
  • 教学演示素材:老师也能做的生动课件配图
  • 基于vivado许可证的团队共享环境搭建操作指南
  • Llama3与cv_resnet18_ocr-detection对比:多模态场景应用实战分析
  • Kintex系列FPGA的BRAM架构特点完整指南
  • 2025年12月NPDP考试成绩已出,才聚通过率再创新高!
  • 在家就能玩的AI实验,Face Fusion镜像使用全记录
  • 树莓派换源教学设计:零基础学生也能掌握
  • 实测分享:YOLO11在边缘设备上的运行效果
  • Open-AutoGLM连接失败怎么办?这些技巧帮你解决
  • 机器人视觉集成:YOLO11快速接入
  • 法律访谈语音转写:定制热词提升关键信息识别
  • Qwen3-0.6B进阶玩法:结合LangChain构建AI代理
  • Glyph视觉推理真实案例:法律合同秒变可视化报告