shoufeng

瘦风的南墙

ZooKeeper 02 - CentOS 7 中搭建 ZooKeeper 单机环境

首发于 2021-12-05,修改于 2021-12-12。

若要部署 ZooKeeper 集群环境,请查看此篇:https://www.cnblogs.com/shoufeng/p/10591526.html

1 - 准备安装包

ZooKeeper下载地址:https://archive.apache.org/dist/zookeeper,这里下载 3.5.8 版本的安装包。

下载之后,上传至服务器,这里上传到 /data/ 下。

[root@onepiece /data]# ll
-rw-r--r--  1 root  root  9394700 Dec  5 22:52 apache-zookeeper-3.5.8-bin.tar.gz

解压并修改文件目录,便于访问:

tar -xf apache-zookeeper-3.5.8-bin.tar.gz 

mv apache-zookeeper-3.5.8-bin zookeeper-3.5.8

# 查看下:
[root@onepiece /data]# ll
-rw-r--r--  1 root  root  9394700 Dec  5 22:52 apache-zookeeper-3.5.8-bin.tar.gz
drwxr-xr-x  6 root  root     4096 Dec  5 22:53 zookeeper-3.5.8

2 - 修改配置文件

到解压后的配置目录下:

cd /data/zookeeper-3.5.8/conf

total 12
-rw-r--r-- 1 root root  535 May  4  2020 configuration.xsl
-rw-r--r-- 1 root root 2712 May  4  2020 log4j.properties
-rw-r--r-- 1 root root  922 May  4  2020 zoo_sample.cfg

可以看到有个 zoo_sample.cfg 文件,我们需要基于它来配置本地服务的具体信息。

# 拷贝配置文件:
cp zoo_sample.cfg zoo.cfg

# 修改配置文件:
vi zoo.cfg

只需要修改 dataDir 参数,并添加 dataLogDir 参数,其他参数保持默认即可。

# dataDir 是数据文件目录,dataLogDir 是日志文件目录。

# the directory where the snapshot is stored.
# do not use /tmp for storage, /tmp here is just 
# example sakes.
dataDir=/data/zookeeper-3.5.8/data
dataLogDir=/data/zookeeper-3.5.8/data/log

说明:测试环境中,为了方便迁移 ZooKeeper 时,ZooKeeper 上的数据不丢失,建议上述目录与安装目录保持一致。

配置项说明:

3 - 启动 ZooKeeper

前提:系统中已经安装好了 JDK,否则 ZooKeeper 是启动不了的。

cd /data/zookeeper-3.5.8/bin

# 查看启动的所有参数:
[root@onepiece /data/zookeeper-3.5.8/bin]# ./zkServer.sh 
ZooKeeper JMX enabled by default
Using config: /data/zookeeper-3.5.8/bin/../conf/zoo.cfg
Usage: ./zkServer.sh [--config <conf-dir>] {start|start-foreground|stop|restart|status|print-cmd}

# 启动服务:
[root@onepiece /data/zookeeper-3.5.8/bin]# ./zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /data/zookeeper-3.5.8/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED

4 - 使用 ZooKeeper 客户端连接

ZooKeeper 的安装包中提供了本地客户端,可以通过命令行连接 ZooKeeper 服务。

cd /data/zookeeper-3.5.8/bin

# 指定服务端地址,可以连接本地 ZK 服务,网络互通的情况下,也可以连接远程 ZK 服务
# 如果要连接本地 ZK 服务,可省略 -server 参数,直接用 ./zkCli.sh 即可:
./zkCli.sh -server 127.0.0.1

# 简单使用示例:
Welcome to ZooKeeper!
...
WatchedEvent state:SyncConnected type:None path:null
[zk: 127.0.0.1(CONNECTED) 0] ls /
[zookeeper]
[zk: 127.0.0.1(CONNECTED) 1] ls /zookeeper
[config, quota]
[zk: 127.0.0.1(CONNECTED) 2] 

5 - ZooKeeper 服务的常用命令

请参考:(ZooKeeper 06 - ZooKeeper 的常用命令)https://www.cnblogs.com/shoufeng/p/15680031.html


版权声明

作者:瘦风(https://healchow.com)

出处:博客园-瘦风的南墙(https://www.cnblogs.com/shoufeng)

感谢阅读,公众号 「瘦风的南墙」 ,手机端阅读更佳,还有其他福利和心得输出,欢迎扫码关注🤝

本文版权归博主所有,欢迎转载,但 [必须在页面明显位置标明原文链接],否则博主保留追究相关人士法律责任的权利。

posted @ 2018-12-05 18:29  瘦风  阅读(2278)  评论(0编辑  收藏  举报