RM有单点失败的风险,但是可以做HA。

 RMs HA通过master/standby这种结构实现,一个master是active的,其它standby是inactive的。可能通过命令行切换主备节点,也可以在遇到问题时自动切换。
手动切换:
    自动切换失效时,管理员可以执行手动切换。步骤是:先把原来active的RM切换为inactive,然后把一个standby的RM切换为active,通过yarn rmadmin命令台实现。
自动切换:
    通过zookeeper可以实现RM的自动切换。注意:在RM上运行一个ZKFC进程来监控RM的运行状态,RM中已经内嵌了ActiveStandbyElector 进程来检查RM的运行状态。 
client\applicationMaster\nodeManager 在 RM failover的表现
    如果有多个RM,则client和其它需要连接到RM的工具需要在配置文件(yarn-site.xml)中把所有的RM都列出来。然后这些client会循环连接这些RMs,直接能连上一个active的RM。如果连接上后,这个RM宕机,则客户端会继续循环连接这些RMs,直到连接上下一个active的RM。这个行为是由org.apache.hadoop.yarn.client.ConfiguredRMFailoverProxyProvider实现的,用户可以实现这个类并且修改yarn.client.failover-proxy-provider的值来修改这个行为。

recovering prevous active-RM status 恢复之前的RM状态
    如果启用了RM restart,在active的RM宕机后,standby的RM会接管之前active-RM的职责并加载其状态。在有多个RM的情况下,保存RM元数据的state-store必须可以被每个RM访问。有两种方式实现state-store,filesystem和zookeeper,但是只有zookeeper支持任意时刻任意一个RM都可以读写statue-store,这样就解决了多个RM同时读写statu-store的问题(inacitve RM可能会干扰active RM)。因此,RM HA的应用使用zookeeper来实现。使用zookeeper state-store时,不要设置zookeeper.DigestAuthenticationProvider.superDigest(zookeeper权限相关)。

配置:

yarn admin:
$ yarn rmadmin -getServiceState rm1
active $ yarn rmadmin -getServiceState rm2
standby









































五:ResourceManager High Availability RM 高可用的更多相关文章

  1. MySQL 系列(五) 多实例、高可用生产环境实战

    MySQL 系列(五) 多实例.高可用生产环境实战   第一篇:MySQL 系列(一) 生产标准线上环境安装配置案例及棘手问题解决 第二篇:MySQL 系列(二) 史上最屌.你不知道的数据库操作 第三 ...

  2. 每天学点SpringCloud(五):如何使用高可用的Eureka

    前几篇文章我们讲了一下Eureka的基础使用,但是呢有一个很重要的问题,我们讲的都是单机版的情况,如果这个时候Eureka服务挂了的话,那么我们的服务提供者跟服务消费者岂不是都废了?服务提供者和消费者 ...

  3. SpringCloud微服务实战——搭建企业级开发框架(十五):集成Sentinel高可用流量管理框架【熔断降级】

      Sentinel除了流量控制以外,对调用链路中不稳定的资源进行熔断降级也是保障高可用的重要措施之一.由于调用关系的复杂性,如果调用链路中的某个资源不稳定,最终会导致请求发生堆积.Sentinel ...

  4. Nginx笔记总结十五:nginx+keepalive+proxy_cache配置高可用nginx集群和高速缓存

    nginx编译 wget http://labs.frickle.com/files/ngx_cache_purge-2.3.tar.gz ./configure --prefix=/usr/loca ...

  5. Hadoop官方文档翻译—— YARN ResourceManager High Availability 2.7.3

    ResourceManager High Availability (RM高可用) Introduction(简介) Architecture(架构) RM Failover(RM 故障切换) Rec ...

  6. Hadoop2.7.1配置NameNode+ResourceManager高可用原理分析

    关于NameNode高可靠需要配置的文件有core-site.xml和hdfs-site.xml 关于ResourceManager高可靠需要配置的文件有yarn-site.xml 逻辑结构: Nam ...

  7. Redis高可用之哨兵模式Sentinel配置与启动(五)

    0.Redis目录结构 1)Redis介绍及部署在CentOS7上(一) 2)Redis指令与数据结构(二) 3)Redis客户端连接以及持久化数据(三) 4)Redis高可用之主从复制实践(四) 5 ...

  8. ResourceManager High Availability

    Introduction This guide provides an overview of High Availability of YARN’s ResourceManager, and det ...

  9. 七、Hadoop3.3.1 HA 高可用集群QJM (基于Zookeeper,NameNode高可用+Yarn高可用)

    目录 前文 Hadoop3.3.1 HA 高可用集群的搭建 QJM 的 NameNode HA Hadoop HA模式搭建(高可用) 1.集群规划 2.Zookeeper集群搭建: 3.修改Hadoo ...

随机推荐

  1. 04 关于oracle的锁的级别以及介绍

    关于oracle的锁的级别以及介绍 oracle造成锁表的情况: 一.查看锁的对象视图:select object_id,session_id,locked_mode from v$locked_ob ...

  2. oracle database 9i/10g/11g 编程艺术 源代码下载

    背景 在找这本书的源码,搜到提供的都是需要C币下载的.比较固执(其实是穷). 在这本书的前言中提到源代码可以在 www.appress.com 上下载. 下面是该书在该网站上的链接: https:// ...

  3. Xdebug 备注

    安装步骤: 查看自己的环境是否已安装 Xdebug ,查看方法:使用phpinfo(),搜索 Xdebug 如果没有 如图: 如果没有:下一步确定你的PHP版本信息: Xdebug下载地址 https ...

  4. 转:30分钟学会如何使用Shiro

    引自:http://www.cnblogs.com/learnhow/p/5694876.html 本篇内容大多总结自张开涛的<跟我学Shiro>原文地址:http://jinniansh ...

  5. Spring Security学习笔记(一)

    认证和权限控制 AuthenticationManager是认证的主要接口,它只有一个authenticate方法,可以做3件事情. 返回一个认证信息(Authentication),表示认证成功 抛 ...

  6. python教程(三)·函数与模块

    函数,这和数学中的函数有点关联,但又不是完全等价 概念 不说的这么官方,我就已自己的理解来表达 ^_^ 在数学中,把一个或多个值(输入x)进行一定的计算或者映射,得到一个值(输出y),这个计算或者映射 ...

  7. Java学习笔记二十五:Java面向对象的三大特性之多态

    Java面向对象的三大特性之多态 一:什么是多态: 多态是同一个行为具有多个不同表现形式或形态的能力. 多态就是同一个接口,使用不同的实例而执行不同操作. 多态性是对象多种表现形式的体现. 现实中,比 ...

  8. 分享Centos6.5升级glibc过程

    默认的Centos6.5 glibc版本最高为2.12, 而在进行Nodejs开发时项目所依赖的包往往需要更高版本的glibc库支持, 因此在不升级系统的前提下, 需要主动更新系统glibc库. 一般 ...

  9. react--基本用法

    1.安装了babel 但是终端执行 babel src --out-dir build命令时说"babel:command is not found" 经百度,找到solution ...

  10. C#、C++、Java、Python 选择哪个好?

    C#.C++.Java.Python 选择哪个好? 2019年03月06日 16:54:34 编程小火车 阅读数:214   首先排除Python,光动态语言一个理由,就已经万劫不复了.无论有多少所谓 ...