ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

ZooKeeper学习:CentOS7下Zookeeper集群搭建

2020-12-19 12:32:20  阅读:269  来源: 互联网

标签:bin opt 12 ZooKeeper Zookeeper hadoop leo CentOS7 zookeeper


文章目录

准备

1、虚拟机

本文采用的三台一模一样的模拟机系统都是CentOS7
一共三台机器:

hadoop-slave1
hadoop-slave2
hadoop-slave3

2、安装包

本文准备的安装包是:zookeeper-3.4.12.tar.gz

安装

1、创建安装目录

在三台机器上分别创建以下三个目录:

/opt/zookeeper
/opt/zookeeper/zkdata
/opt/zookeeper/zkdatalog

将安装包放到/opt/zookeeper目录下:
图1
然后将zookeeper-3.4.12.tar.gz解压,解压命令:

tar -zxvf zookeeper-3.4.12.tar.gz

2、文件配置

将配置文件拷贝一份成zoo.cfg并进行配置

[root@hadoop-slave1 conf]# cd /opt/zookeeper/zookeeper-3.4.12/conf
[root@hadoop-slave1 conf]# cp zoo_sample.cfg zoo.cfg

对zoo.cfg进行配置

[root@hadoop-slave1 conf]# cat zoo.cfg 
# 这个时间是作为 Zookeeper 服务器之间或客户端与服务器之间维持心跳的时间间隔,也就是每个 tickTime 时间就会发送一个心跳。
tickTime=2000
# 这个配置项是用来配置 Zookeeper 接受客户端(这里所说的客户端不是用户连接 Zookeeper 服务器的客户端,而是 Zookeeper 服务器集群中连接到 Leader 的 Follower 服务器)初始化连接时最长能忍受多少个心跳时间间隔数。当已经超过 5个心跳的时间(也就是 tickTime)长度后 Zookeeper 服务器还没有收到客户端的返回信息,那么表明这个客户端连接失败。总的时间长度就是 5*2000=10 秒
initLimit=10
# 这个配置项标识 Leader 与Follower 之间发送消息,请求和应答时间长度,最长不能超过多少个 tickTime 的时间长度,总的时间长度就是5*2000=10秒
syncLimit=5
# 快照和日志的存储路径
dataDir=/opt/zookeeper/zkdata
dataLogDir=/opt/zookeeper/zkdatalog
# 这个端口就是客户端连接Zookeeper服务端的端口,Zookeeper会监听这个端口,接受客户端的访问请求。默认是2181
clientPort=12181

# zk集群节点配置
server.1=0.0.0.0:12888:13888
server.2=hadoop-slave2:12888:13888
server.3=hadoop-slave3:12888:13888
#server.1 这个1是服务器的表示也可以是其他数字,表示是第几号服务器,用来表示服务器,这个标识要写到快照目录下的myid文件中
#192.168.223.130为集群里的IP地址,第一个端口是master和slave之间的通信端口,默认是2888,第二个端口是leader选举端口,
#集群刚启动的时候选举或者leader挂掉之后进行新的选举的端口默认是3888 

# 一个ip所对应的客户机,只能和zk服务器维持60个连接
maxClientCnxns=60
# 这个参数和下面的参数搭配使用,这个参数指定了需要保留的文件数目。默认是保留3个
autopurge.snapRetainCount=3
# 这个参数指定了清理频率,单位是小时,需要填写一个1或更大的整数,默认是0,表示不开启自己清理功能
autopurge.purgeInterval=1

这里需要注意,如果是在本机节点的话zk集群节点的ip需要配置成0.0.0.0,不然会报找不到域名的错误,
例如:我这个zookeeper是在hadoop-slave1上部署的,那么这个server.1节点ip就配置成0.0.0.0。
hadoop-slave1上的配置:
图2
hadoop-slave2上的配置:
图2

hadoop-slave3上的配置:
图3

3、验证

首先进入目录:

[root@hadoop-slave1 bin]# cd /opt/zookeeper/zookeeper-3.4.12/bin
[root@hadoop-slave1 bin]# ll
总用量 80
-rwxr-xr-x. 1 leo  leo    232 3月  27 2018 README.txt
-rwxr-xr-x. 1 leo  leo   1937 3月  27 2018 zkCleanup.sh
-rwxr-xr-x. 1 leo  leo   1056 3月  27 2018 zkCli.cmd
-rwxr-xr-x. 1 leo  leo   1534 3月  27 2018 zkCli.sh
-rwxr-xr-x. 1 leo  leo   1759 3月  27 2018 zkEnv.cmd
-rwxr-xr-x. 1 leo  leo   2696 3月  27 2018 zkEnv.sh
-rwxr-xr-x. 1 leo  leo   1089 3月  27 2018 zkServer.cmd
-rwxr-xr-x. 1 leo  leo   6773 3月  27 2018 zkServer.sh
-rw-r--r--. 1 root root 44128 12月 18 17:49 zookeeper.out

然后查看命令使用方法

[root@hadoop-slave1 bin]# zkServer.sh --help
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper/zookeeper-3.4.12/bin/../conf/zoo.cfg
Usage: ./zkServer.sh {start|start-foreground|stop|restart|status|upgrade|print-cmd}

启动zookeeper

[root@hadoop-slave1 bin]# zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper/zookeeper-3.4.12/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED

启动成功
如上可以通过jps查看是否启动成功。

查看zookeeper启动状态

将我们配置的三台集群全部启动,然后查询状态

[root@hadoop-slave1 bin]# zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper/zookeeper-3.4.12/bin/../conf/zoo.cfg
Mode: follower

从这里可以看出我们的hadoop-slave1是follower节点

停止zookeeper

[root@hadoop-slave1 bin]# zkServer.sh stop
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper/zookeeper-3.4.12/bin/../conf/zoo.cfg
Stopping zookeeper ... STOPPED

查看zookeeper启动过程

如果一直启动失败可以使用如下命令查看启动过程和日志:

[root@hadoop-slave1 bin]# zkServer.sh start-foreground
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper/zookeeper-3.4.12/bin/../conf/zoo.cfg
2020-12-19 12:18:28,361 [myid:] - INFO  [main:QuorumPeerConfig@136] - Reading configuration from: /opt/zookeeper/zookeeper-3.4.12/bin/../conf/zoo.cfg
2020-12-19 12:18:28,387 [myid:] - INFO  [main:QuorumPeer$QuorumServer@184] - Resolved hostname: hadoop-slave3 to address: hadoop-slave3/192.168.223.130
2020-12-19 12:18:28,388 [myid:] - INFO  [main:QuorumPeer$QuorumServer@184] - Resolved hostname: hadoop-slave2 to address: hadoop-slave2/192.168.223.129

标签:bin,opt,12,ZooKeeper,Zookeeper,hadoop,leo,CentOS7,zookeeper
来源: https://blog.csdn.net/u011047968/article/details/111402303

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有