《大数据平台部署与应用》 项目实施课件 任务3.2 基于ZKeeper集群部署Hadoop HA模式_第1页
《大数据平台部署与应用》 项目实施课件 任务3.2 基于ZKeeper集群部署Hadoop HA模式_第2页
《大数据平台部署与应用》 项目实施课件 任务3.2 基于ZKeeper集群部署Hadoop HA模式_第3页
《大数据平台部署与应用》 项目实施课件 任务3.2 基于ZKeeper集群部署Hadoop HA模式_第4页
《大数据平台部署与应用》 项目实施课件 任务3.2 基于ZKeeper集群部署Hadoop HA模式_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于ZooKeeper集群部署HadoopHA模式任务描述接下来,小数准备利用ZooKeeper集群来部署HadoopHA模式,实现Hadoop集群中NameNode和ResourceManager的高可用性。任务环境已部署完全分布式Hadoop集群和ZooKeeper集群的3台CentOS7操作系统的虚拟机。注意:在部署ZooKeeper集群之前可先创建虚拟机快照。任务描述与任务环境VMware提供虚拟机快照功能,这项功能能够捕获并保存虚拟机在特定时间点的完整环境状态。一旦虚拟机在后续操作中发生任何变化,用户可以利用快照功能迅速恢复到之前保存的状态。HadoopHA是Hadoop2.0版本后新增的功能,涵盖NameNodeHA和ResourceManagerHA。NameNodeHA采用双NameNode架构,用于解决Hadoop1.X的单点故障问题。NameNodeHA模式中,一个NameNode处于活跃(active)状态,另一个处于待机(standby)状态,activeNameNode提供服务,standbyNameNode同步状态,以便快速接管。ResourceManagerHA同理。高可用性(HA)确保系统在主服务器故障时,能够自动将工作负载转移到备用服务器,保持服务的稳定性和可用性。ZooKeeper作为分布式协调服务,能够通过与Hadoop集群的NameNode和ResourceManager通信,确保始终有一个可用的NameNode和ResourceManager,实现Hadoop集群的高可用性。HadoopHA模式目录1启动ZooKeeper集群修改Hadoop配置文件2初始化HadoopHA功能3启动Hadoop集群验证HA模式4core-site.xml文件:配置HDFS的名称配置ZooKeeper地址修改Hadoop配置文件hdfs-site.xml文件:配置NameNodeHA的服务名称配置2个NameNode的节点名称、HTTP、RPC地址配置通过JournalNode实现共享编辑日志启用自动故障转移修改Hadoop配置文件修改Hadoop配置文件yarn-site.xml文件:启用ResourceManager的HA功能启用ResourceManager失败自动切换配置ResourceManagerHA的服务名称配置2个ResourceManager的节点及端口信息配置HA模式所用的ZooKeeper节点列表启用ResourceManager重启的功能修改Hadoop配置文件修改Hadoop配置文件修改Hadoop配置文件在start-dfs.sh和stop-dfs.sh文件中第5行添加内容,指定运行JournalNode和ZKFC服务的用户为root。修改Hadoop配置文件将master节点中修改的Hadoop相关配置文件分发到slave1和slave2节点:/opt/module/hadoop-3.1.3/etc/hadoop/*/opt/module/hadoop-3.1.3/sbin/*修改Hadoop配置文件目录1启动ZooKeeper集群修改Hadoop配置文件2初始化HadoopHA功能3启动Hadoop集群验证HA模式4在所有节点上启动ZooKeeper集群,以master节点为例,具体操作如下。启动ZooKeeper集群目录1启动ZooKeeper集群修改Hadoop配置文件2初始化HadoopHA功能3启动Hadoop集群验证HA模式4在启动HadoopHA功能之前,需要确保JournalNode已经启动,并且在每个NameNode上初始化共享存储。JournalNode是HDFS中的一个组件,负责存储HDFS的元数据操作日志,它主要用于故障恢复和避免脑裂(split-brain)问题。主NameNode执行元数据操作(如创建文件、删除文件等)的时候会将操作记录在JournalNode上的一个日志文件中,这个日志文件可以被备用NameNode读取,以便在主NameNode故障时恢复元数据。当主NameNode发生故障时,备用NameNode可以通过JournalNode中的日志来获取最新的元数据信息,并接管成为新的主NameNode。初始化HadoopHA功能在Hadoop集群中,脑裂(split-brain)问题是指在集群中有多个NameNode节点同时声称自己是活动的(Active)状态,而没有一个能够有效地成为实际的领导者(Leader)。这种情况通常发生在集群中有多个NameNode节点时,尤其是在高可用性(HA)配置下。ZKFC(ZooKeeperFailoverController)是Hadoop集群中的一个关键组件,它与ZooKeeper集群进行交互,确保HDFS集群的高可用性。当主NameNode执行元数据操作(如打开文件、修改文件权限等)时,ZKFC会监控NameNode的健康状态,并在主NameNode发生故障时触发故障转移。初始化HadoopHA功能在所有节点启动JournalNode节点,以master为例,具体操作如下。删除所有节点中的NameNode和DataNode数据存储目录,以master为例,具体操作如下。在master节点中重新格式化NameNode和ZKFC。初始化HadoopHA功能格式化ZKFC结果如下。初始化HadoopHA功能尽管JournalNode和ZKFC服务为Hadoop集群的HA模式提供了强力的保障,但是当主NameNode假死时,即NameNode进程看似已经停止响应,但实际上可能仍在运行,只是对外部请求没有响应,此时备用NameNode可能无法转化为新的主NameNode,这种情况可以通过psmisc插件来处理。psmisc是一个工具集,包括pstree、pslog、pstop、killall和fuser等工具,这些工具可用于显示和操作正在运行的进程,能够帮助管理员管理和控制进程。其中killall命令能够快速地找到并终止那些不再响应但仍在运行的进程,能够有效地解决HadoopHA模式中主NameNode假死的情况,并允许备用NameNode接管服务。初始化HadoopHA功能在master节点和slave1节点安装psmisc插件。在master节点启NameNode服务在slave1节点初始化NameNode备用实例,同步master节点中的NameNode元数据。初始化HadoopHA功能初始化NameNode备用实例结果如下。初始化HadoopHA功能目录1启动ZooKeeper集群修改Hadoop配置文件2初始化HadoopHA功能3启动Hadoop集群验证HA模式4验证HA模式可以通过手动关闭主NameNode进程,来模拟集群故障,观察是否自动切换到备用NameNode,若在主NameNode进程关闭后,能够自动切换至备用NameNode,则说明HA模式部署成功。验证HadoopHA模式是否部署成功的流程如下。启动Hadoop集群验证HA模式在master节点启动Hadoop集群,之后在浏览器上分别登录“http://master:9870”端口和“http://slave1:9870”端口查看HDFS的监控界面,检查master和slave1两个节点的NameNode状态。检查master节点的NameNode状态,若状态为“active”,则说明master节点此时为主NameNode节点。启动Hadoop集群验证HA模式检查slave1节点的NameNode状态,若状态为“standby”,则说明slave1节点此时为备用NameNode节点。启动Hadoop集群验证HA模式在master节点中关闭NameNode进程。等待几秒钟,在浏览器HDFS的监

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论