大数据集群——安装Zookeeper

1、什么是Zookeeper

Zookeeper是一个分布式开放源码的协调服务,是Hadoop和Hbase的重要组件,它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。Zookeeper的典型应用场景有数据发布订阅、负载均衡、命名服务、分布式协调/通知、集群管理、Master选举、分布式锁、分布式列。

2、Zookeeper安装步骤

2.1、环境准备

表2-1:zookeeper安装环境准备

ip

安装软件

内存

磁盘空间

192.168.80.130

jdk1.8、zookeeper3.4.10、centos7

4G

20G

192.168.80.131

jdk1.8、zookeeper3.4.10、centos7

4G

20G

192.168.80.132

jdk1.8、zookeeper3.4.10、centos7

4G

20G

2.2、配置hosts文件

大数据集群——安装Zookeeper
图2-1 具体的hosts文件配置信息截图

将配置好的hosts文件分发给其余集群机器。

2.3、创建对应的目录和文件

mkdir /opt/software/zookeeper/data

mkdir /opt/software/zookeeper/dataLog

在/opt/software/zookeeper/data文件夹下面创建myid文件,myid文件内容编辑为1,其余两个机器分别配置上2和3。

vim /opt/software/zookeeper/data/myid

2.3.1、修改配置文件

解压zookeeper.3.4.10.tar.gz,并重命名。

tar -xvf zookeeper.3.4.10.tar.gz

mv zookeeper.3.4.10.tar.gz zookeeper

进入/opt/software/zookeeper/conf,将文件夹下的zoo_sample.cfg更名为zoo.cfg,或者新建一个zoo.cfg,然后将zoo_sample.cfg内容复制到zoo.cfg。这里采用新建一个zoo.cfg文件,并将zoo_sample.cfg文件内容追加到zoo.cfg文件尾。

vim /opt/software/zookeeper/conf/zoo.cfg

按ESC后按:,输入wq后按Enter即可。

cat zoo_sample.cfg >> zoo.cfg

在Linux中>>表示追加,>表示覆盖。

对zoo.cfg文件内容配置如下所示。

tickTime=2000

initLimit=10

syncLimit=5

dataDir=/opt/software/zookeeper/data

dataLogDir=/opt/software/zookeeper/dataLog

clientPort=2181

server.1=worker1:2888:3888

server.2=worker2:2888:3888

server.3=worker3:2888:3888

tickTime:表示Zookeeper 服务器之间或客户端与服务器之间维持心跳的时间间隔,也就是每个 tickTime 时间就会发送一个心跳。tickTime以毫秒为单位。

initLimit:集群中的follower服务器(F)与leader服务器(L)之间初始连接时能容忍的最多心跳数(tickTime的数量)。

syncLimit:集群中的follower服务器与leader服务器之间请求和应答之间能容忍的最多心跳数(tickTime的数量)。

dataDir:Zookeeper保存数据的目录,默认情况下,Zookeeper将写数据的日志文件也保存在这个目录里。

dataLogDir:Zookeeper保存日志文件的目录。

clientPort:客户端连接 Zookeeper 服务器的端口,Zookeeper 会监听这个端口,接受客户端的访问请求。

server.1:服务器名称与地址:集群信息(服务器编号,服务器地址,LF通信端口,选举端口)

将配置好的zookeeper文件分发到192.168.80.131机器和192.168.80.132机器上。

2.4、启动和测试Zookeeper集群

分别在集群各个节点启动命令

sh /opt/software/zookeeper/bin/zkServer.sh start

分别查看下集群各个节点的状态

sh /opt/software/zookeeper/bin/zkServer.sh status

 

大数据集群——安装Zookeeper
图2-2 节点启动zookeeper后状态查看截图
大数据集群——安装Zookeeper
图2-3 节点启动zookeeper后状态查看截图

2.5、问题记录

大数据集群——安装Zookeeper
图2-4 启动错误信息截图

可能原因:

  1. 端口被占用

修改conf/zoo.cfg文件,添加admin.serverPort=没被占用的端口号。

  1. 防火墙未关闭

执行命令:

systemctl stop firewalld
  1. ip地址不是本机网卡

quorumListenOnAllIPs=true

大数据集群——安装Zookeeper
图2-5 zookeeper状态查询错误信息截图

出现这个问题,查看具体的错误日志,执行命令:

sh /opt/software/zookeeper/bin/zkServer.sh start-foreground

 

大数据集群——安装Zookeeper
图2-6 zookeeper状态信息查询错误信息截图

从这可以看出是端口2181被占用了。

查看端口占用情况这里提供一种方法,安装上net-tools包。

yum install -y net-tools

netstat -tunlp | grep 2181

 

大数据集群——安装Zookeeper
图2-7 zookeeper节点端口进程查询
上一篇:Android zxing方向:ResultMetaData为null,获取旋转/方向


下一篇:关于python第三方库问题整理