(1)下载ZooKeeper
Hadoop 的HA 高可用集群是建立在ZooKeeper 的基础之上,所以需要先配置ZooKeeper。ZooKeeper 是一个分布式服务框架,它主要用来解决分布式应用中经常遇到的一些数据管理问题。例如:统一命名服务、状态同步服务、集群管理等。因此,搭建HDFS HA 的第一个步骤从配置ZooKeeper 环境开始,这里使用的是ZooKeeper 3.4.14 版本。
将下载后的安装包拷贝到每个节点的“/home/apache/soft”文件夹下,然后使用命令“tarzxvf zookeeper-3.4.14.tar.gz”解压压缩包。如图6.6 所示,已经成功解压文件夹“zookeeper-3.4.14”。
图6.6 ZooKeeper 解压图
(2)配置ZooKeeper
进入“zookeeper-3.4.14”文件夹,进入conf 目录,然后修改ZooKeeper 的配置文件“zoo_sample.cfg”。其具体操作命令如下:
编辑“zoo.cfg”文件,在原有的基础内容上增加Server 配置内容与配置“dataDir”文件内容,Server 配置文件是对应服务器的节点名称,ZooKeeper 通过该配置选项识别集群的节点。“dataDir”为数据的存储路径,ZooKeeper 通过该配置项将数据存储到配置的路径处。
创建修改分发myid 文件,下面为创建myid 配置文件,然后为该节点配置ZooKeeper 的环境变量,配置方法如下所示:
图6.7 Rsync 安装图
(3)安装Rsync 工具(www.xing528.com)
Rsync 工具的安装可以方便配置节点向其他节点分发配置,可以使用命令“rpm -qa | grep rsync”,检查是否安装。如果虚拟机中没有安装,可以使用命令“yum install -y rsync”。该命令是使用yum 下载并安装Rsync 工具包,Rsync 安装过程图如图6.7 所示。这里需要注意的是,每个节点都要执行。
然后使用Rsync 执行分发命令,将之前已经配置好的ZooKeeper 分发给其他节点,使得该配置能够与其他节点配置同步。由于目前使用的是master1 节点,因此需要向master2 节点、slave1 节点和slave2 节点配置同步,其命令如下:
分发成功过之后,查看所有节点下“/home/apache/soft/zookeeper-3.4.14/tmp/myid”都为“0”,这里需要修改为与之前配置文件“zoo.cfg”下的“server.id”内容相互对应。
本文配置文件“zoo.cfg”中节点master1 对应“0”;节点master2 对应“1”;节点slave1 对应“2”;节点slave2 对应“3”。因此,要将对应节点的myid 修改为对应的值。
(4)配置ZooKeeper 环境变量
在主节点master1 进行环境变量配置,将ZooKeeper 安装目录配置到环境变量中。首先需要切换到Root 用户进行环境变量的修改;然后,需要编辑“/etc/profile”文件,在终端执行命令“vi/etc/profile”;最后,在文件末尾添加ZooKeeper 的安装路径。添加的内容为“ZOOKEEPER_HOME”变量,除此之外,在变量PATH 中加入内容“$ZOOKEEPER_HOME/bin”。
使用Rsync 进行环境变量分发,其命令如下:
为了使配置生效,每个节点都要使用命令“source /etc/profile”使配置生效。
(5)启动ZooKeeper
ZooKeeper 的相关命令主要有以下几个:①启动ZooKeeper 命令:“zkServer.sh start”;②查看ZooKeeper 命令:“zkServer.sh status”;③停止ZooKeeper 命令:“zkServer.sh stop”。为每台节点执行“zkServer. sh start”命令,启动ZooKeeper 服务。当每个节点已经启动后,使用命令“zkServer.sh status”查看每个节点的状态,会发现四个节点的其中一个节点是“leader”状态,说明该节点为主节点,其他节点是“follower”状态为子节点,如图6.8 所示。
图6.8 ZooKeeper 节点状态图
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。