阿里云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!

相关推荐
运维&陈同学3 小时前
【zookeeper01】消息队列与微服务之zookeeper工作原理
运维·分布式·微服务·zookeeper·云原生·架构·消息队列
小曲曲6 小时前
接口上传视频和oss直传视频到阿里云组件
javascript·阿里云·音视频
为什么每天的风都这么大12 小时前
Vscode/Code-server无网环境安装通义灵码
ide·vscode·阿里云·编辑器·ai编程·code-server
谭震鸿14 小时前
Zookeeper集群搭建Centos环境下
分布式·zookeeper·centos
007php00715 小时前
GoZero 上传文件File到阿里云 OSS 报错及优化方案
服务器·开发语言·数据库·python·阿里云·架构·golang
hotlinhao2 天前
阿里云IIS虚拟主机部署ssl证书
阿里云·云计算·ssl
daizikui2 天前
docker使用阿里云容器镜像服务下载公共镜像
阿里云·docker·容器
天草二十六_简村人2 天前
Java语言编程,通过阿里云mongo数据库监控实现数据库的连接池优化
java·jvm·数据库·mongodb·阿里云·微服务·云计算
tundra382 天前
DTH11传感器温度湿度+esp8266+阿里云+小程序
阿里云·小程序·云计算
求积分不加C2 天前
zookeeper is not a recognized option--解决方案
分布式·zookeeper·云原生