当前位置: 首页 > news >正文

承接网站建设广告语免费的发帖收录网站

承接网站建设广告语,免费的发帖收录网站,网站页面设计模板,沈阳专业关键词推广秒懂HA HA概述HDFS-HA工作机制工作要点元数据同步参数配置手动故障转移自动故障转移工作机制相关命令 YARN-HA参数配置自动故障转移机制相关命令 附录Zookeeper详解 HA概述 H(high)A(avilable): 高可用,意味着必须有容错机制,不能因为集群故障…

秒懂HA

  • HA概述
  • HDFS-HA
    • 工作机制
    • 工作要点
    • 元数据同步
    • 参数配置
    • 手动故障转移
    • 自动故障转移工作机制
    • 相关命令
  • YARN-HA
    • 参数配置
    • 自动故障转移机制
    • 相关命令
  • 附录
    • Zookeeper详解

HA概述

H(high)A(avilable): 高可用,意味着必须有容错机制,不能因为集群故障导致不可用!

  1. 实现高可用最关键的策略是消除单点故障(SPOF)。HA严格来说应该分成各个组件的HA机制:HDFS的HA和YARN的HA
  2. 实现hadoop的HA,必须保证在NN和RM故障时,采取容错机制,可以让集群继续使用

HDFS-HA

工作机制

HDFS HA功能通过配置Active/Standby两个NameNode实现在集群中对NameNode的热备来解决问题,通过双NameNode消除单点故障。

使用active状态来标记主节点,使用standby状态标记备用节点

工作要点

  • 元数据管理方式需要改变

      内存中各自保存一份元数据;Edits日志只有Active状态的NameNode节点可以做写操作两个NameNode都可以读取Edits,共享的Edits放在一个共享存储中管理
    
  • 需要一个状态管理功能模块

      实现了一个zkfc进程(zookeeper failover control)常驻在每一个namenode所在的节点,每一个zkfc负责监控自己所在NameNode节点,利用ZK进行状态标识,当需要进行状态切换时,由zkfc来负责切换,切换时需要防止脑裂(brain split)现象的发生
    

    脑裂:(brain-split) 运行过程中出现两个 namenode 同时服务于整个集群,这种情况称之为脑裂

  • 必须保证两个NameNode之间能够ssh无密码登录

  • 隔离(Fence),即同一时刻仅仅有一个NameNode对外提供服务

元数据同步

在这里插入图片描述

  1. 集群启动后,standby NameNode和active NameNode同时与JournalNodes(JNS)进程保持通信
  2. 每次active NameNode写 EditLog 的时候,除了向本地磁盘写入 EditLog 之外,也会并行地向JournalNode集群之中的每一个JournalNode发送写请求,只要大多数 (majority) 的JournalNode节点返回成功就认为向JournalNode集群写入 EditLog 成功
  3. standby NameNode周期性的从JNS中获取 EditLog 并应用到本地namespace
  4. 在failover发生时,standby节点会在转变为active之前从JNS中读取并处理所有editlog,以此保持与active NameNode的状态完全同步
  5. 另一方面,为了failover后standy节点快速提供服务,所有的DateNode节点同时向主备两个NameNode报告block信息

在这里插入图片描述
journode是基于paxos协议实现的

参数配置

参考实例:
高可用集群hdfs-site.xml配置_CSDN

手动故障转移

在原active的namenode节点上执行下面命令,强制转换nn2为active节点

hdfs haadmin -transitionToActive --forceactive nn2

自动故障转移工作机制

在这里插入图片描述

  1. ZooKeeper会话管理:每个运行的NameNode主机也运行了一个ZKFC进程,ZKFC进程会在NameNode上实例一个Zookeeper客户端,保持一个在ZooKeeper中打开的会话
  2. 现役NameNode选择:会话打开后ZKFC会将节点信息写入Zookeeper,谁先在Zookeeper中写入成功,且ZKFC发现没有其它的节点当前持有znode锁,它将为自己获取该锁,如果成功,则它已经赢得了选择,并负责运行故障转移进程以使它的本地NameNode为Active
  3. 如果本地NameNode处于active状态,ZKFC也保持一个特殊的znode锁,该锁使用了ZooKeeper对短暂节点的支持,如果会话终止,锁节点将自动删除
  4. 健康监测:ZKFC使用一个健康检查命令定期地ping与之在相同主机的NameNode,只要该NameNode及时地回复健康状态,ZKFC认为该节点是健康的。如果该节点崩溃,健康监测器标识该节点为非健康的
  5. 故障检测:集群中的每个NameNode在ZooKeeper中维护了一个持久会话,如果机器崩溃,ZKFC会释放对Zookeeper节点的所有权,ZooKeeper中的会话将终止,因为节点是临时节点,会话终止临时节点也就消失了
  6. 隔离:目前现役NameNode崩溃,另一个节点可能从ZooKeeper获得特殊的排外锁以表明它应该成为现役NameNode,在成为现役之前,需要先把假死的NameNode进程杀掉,避免出现脑裂问题
  7. NameNode的standby节点会重新在Zookeeper上写入新的节点,并将自己提升为active
    在这里插入图片描述
    在这里插入图片描述

相关命令

  • hdfs查看nn状态命令
hdfs haadmin -getAllServiceState 

在这里插入图片描述

  • hdfs切换为active命令
hdfs haadmin -transitionToActive --forcemanual <Namenode Id>
  • hdfs切换为standby命令
hdfs haadmin -transitionToStandby --forcemanual <Namenode Id>

YARN-HA

参数配置

参考实例:
高可用集群yarn-site.xml配置_CSDN

在这里插入图片描述

自动故障转移机制

ResourceManager中基于zookeeper的ActiveStandbyElector组件来选举哪个RM作为activeRM。
active RM关闭或故障时自动选举standby状态的RM作为新的active RM接管工作

与HDFS的HA不同的是,YARN的HA方案不需要单独的ZKFC程序, 基于zk的ActiveStandbyElector作为RM内部组件进行故障检测和active选举

相关命令

  • yarn查看rm状态命令
yarn rmadmin -getAllServiceState

在这里插入图片描述

  • yarn切换为active状态
yarn rmadmin -transitionToActive --forcemanual <rm id>
  • yarn切换为standby状态
yarn rmadmin -transitionToStandby --forcemanual <rm id>

附录

Zookeeper详解

  • 参考链接
    zookeeper详解_CSDN
http://www.mnyf.cn/news/40788.html

相关文章:

  • 网站推广效果南宁seo
  • 浏览器禁止网站怎么做泉州seo按天计费
  • 网站的首页怎么做计算机基础培训机构
  • 做网站要多少像素培训学校机构
  • 做的好的个人网站知乎快手推广网站
  • 网站开发与制作毕业论文sem竞价托管代运营
  • 如何做个人网站软文自助发布平台系统
  • 网站建设的一般过程今天上海最新新闻事件
  • 武汉网站整合营销什么价格谷歌seo公司
  • 12306网站多钱做的网站软文是什么
  • 重庆有专业做网站的吗电脑培训学校课程
  • 厦门网站建设 软件园国家职业技能培训平台
  • 北京做网站建设的公司哪家好涟源网站seo
  • 做网站个人备案郑州做网站的大公司
  • wordpress自动标签添加内链插件宁波seo推荐
  • 漳州市网站建设公司肇庆网站搜索排名
  • 网站后台管理系统模板seo的方法有哪些
  • 二百块做网站石家庄疫情最新消息
  • 重庆网站建设哪家做的好百度网站ip地址
  • 软件开发和网站开发哪个更好如何免费创建自己的平台
  • 做网站漯河搜索热词排名
  • php建网站网站网上推广
  • 上海最专业的网站设计制购物网站如何推广
  • 做字画的网站zac seo博客
  • 代做备案网站百度seo排名优化软件
  • 做良心网站网络营销师报名入口
  • 济南微网站建设市场seo是什么
  • 重庆云阳网站建设公司推荐百度推广没有效果怎么办
  • 网站建设报价天津网站推广
  • 汽车音响网站建设怎么建立自己的网站平台