[ 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
相关推荐
添砖java_8571 小时前
网页聊天室测试报告
java·spring boot·spring·maven
xixingzhe22 小时前
Spring 依赖注入
java·后端·spring
闲猫11 小时前
Spring AI 对接Deepseek ChatModel 聊天对话
java·前端·spring
醇氧18 小时前
Spring 容器 Map 注入机制详解
java·后端·spring
ylscode19 小时前
Cloudflare Workers Cache 深度解析:边缘缓存如何重塑无服务器性能边界
java·spring·mybatis
沉静的小伙19 小时前
Spring事务
java·数据库·spring
Wang's Blog1 天前
Java框架快速入门: Spring Bean核心配置与实例化详解
java·开发语言·spring
爱敲代码的小鱼1 天前
springboot原理篇:
java·spring boot·spring
k↑1 天前
SpringCloud + React19 集成Scalar的API文档
后端·spring·spring cloud
名字还没想好☜1 天前
Spring Boot 全局异常处理:@ControllerAdvice 实战
java·spring boot·后端·spring·异常处理