阿里云CentOS7安装ZooKeeper单机模式

前提条件

阿里云CentOS7安装好jdk,可参 hadoop安装 的jdk安装部分

下载

复制代码
[hadoop@node1 ~]$ cd softinstall
[hadoop@node1 softinstall]$ wget https://archive.apache.org/dist/zookeeper/zookeeper-3.7.1/apache-zookeeper-3.7.1-bin.tar.gz

解压

复制代码
[hadoop@node1 softinstall]$ ls
apache-zookeeper-3.7.1-bin.tar.gz  hadoop-3.3.4.tar.gz  jdk-8u271-linux-x64.tar.gz
[hadoop@node1 softinstall]$ tar -zxvf apache-zookeeper-3.7.1-bin.tar.gz -C ~/soft

查看解压后的文件

复制代码
[hadoop@node1 softinstall]$ cd ~/soft
[hadoop@node1 soft]$ ls
apache-zookeeper-3.7.1-bin  hadoop-3.3.4  jdk1.8.0_271
​

配置环境变量

复制代码
[hadoop@node1 soft]$ sudo nano /etc/profile.d/my_env.sh

末尾添加如下内容

复制代码
export ZOOKEEPER_HOME=/home/hadoop/soft/apache-zookeeper-3.7.1-bin
export PATH=$PATH:$ZOOKEEPER_HOME/bin

让配置生效

复制代码
source /etc/profile

配置ZooKeeper

复制代码
[hadoop@node1 soft]$ cd $ZOOKEEPER_HOME/conf
[hadoop@node1 conf]$ ls
configuration.xsl  log4j.properties  zoo_sample.cfg
[hadoop@node1 conf]$ mv zoo_sample.cfg zoo.cfg
[hadoop@node1 conf]$ nano zoo.cfg 

修改dataDir的值如下

复制代码
dataDir=/home/hadoop/soft/apache-zookeeper-3.7.1-bin/zkData

启动ZooKeeper服务

复制代码
[hadoop@node1 conf]$ zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /home/hadoop/soft/apache-zookeeper-3.7.1-bin/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
​

看到Starting zookeeper ... STARTED输出,说明启动成功

查看进程

复制代码
[hadoop@node1 conf]$ jps
20178 Jps
18391 QuorumPeerMain

QuorumPeerMain进程是ZooKeeper服务端的进程。

查看状态

复制代码
[hadoop@node1 conf]$ zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /home/hadoop/soft/apache-zookeeper-3.7.1-bin/bin/../conf/zoo.cfg
Client port found: 2181. Client address: localhost. Client SSL: false.
Mode: standalone

看到Mode为standalone(单机)模式。

ZooKeeper命令行的简单操作

进入客户端

复制代码
[hadoop@node1 conf]$ zkCli.sh 

看到部分输出信息如下

复制代码
2024-03-28 21:17:48,132 [myid:] - INFO  [main:ClientCnxn@1735] - zookeeper.request.timeout value is 0. feature enabled=false
Welcome to ZooKeeper!
2024-03-28 21:17:48,166 [myid:localhost:2181] - INFO  [main-SendThread(localhost:2181):ClientCnxn$SendThread@1171] - Opening socket connection to server localhost/127.0.0.1:2181.
2024-03-28 21:17:48,167 [myid:localhost:2181] - INFO  [main-SendThread(localhost:2181):ClientCnxn$SendThread@1173] - SASL config status: Will not attempt to authenticate using SASL (unknown error)
JLine support is enabled
2024-03-28 21:17:48,203 [myid:localhost:2181] - INFO  [main-SendThread(localhost:2181):ClientCnxn$SendThread@1005] - Socket connection established, initiating session, client: /127.0.0.1:52730, server: localhost/127.0.0.1:2181
2024-03-28 21:17:48,287 [myid:localhost:2181] - INFO  [main-SendThread(localhost:2181):ClientCnxn$SendThread@1446] - Session establishment complete on server localhost/127.0.0.1:2181, session id = 0x10005db0b280000, negotiated timeout = 30000
​
WATCHER::
​
WatchedEvent state:SyncConnected type:None path:null
[zk: localhost:2181(CONNECTED) 0]

查看帮助

复制代码
[zk: localhost:2181(CONNECTED) 0] help
ZooKeeper -server host:port -client-configuration properties-file cmd args
    addWatch [-m mode] path # optional mode is one of [PERSISTENT, PERSISTENT_RECURSIVE] - default is PERSISTENT_RECURSIVE
    addauth scheme auth
    close 
    config [-c] [-w] [-s]
    connect host:port
    create [-s] [-e] [-c] [-t ttl] path [data] [acl]
    delete [-v version] path
    deleteall path [-b batch size]
    delquota [-n|-b|-N|-B] path
    get [-s] [-w] path
    getAcl [-s] path
    getAllChildrenNumber path
    getEphemerals path
    history 
    listquota path
    ls [-s] [-w] [-R] path
    printwatches on|off
    quit 
    reconfig [-s] [-v version] [[-file path] | [-members serverID=host:port1:port2;port3[,...]*]] | [-add serverId=host:port1:port2;port3[,...]]* [-remove serverId[,...]*]
    redo cmdno
    removewatches path [-c|-d|-a] [-l]
    set [-s] [-v version] path data
    setAcl [-s] [-v version] [-R] path acl
    setquota -n|-b|-N|-B val path
    stat [-w] path
    sync path
    version 
    whoami 
Command not found: Command not found help

退出客户端

复制代码
[zk: localhost:2181(CONNECTED) 1] quit
​
WATCHER::
​
WatchedEvent state:Closed type:None path:null
2024-03-28 21:18:00,150 [myid:] - INFO  [main:ZooKeeper@1288] - Session: 0x10005db0b280000 closed
2024-03-28 21:18:00,151 [myid:] - INFO  [main-EventThread:ClientCnxn$EventThread@568] - EventThread shut down for session: 0x10005db0b280000
2024-03-28 21:18:00,154 [myid:] - ERROR [main:ServiceUtils@48] - Exiting JVM with code 127

关闭ZooKeeper服务端

复制代码
[hadoop@node1 conf]$ zkServer.sh stop
ZooKeeper JMX enabled by default
Using config: /home/hadoop/soft/apache-zookeeper-3.7.1-bin/bin/../conf/zoo.cfg
Stopping zookeeper ... STOPPED
​

查看进程

复制代码
[hadoop@node1 conf]$ jps
20493 Jps

发现ZooKeeper服务端进程已关闭。

完成!enjoy it!

相关推荐
叫致寒吧4 小时前
zookeeper与kafka
分布式·zookeeper·云原生
hanyi_qwe5 小时前
ZooKeeper+Kafka
分布式·zookeeper·kafka
2501_939909055 小时前
Zookeeper及Kafka
分布式·zookeeper·云原生
回忆是昨天里的海7 小时前
记录线上k8s拉取不了阿里云镜像的一次临时处理
阿里云·容器·kubernetes
阿里云云原生7 小时前
AgentRun Sandbox SDK 正式开源!集成 LangChain 等主流框架,一键开启智能体沙箱新体验
阿里云·langchain·开源·serverless·agentarun
富士康质检员张全蛋1 天前
zookeeper 常用命令之zkCli
zookeeper
TsengOnce1 天前
阿里云ECS多版本JDK切换
java·python·阿里云
咕噜企业分发小米1 天前
腾讯云和阿里云哪个更适合教育行业?
阿里云·云计算·腾讯云
yumgpkpm1 天前
(简略)AI 大模型 手机的“简单替换陷阱”与Hadoop、Cloudera CDP 7大数据底座的关系探析
人工智能·hive·zookeeper·flink·spark·kafka·开源