[ Spring ] Install ZooKeeper on Ubuntu24

Install JDK

install a jdk into system dirs, so all users can visit

bash 复制代码
sudo apt install openjdk-17-jdk -y
bash 复制代码
java -version
Configure JAVA_HOME
bash 复制代码
sudo open /etc/profile

replace with you own path, pirnt by java command above

bash 复制代码
export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64
export PATH=$PATH:$JAVA_HOME/bin
bash 复制代码
source /etc/profile
Create ZooKeeper User
bash 复制代码
sudo adduser --system --no-create-home --group zookeeper
Set Home Directory for User
bash 复制代码
sudo mkdir /opt/zookeeper
sudo chown zookeeper:zookeeper /opt/zookeeper
Create Data Directory for ZooKeeper
bash 复制代码
sudo mkdir /var/lib/zookeeper
sudo chown zookeeper:zookeeper /var/lib/zookeeper
Download ZooKeeper Package
bash 复制代码
cd /tmp
wget https://downloads.apache.org/zookeeper/zookeeper-3.9.3/apache-zookeeper-3.9.3-bin.tar.gz
Extract ZooKeeper to Install Directory
bash 复制代码
sudo tar -xzf apache-zookeeper-3.9.3-bin.tar.gz -C /opt/zookeeper --strip-components=1
Configure Directory Permission
bash 复制代码
sudo chown -R zookeeper:zookeeper /opt/zookeeper
Verify Installation Files

this directory should contains folders like bin, conf, lib

bash 复制代码
ls -l /opt/zookeeper
Configure ZooKeeper
bash 复制代码
sudo cp /opt/zookeeper/conf/zoo_sample.cfg /opt/zookeeper/conf/zoo.cfg
bash 复制代码
sudo nano /opt/zookeeper/conf/zoo.cfg
bash 复制代码
tickTime=2000
dataDir=/var/lib/zookeeper
clientPort=2181
initLimit=5
syncLimit=2
maxClientCnxns=60
admin.enableServer=true
admin.serverPort=20001
Create System Service for ZooKeeper
bash 复制代码
sudo nano /etc/systemd/system/zookeeper.service
bash 复制代码
[Unit]
Description=Apache ZooKeeper service
Documentation=http://zookeeper.apache.org
Requires=network.target
After=network.target

[Service]
Type=forking
User=zookeeper
Group=zookeeper
ExecStart=/opt/zookeeper/bin/zkServer.sh start /opt/zookeeper/conf/zoo.cfg
ExecStop=/opt/zookeeper/bin/zkServer.sh stop
ExecReload=/opt/zookeeper/bin/zkServer.sh restart
WorkingDirectory=/opt/zookeeper

[Install]
WantedBy=multi-user.target
bash 复制代码
sudo systemctl enable zookeeper
bash 复制代码
sudo systemctl stop zookeeper
sudo systemctl start zookeeper
sudo systemctl status zookeeper
Test ZooKeeper Service

if successful, you will see a ZooKeeper command line prompt

bash 复制代码
/opt/zookeeper/bin/zkCli.sh -server 127.0.0.1:2181
bash 复制代码
ls /

also, you can launch the admin webpage

bash 复制代码
http://localhost:20001/commands
Check Startup Failure

if service start up failed, print log to get a check

bash 复制代码
journalctl -u zookeeper
相关推荐
麻瓜code32 分钟前
【Agent】Spring AI RAG 实战:本地向量库 + 云端知识库
java·人工智能·spring
水巷石子2 小时前
学习langChain4j的第二天,体验springBoot中的starter
java·spring boot·学习·spring·langchain4j
ly76892 小时前
Spring Bean生命周期全流程:从BeanDefinition到销毁
java·后端·spring·bean生命周期·beandefinition·初始化回调
计算机学姐3 小时前
基于SpringBoot的旅游系统的设计与实现
java·vue.js·spring boot·后端·spring·java-ee·旅游
大模型码小白3 小时前
【AI大模型】DeepSeek Harness 深度解析:大模型评测框架的架构与实践
java·运维·人工智能·spring·架构·自动化
苏渡苇4 小时前
Spring Insight 里上报 Span 为什么用 JDK HttpClient 而不是 RestTemplate
java·后端·spring·spring cloud·springboot·性能监控
卓怡学长4 小时前
w157基于springboot北部湾地区助农平台
java·spring boot·spring·maven·intellij-idea
步行cgn5 小时前
Spring Environment 详解:Spring Boot 配置管理的核心接口
spring boot·python·spring
Wang's Blog5 小时前
Java框架快速入门: Spring Security+OAuth2之工程结构与开发环境配置
java·spring·状态模式
步行cgn15 小时前
@Configuration 详解:Spring 配置类的核心注解
java·后端·spring