zookeeper之二:手把手教你安装zookeeper3.7.0(绝对实用)

前面分享了zookeeper的基本知识,下面分享有关zookeeper安装的知识。

 

1、下载

zookeeper的官网是:https://zookeeper.apache.org/

在官网上找到下载链接,

这里使用的是二进制安装包,使用的是3.7.0的版本。

2、安装

2.1、环境

os:我这里是在虚拟机环境中的centos7-64进行安装。

JDK:zookeeper需要JDK的支持,需要事先配置好java的环境变量。

2.2、安装

zookeeper的安装可以分为单机版和集群版,单机版是只有一个节点,集群版使用三个节点。

2.2.1、单机版

2.2.1.1、修改配置

单机版是只有一个节点的zookeeper进程,把下载好的安装包上传到对应得linux服务器目录上,对文件进行解压,解压后的文件如下,

 

这里有两个比较重要的目录bin和conf,bin目录存放的是zookeeper启动脚本,conf下存放的是配置文件。首先修改配置文件,在conf下有三个文件,

 

zoo_sample.cfg是一个样例文件,zookeeper启动的时候默认使用的是zoo.cfg,这里从zoo_sample.cfg复制一个名为zoo.cfg即可,然后修改zoo.cfg文件,整个zoo.cfg文件是这样的

# The number of milliseconds of each tick
tickTime=2000
# The number of ticks that the initial
# synchronization phase can take
initLimit=10
# The number of ticks that can pass between
# sending a request and getting an acknowledgement
syncLimit=5
# the directory where the snapshot is stored.
# do not use /tmp for storage, /tmp here is just
# example sakes.
dataDir=/tmp/zookeeper
# the port at which the clients will connect
clientPort=2181
# the maximum number of client connections.
# increase this if you need to handle more clients
#maxClientCnxns=60
#
# Be sure to read the maintenance section of the
# administrator guide before turning on autopurge.
#
#http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance
#
# The number of snapshots to retain in dataDir
#autopurge.snapRetainCount=3
# Purge task interval in hours
# Set to "0" to disable auto purge feature
#autopurge.purgeInterval=1

## Metrics Providers
#
# https://prometheus.io Metrics Exporter
#metricsProvider.className=org.apache.zookeeper.metrics.prometheus.PrometheusMetricsProvider
#metricsProvider.httpPort=7000
#metricsProvider.exportJvmInfo=true

我这里仅修改了下面的配置,

dataDir=/home/dev/datas/zookeeper3.7.0/single
2.2.1.2、启动

在zookeeper的目录下,执行下面的命令

bin/zkServer.sh start

看到下面的内容,说明已经启动成功

 

2.2.2、集群版

2.2.2.1、修改配置

由于我这里没有多余的物理机,所以在一台虚拟机上部署多个zk进程,配置如下,

地址 myid 对外端口 通信端口 选举端口 dataDir
本机 1 2182 2382 2482
/home/dev/datas/zookeeper3.7.0/cluster/node1
本机 2 2183 2383 2483
/home/dev/datas/zookeeper3.7.0/cluster/node2
本机 3 2184 2384 2484
/home/dev/datas/zookeeper3.7.0/cluster/node3

 

有了上面的配置,只需要在conf文件夹下,分别创建3个配置文件夹,然后放置zoo.cfg文件即可,分别按照上面的配置进行修改,在启动的时候分别制定不同的配置文件,

然后分别修改node1、node2、node3中的zoo.cfg文件,修改的配置项如下,node1

dataDir=/home/dev/datas/zookeeper3.7.0/cluster/node1
clientPort=2182
initLimit=5
syncLimit=2
server.1=127.0.0.1:2382:2482
server.2=127.0.0.1:2383:2483
server.3=127.0.0.1:2384:2484

node2

dataDir=/home/dev/datas/zookeeper3.7.0/cluster/node2
clientPort=2183
initLimit=5
syncLimit=2
server.1=127.0.0.1:2382:2482
server.2=127.0.0.1:2383:2483
server.3=127.0.0.1:2384:2484

node3

dataDir=/home/dev/datas/zookeeper3.7.0/cluster/node3
clientPort=2184
initLimit=5
syncLimit=2
server.1=127.0.0.1:2382:2482
server.2=127.0.0.1:2383:2483
server.3=127.0.0.1:2384:2484

之后再dataDir目录下还要建立一个myid的文本文件,文件的内容分别为node1下为1、node2下为2、node3下为3

2.2.2.2、启动

经过了上面对集群模式下的配置,下面启动集群中的3个节点,方式如下

bin/zkServer.sh --config conf/node1 start

看下面的图片,

按照上面的方式分别启动node1、node2、node3节点。

3、测试

上面,我们分别使用单机版和集群版按照了zookeeper,那么怎么测试是否安装成功

3.1、单机版

在单机版下,如果没有改端口直接使用即可,

bin/zkCli.sh 

出现下面的画面说明启动成功

3.2、集群版

3.2.1、验证单节点是否启动成功

在集群模式下,由于没有使用默认的端口,这里需要使用下面的命令,

#登录node3节点
bin/zkCli.sh -server 127.0.0.1:2183

3.2.2、验证集群是否正常同步数据

对于集群测试,还可以在node1上新建目录,然后在node3上检查是否存在该目录

看node3下的目录

这样就可以看出zookeeper集群是正常的。

3.2.3、验证集群状态

可以通过查看集群的命令查看整个集群的状态

 bin/zkServer.sh --config conf/node1 status

看下node2的状态

以上几种方式说明zookeeper集群正常。

有不正之处,欢迎指正。参考:

https://blog.csdn.net/dandandeshangni/article/details/80558383

https://www.cnblogs.com/8899man/p/5710191.html

posted @ 2021-06-06 09:33  良工说技术  阅读(7526)  评论(0编辑  收藏  举报