当前位置:   article > 正文

六、Hadoop系统应用之Zookeeper分布式协调服务(一)(超详细步骤指导操作,WIN10,VMware Workstation 15.5 PRO,CentOS-6.7)

六、Hadoop系统应用之Zookeeper分布式协调服务(一)(超详细步骤指导操作,WIN10,VMware Workstation 15.5 PRO,CentOS-6.7)

Hadoop集群搭建前安装准备参考:
一、Hadoop系统应用之安装准备(一)(超详细步骤指导操作,WIN10,VMware Workstation 15.5 PRO,CentOS-6.7)
一、Hadoop系统应用之安装准备(二)(超详细步骤指导操作,WIN10,VMware Workstation 15.5 PRO,CentOS-6.7)
Hadoop集群搭建过程参考:
二、Hadoop系统应用之Hadoop集群搭建(超详细步骤指导操作,WIN10,VMware Workstation 15.5 PRO,CentOS-6.7)

一、Zookeeper原理

Zookeeper是一个分布式协调服务的开源框架,它是由Google的Chubby开源实现。Zookeeper主要用来解决分布式集群中应用系统的一致性问题和单点故障问题,例如如何避免同时操作同一数据造成脏读的一致性问题等。
Zookeeper具有全局数据一致性、可靠性、顺序性、原子性以及实时性,可以说Zookeeper的其他特性都是为满足Zookeeper全局数据一致性这一特性。
Zookeeper集群是一个主从集群,它一般是由一个Leader(领导者)和多个Follower(跟随者)组成。此外,针对访问量比较大的Zookeeper集群,还可新增Observer(观察者)。

  1. Leader是Zookeeper集群工作的核心,也是事务性请求(写操作)的唯一调度和处理者,保证集群事务处理的顺序性,同时负责进行投票的发起和决议,以及更新系统状态。
  2. Follower负责处理客户端的非事务(读操作)请求,如果接收到客户端发来的事务性请求,则会转发给Leader,让Leader进行处理,同时还负责在Leader选举过程中参与投票。
  3. Observer负责观察Zookeeper集群的最新状态的变化,并且将这些状态进行同步。对于非事务性请求可进行独立处理;对于事务性请求,则会转发给Leader服务器进行处理。它不参与任何形式的投票,只提供非事务性的服务。

Zookeeper的数据存储结构和标准文件系统非常类似,拥有一个层次命名空间,用斜杠进行分割,都采用树形层次结构,树中的每个节点被称为Znode。每个节点都可以拥有子节点。每一个Znode默认能够存储1MB的数据,每个Znode都可以通过其路径唯一标识。

二、Zookeeper分布式集群部署

1、安装包的上传安装

首先打开SecureCRT 8.3软件,在hadoop01上进入/export/software/目录,指令如下:

cd /export/software/
  • 1

在这里插入图片描述

然后使用指令rz进行安装包上传,选择安装包zookeeper-3.4.10.tar.gz。
在这里插入图片描述

之后上传完毕后将该安装包解压到/export/servers/目录,使用如下指令:

tar -zxvf zookeeper-3.4.10.tar.gz -C /export/servers/
  • 1

解压完成后使用cd /export/servers/进入该目录,之后使用指令ls可查看到该目录下存在zookeeper-3.4.10.tar.gz文件。
在这里插入图片描述

2、Zookeeper相关配置

首先修改Zookeeper的配置文件,首先进入Zookeeper解压目录下,先将zoo_sample.cfg配置文件重命名为zoo.cfg,指令如下:

cd zookeeper-3.4.10
cd conf
cp zoo_sample.cfg zoo.cfg
  • 1
  • 2
  • 3

在这里插入图片描述
在这里插入图片描述

然后修改配置文件zoo.cfg。修改文件指令如下:

vi zoo.cfg
  • 1

在该文件中指定dataDir目录:

dataDir=/export/data/zookeeper/zkdata
  • 1

同时配置服务器编号与主机名映射关系、设置与主机连接的心跳端口和选举端口:

server.1=hadoop01:2888:3888
server.2=hadoop02:2888:3888
server.3=hadoop03:2888:3888
  • 1
  • 2
  • 3

在这里插入图片描述

之后创建myid文件。根据配置文件zoo.cfg设置的dataDir目录,创建zkdata文件夹,具体命令如下:

mkdir -p /export/data/zookeeper/zkdata
  • 1

进入该文件夹,指令如下:

cd /export/data/zookeeper/zkdata
  • 1

在该文件夹中创建myid文件,该文件里面的内容就是服务器编号,指令如下:

echo 1 > myid
  • 1

在这里插入图片描述

上述配置完成后对环境变量进行配置。
执行命令vi /etc/profile对profile文件进行修改,添加Zookeeper的环境变量,添加内容如下:

export ZK_HOME=/export/servers/zookeeper-3.4.10
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$ZK_HOME/bin
  • 1
  • 2

在这里插入图片描述

最后一步分发Zookeeper相关文件至其他服务器。
首先分发Zookeeper安装目录至其他服务器,指令如下:

scp -r /export/servers/zookeeper-3.4.10/ hadoop02:/export/servers/
scp -r /export/servers/zookeeper-3.4.10/ hadoop03:/export/servers/
  • 1
  • 2

然后分发指定数据文件至其他服务器,指令如下:

scp -r /export/data/zookeeper/ hadoop02:/export/data/
scp -r /export/data/zookeeper/ hadoop03:/export/data/
  • 1
  • 2

之后依次在hadoop02和hadoop03上修改myid文件,进入目录指令与修改文件指令相同,均如下:

cd /export/data/zookeeper/zkdata
vi myid
  • 1
  • 2

将hadoop02的myid内容修改为“2”,将hadoop03的myid内容修改为“3”。
在这里插入图片描述
在这里插入图片描述

最后将profile文件也分发至其他服务器,指令如下

scp /etc/profile hadoop02:/etc/profile
scp /etc/profile hadoop03:/etc/profile
  • 1
  • 2

在这里插入图片描述

在三个服务器上均执行如下指令,使环境变量生效。

source /etc/profile
  • 1

3、Zookeeper服务的启动和关闭

首先依次在hadoop01、hadoop02、hadoop03上启动Zookeeper服务,具体命令如下:

zkServer.sh start
  • 1

然后执行如下命令查看节点Zookeeper角色:(需要三个服务器Zookeeper服务均启动后才能查看角色)

zkServer.sh status
  • 1

三个服务器出现下图中内容说明该集群部署成功。
hadoop01:
在这里插入图片描述

hadoop02:
在这里插入图片描述

hadoop03:
在这里插入图片描述

关闭该集群只需将启动指令中的start改为stop即可。

参考文献:黑马程序员.Hadoop大数据技术原理与应用[M].北京:清华大学出版社,2019.

后续学习链接:
六、Hadoop系统应用之Zookeeper分布式协调服务(二)(超详细步骤指导操作,WIN10,VMware Workstation 15.5 PRO,CentOS-6.7)

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/605475
推荐阅读
相关标签
  

闽ICP备14008679号