背景介绍
随着数据湖技术从离线向实时的倒退,数据湖在业务已逐步从辅助决策向实时决策,实时干涉甚至提前预防的方向倒退,同时,随着国家把数据作为第五种生产因素,数据据价值在逐渐晋升,这样对海量数据湖的可靠性提出了新的要求。
首先,数据湖作为企业全量数据存储的中央,对数据的安全性有着至关重要的作用,如何保障湖内的数据在任何状况下,都不要呈现失落的状况,是越来越多的企业在思考的问题,同时,随着数据湖逐渐补齐交互式查问,实时剖析等能力,大量的分析师正逐渐将日常的数据分析工作转移到数据湖中,在这种背景下,一旦呈现数据湖无奈对外提供服务或者是数据失落,将会对企业产生重大影响。但另一方面,数据中心级的故障在寰球一直呈现,火灾、旱灾等各种新闻不断涌现。同时,日常运维过程中的误操作,也是时时刻刻悬在头上的一把利剑,这种状况可能比机房起火更常见,但对数据的影响却也是致命的。
每一次有新闻报道这方面的事变时,置信很多大数据平台的运维人员都是心头一紧,如何确保数据湖零碎的相对牢靠,成为越来越多企业关怀的问题。
对于一个数据湖平台,常见的故障包含:
类型 | 故障场景 |
---|---|
天然劫难 | 地震,火灾,旱灾等重大劫难导致的机房级、城市级的故障,尽管呈现概率低,但影响大,复原周期长。 |
错误操作 | 运维人员无心或无心进行的某些会影响到整个局点数据安全的操作,如数据误删除,此类场景最为常见,对数据的影响也最为致命。 |
硬件故障 | 服务器、网络类的小范畴故障,随着集群规模的增大,此类故障已成为常态。 |
数据湖个别作为大规模分布式系统,对以小范畴硬件故障类个别都已在零碎架构中有比较完善的思考,本文不做详细描述。上面次要介绍的是重大劫难以及误操作场景下,MRS 的高可用计划。
MRS 灾备计划介绍
华为云 MRS 作为寰球当先的数据湖平台,在可靠性方面已有比拟残缺的布局,为利用不同的故障场景,提供了以下三种计划:
- 数据备份:采纳 OBS 或者备 MRS 集群来作为备份存储,将要害数据备份到 OBS/HDFS 中。
- 单集群跨 AZ:采纳多 AZ 形式建设单集群,通过正本搁置策略(BPP)和 YARN 的任务调度机制的优化,确保单 AZ 故障时数据不失落,要害业务不中断。
- 异地主备容灾:别离建设主、备两个 MRS 集群,配置主备容灾关系,主集群数据周期 / 实时主动同步到备集群上。主集群故障时,将业务倒换到备集群上,确保业务疾速复原。
上面将对以上三种计划进行详细描述:
MRS 备份计划介绍:
备份计划,作为一种最根底的数据保护计划,具备成本低,计划简略的特点,特地是相比其它计划,在数据误删爱护方面,具备独特的劣势。然而,大数据业务的备份,也是非常有挑战的一项工作,次要体现在:
- 因为大数据平台的组件多,各类组件的备份计划也不对立,施行起来较为简单,特地是有些场景,还要思考组件间的数据一致性问题;
- 数据体量微小,全量备份老本高,正因如此,很多大数据我的项目都没有采纳备份计划。
华为云原生数据湖 MRS,作为企业级的数据湖平台,具备简略易用的备份治理性能,反对对接多种备份存储计划。整体备份能力如下:
在组件上,反对了 Manger、DBService、HDFS、YARN、HBase、Hive、ES、Redist、ClickHouse、IotDB 等所有波及数据的组件。同时 MRS 反对图形化的备份配置界面,用户只须要按需抉择所须要备份的数据,设置好备份周期,零碎将会主动周期进行备份,且会保障组件间数据关联的一致性,同时也反对手工一次性备份。
备份存储,MRS 反对将数据备份到备 MRS 集群或 OBS 上,对于有条件采纳 OBS 备份的场景,可优先采纳 OBS 备份,对于无 OBS 的场景,能够采纳备 MRS 集群进行备份,在此场景下,思考到老本,备集群 HDFS 能够采纳两正本。
以下是备份工作的次要治理界面:
创立备份工作时的策略抉择:
备份工作治理:
总结:备份计划,因为其在应答数据失落方面的劣势,个别会作为根底的数据保护能力,特地是其全量数据的保留能力,能够应答数据误删除的场景。
MRS 单集群跨 AZ 计划介绍
备份计划尽管能够解决数据可靠性的问题,但无奈解决业务可靠性的问题,如果产生机房机的故障,尽管数据能够从备份零碎中复原,但这时的复原周期会十分长,针对机房级的故障,如何同时解决业务和数据的可靠性,MRS 提供了单集群跨 AZ 的计划,此计划的外围是利用大数据的分布式能力,将一个 MRS 集群部署到多个 AZ 中,对于存储层的 HDFS,自动识别多 AZ,并将多正本散布在多 AZ 中,确保任一 AZ 故障,都不会导致数据失落。对于计算层,反对同一个队列跨 AZ 部署,并在一个 AZ 故障时,主动将工作在另一个 AZ 中重试,实现应用层无感知的 AZ 迁徙。
MRS 单集群跨 AZ 的部署架构如下:
如上图所示,同一个 MRS 集群会同时部署到 3AZ 中,对于存储层,通过块搁置策略(BPP) 对 AZ 的感知,将同一数据的 3 个正本,别离搁置到 3 个 AZ 中,确保任一 AZ 故障,不会造成数据失落,对于计算,通过将租户队列配置到多个 AZ 中,实现租户的利用,在一个 AZ 故障当前,依然能够在另外一个 AZ 中执行。
在跨 AZ 的的场景下,还有一个比拟大的挑战是 AZ 间的带宽,AZ 间的带宽个别会比拟无限,如何升高跨 AZ 部署的时候,对 AZ 间带宽的要求是一个不可漠视的问题,MRS 的跨 AZ 计划中,为了升高对跨 AZ 带宽的诉求,MRS 从以下三个方面,对跨 AZ 的流量进行了优化:
- 利用内的 Shuffle 流量:基于自研的 Superior 调度器,实现了失常场景下,计算工作不跨 AZ,这样,将作务运行过程中的 Shuffle 流量全副管制在一个 AZ 内,缩小了跨 AZ 的流量耗费。
- 业务数据读取流量:对于业务数据的读申请,通过基于数据本地化的调度,实现了数据从本 AZ 读取,将跨 AZ 的读流量降到接近于零。
- 业务数据写流量:HDFS 上的写流量,会有大量的临时文件、日志类的写入流量,MRS 实现了按目录配置是否须要跨 AZ,实现了只针对真正的业务数据按跨 AZ 的策略进行正本搁置。消减掉了临时文件、日志类的无用的跨 AZ 流量。
如下图所示,App1 运行于跨 AZ 队列 Queue1 上,尽管此队列关联了 AZ1 和 AZ2 的计算资源,但 MRS 自研的 Superior 调度器通过 AZ 感知调度,不会将 App1 的计算工作同时散发到两个 AZ 上同时执行,而是仅在其中一个 AZ 上执行,
而当 AZ1 故障时,Superior 会主动将此利用在 AZ2 上重跑,此时利用看到的工作状态并不会中断,也不须要进行失败重试的革新,实现了对利用的齐全通明。
同时能够看出,无论 App 运行在哪个 AZ 上,对存储层的拜访,都能够实现在本 AZ 内的闭环,并不需要跨 AZ 拜访,保障性能的同时,也升高了对 AZ 间带宽的要求。
思考到某些场景,没有足够的 3AZ 资源可用,MRS 也反对 2 + 1 的部署模式,即:两个主 AZ 加一个仲裁 AZ,仲裁 AZ 不用于理论的数据存储和业务计算,只须要几个工部署须要 3AZ 仲裁的组件,次要包含 Zookeeper、HDFS JournalNode。
针对某此 AZ 间资源不均的场景,MRS 也提供了灵便的配置能力,能够按需配置须要爱护的业务(租户)和数据(表 / 目录),只有最小的 AZ 中的资源,满足需要跨 AZ 爱护的业务和数据的资耗的诉求即可。不须要强制所有 AZ 的的资源齐全一样。
MRS 提供了简略易用的跨 AZ 部署配置界面:
集群开启跨 AZ 能力:
抉择每个 AZ 的节点:
.png)
总结:
通过在计算、存储、集群治理方面的设计,业务能够不便灵便地部署出跨 AZ 的 MRS 集群,在业务看来,跨 AZ 的集群依然是一个单集群,且在平台外部实现了 AZ 故障时的利用重试,应用层也不必进行失败重试类的革新,真正实现了对利用的齐全通明的高可用能力。
MRS 主备容灾计划介绍
尽管跨 AZ 的计划,能够解决机房级的故障,但因为单集群跨 AZ 计划对网络时延的要求,AZ 间的间隔个别只能在一个城市之内。为了应答城市级的故障场景,须要采纳 MRS 主备容灾的计划,实现真正的高可用,这里须要阐明的是,主备容灾计划,是一个端到端的计划,不是一个大数据平台层单方面能实现的,因而很多时候须要联合数据源、应用层的架构进行残缺的设计,本文次要介绍大数据平台层的主备容灾计划。大数据平台层的主备复制计划如下图:
针对主备容灾场景下,波及组件多,同步治理简单的问题,MRS 提供了对立的容灾治理能力,业务只须要将主备集群的容灾关系配置好,即可实现对所有组件的容灾爱护。
.png)
思考到容灾服务,很多时候只会针对外围数据和业务进行爱护,MRS 提供了爱护组的概念,一对主备集群,能够配置多个爱护组,用于不同业务和数据的主备爱护。
一个爱护组内,能够配置 HDFS 目录、Hive 表等各种纬度的爱护内容。
配置好爱护组当前,零碎会提供爱护组的同步状态、历史记录等治理性能。
总结:通过 MRS 的主备容灾能力,业务能够很容易地实现大数据平台的异地主备容灾能力,满足应答城市级劫难的能力,配置业务侧的主备容灾计划,真正实现业务的相对高可用。
总结:
通过下面介绍的三种计划,MRS 能够实现从简略的数据备份到跨 AZ 高可用,到异地容灾的残缺场景笼罩,撑持业务应答各种异样场景,三种计划的比照如下:
业务能够依据本身业务特点以及须要应答的故障场景,灵便抉择适宜本人的计划。如在华北某城市中,通过跨 AZ 的形式建设主集群,在华南某城市建设一个备集群。这样既能防护 AZ 级的火灾、电力故障,也能防备城市级的旱灾等重大劫难场景。
本文由华为云公布