大数据讲课笔记6.4 ZooKeeper分布式集群部署
Posted howard2005
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了大数据讲课笔记6.4 ZooKeeper分布式集群部署相关的知识,希望对你有一定的参考价值。
文章目录
零、学习目标
- 能正确安装ZooKeeper
- 能正确配置ZooKeeper
- 能正确启动和关闭ZooKeeper服务
一、导入新课
- 通过上节课的学习,我们对ZooKeeper提供的选举机制有了一定的认识。要想深入学习和掌握ZooKeeper的相关应用,首先必须得学会部署一个属于自己的ZooKeeper集群。本节课将针对ZooKeeper分布式集群的部署进行详细讲解。
二、新课讲解
(一)ZooKeeper分布式集群部署
- ZooKeeper分布式集群部署指的是ZooKeeper分布式模式安装。ZooKeeper集群搭建通常是由2n+1台服务器组成,这是为了保证 Leader 选举(基于Paxos算法的实现)能够通过半数以上台服务器选举支持,因此,ZooKeeper集群的数量一般为奇数台。
(二)下载解压ZooKeeper安装包
- 由于ZooKeeper集群运行需要Java环境支持,所以要提前安装JDK(对于jdk的下载安装这里不作赘述)。
1、下载ZooKeeper安装包
- ZooKeeper下载地址:https://www.apache.org/dyn/closer.lua/zookeeper/zookeeper-3.8.0/apache-zookeeper-3.8.0-bin.tar.gz
- 下载ZooKeeper安装包到本地
2、上传ZooKeeper安装包
- 将下载完毕的ZooKeeper安装包上传至master虚拟机
/opt
目录
3、解压ZooKeeper安装包
- 将ZooKeeper安装包解压到指定目录
/usr/local
,执行命令:tar -zxvf apache-zookeeper-3.8.0-bin.tar.gz -C /usr/local
- 执行命令:
ll /usr/local
- 执行命令:
mv /usr/local/apache-zookeeper-3.8.0-bin /usr/local/zookeeper-3.8.0
(三)ZooKeeper相关配置
1、在master虚拟机上配置ZooKeeper
(1)配置环境变量
- 执行命令:
vim /etc/profile
export ZOOKEEPER_HOME=/usr/local/zookeeper-3.8.0
export PATH=$ZOOKEEPER_HOME/bin:$PATH
- 存盘退出,执行命令:
source /etc/profile
,让环境配置生效
(2)配置ZooKeeper
- 进入ZooKeeper配置目录,将
zoo_sample.cfg
配置文件重命名为zoo.cfg
- 执行命令:
vim zoo.cfg
,指定dataDir
目录、配置服务器编号与主机名映射关系、设置与主机连接的心跳端口和选举端口
(3)创建myid文件
- 根据配置文件
zoo.cfg
设置的dataDir
目录,创建ZkData
文件夹,在该文件夹里并创建myid
文件,内容就是服务器编号
2、分发ZooKeeper到slave1虚拟机
- 执行命令:
scp -r $ZOOKEEPER_HOME root@slave1:$ZOOKEEPER_HOME
- 执行命令:
scp /etc/profile root@slave1:/etc
- 切换到slave1虚拟机,执行命令:
source /etc/profile
,让环境配置生效
- 进入
ZkData
目录,将myid
文件内容改成2
3、分发ZooKeeper到slave2虚拟机
- 执行命令:
scp -r $ZOOKEEPER_HOME root@slave2:$ZOOKEEPER_HOME
- 执行命令:
scp /etc/profile root@slave2:/etc
- 切换到slave2虚拟机,执行命令:
source /etc/profile
,让环境配置生效
- 进入
ZkData
目录,将myid
文件内容改成3
(四)启动和关闭ZooKeeper服务
1、启动ZooKeeper服务
- 在master虚拟机上执行命令:
zkServer.sh start
- 在slave1虚拟机上执行命令:
zkServer.sh start
- 在slave2虚拟机上执行命令:
zkServer.sh start
- 查看三个虚拟机上ZooKeeper服务状态,执行命令:
zkServer.sh status
- 在ZooKeeper集群中,slave1节点上的ZooKeeper是leader(老大),master和slave2节点上的ZooKeeper是follower(小弟)。
2、关闭ZooKeeper服务
- 在三个虚拟机上执行命令:
zkServer.sh stop
- 单击【发送】按钮
- 在三个虚拟机上执行命令:
clear
与zkServer.sh status
- 单击【发送】命令
三、归纳总结
- 回顾本节课所讲的内容,并通过提问的方式引导学生解答问题并给予指导。
四、上机操作
- 形式:单独完成
- 题目:搭建ZooKeeper集群
- 要求:让学生自己按照步骤配置ZooKeeper集群,并进行启动和关闭ZooKeeper服务的操作,以此来巩固本节的学习内容。写一篇CSDN博客,记录操作过程。
以上是关于大数据讲课笔记6.4 ZooKeeper分布式集群部署的主要内容,如果未能解决你的问题,请参考以下文章