1、 FusionInsight LibrA 2.8 可靠性技术白皮书 文档版本 01 发布日期 2018-05-05 华为技术有限公司 版权所有 © 华为技术有限公司2018。 保留一切权利。 非经本公司书面许可,任何单位和个人不得擅自摘抄、复制本文档内容的部分或全部,并不得以任何形式传播。 商标声明 和其他华为商标均为华为技术有限公司的商标。 本文档提及的其他所有商标或注册商标,由各自的所有人拥有。 注意 您购买的产品、服务或特性等应受华为公司商业合同和条款的约束,本文档中描述的全部或部分产品、服务或特性可能
2、不在您的购买或使用范围之内。除非合同另有约定,华为公司对本文档内容不做任何明示或默示的声明或保证。 由于产品版本升级或其他原因,本文档内容会不定期进行更新。除非另有约定,本文档仅作为使用指导,本文档中的所有陈述、信息和建议不构成任何明示或暗示的担保。 华为技术有限公司 地址: 深圳市龙岗区坂田华为总部办公楼 邮编:518129 网址: 文档版本01 (2018-05-05) 华为专有和保密信息 版权所有 © 华为技术有限公司 i FusionInsight LibrA 可
3、靠性技术白皮书 目 录 目 录 1 简介 1 1.1 FusionInsight概述 1 1.2 FusionInsight可靠性设计原则 1 2 系统可靠性 3 2.1 管理节点支持双机配置 3 2.2 系统的掉电可靠性保障 3 2.3 备份和恢复 3 3 节点可靠性 5 3.1 硬件健康状态监控 5 3.2 操作系统健康状态监控 5 3.3 进程健康状态监控 6 3.4 硬盘故障的自动检测 6 3.5 节点RAID组的配置 6 4 网络可靠性 7 4.1 网络隔离 7 4.2 组网可靠性 8 5 数据可靠性 10 5.1 数据持久度 10
4、 文档版本01 (2018-05-05) 华为专有和保密信息 版权所有 © 华为技术有限公司 ii FusionInsight LibrA 可靠性技术白皮书 1 简介 1 简介 1.1 FusionInsight概述 1.2 FusionInsight可靠性设计原则 1.1 FusionInsight概述 华为FusionInsight是一种高可靠性、高扩展性、高效性、高容错性、易运维的大数据管理和分析平台。作为一种新的数据平台,大数据系统存储了海量的业务数据,承载着企业的价值业务,数据的丢失、业务的中断,都会给企业带来
5、有形、无形的损失,因此系统必须充分考虑业务连续性的要求,实现高可靠性。 本文将对华为FusionInsight的可靠性技术和基本设计原则进行分析和介绍。 1.2 FusionInsight可靠性设计原则 华为FusionInsight在可靠性方面遵循如下设计原则: l 所有对象的故障都有自动恢复措施,包括集群管理节点,计算节点,进程,服务容器,服务实例等。 l 通过监控业务成功率等手段,避免单个节点/进程的亚健康、僵死导致业务全中断。 l 提供服务质量保障能力,实现租户资源隔离和任务优先级调度,避免不合规的用户业务导致系统业务全阻塞。 按照上述原则,FusionInsight对
6、社区版本进行了大量的可靠性增强。例如: l 华为FusionInsight产品的OMS Server、数据库等管理节点,全部采用主备或负荷分担配置,避免单点故障。 l 针对系统掉电后可能发生文件损坏的问题,FusionInsight对数据写入的全路径进行了优化,确保系统异常掉电后,业务仍能可靠地启动。 l FusionInsight支持对节点亚健康状态的侦测,在紧急状况下,部署认证服务的关键节点自动重启节点以恢复业务。 l 支持管理平面与业务平面的网络隔离,防止业务平面的高负载对集群管理通道造成冲击。 通过这些措施,系统的数据持久度、业务可用性都得到了极大提高。 文档版本01
7、2018-05-05) 华为专有和保密信息 版权所有 © 华为技术有限公司 2 FusionInsight LibrA 可靠性技术白皮书 2 系统可靠性 2 系统可靠性 2.1 管理节点支持双机配置 2.2 系统的掉电可靠性保障 2.3 备份和恢复 2.1 管理节点支持双机配置 华为FusionInsight产品对所有业务组件的管理节点,都实现了双机机制,这包括OMS Server、数据库、Kerberos Server、Ldap Server等,它们全部采用主备或负荷分担配置,有效避免了单点故障场景对系统可靠性的影
8、响。 2.2 系统的掉电可靠性保障 FusionInsight对数据写入的全路径进行了优化,确保系统异常掉电后,业务仍能可靠地启动。不论是单节点意外掉电,还是整个集群意外断电,恢复供电后,系统都能正常恢复业务,关键数据不会丢失。 这里的关键数据至少包括: l 操作系统启动和正常运行所需的文件; l 为业务组件提供的基本运行环境(如JDK); l 启动和运行业务组件所需的文件,包括程序文件、配置文件等; l 由用户输入的、长期生效的配置信息,如用户账户信息/权限信息,上级网管的SNMP对接地址等。 2.3 备份和恢复 FusionInsight产品支持对OMS Server
9、Ldap Server数据、LibrA表、数据库、集群进行备份。 数据类型 备份内容 支持的方式 集群管理系统(OMS Server) 备份OMS Server所使用的数据库及本地文件。 l 自动/周期/手动备份数据到OMS Server本地硬盘。 Ldap Server数据 备份用户信息,包括用户名、密码、密钥、密码策略、组信息。 l 自动/周期/手动备份数据到OMS Server本地硬盘。 LibrA数据库对象 备份的对象包括:数据表、数据库、集群信息。 l 通过界面按需配置需要备份的对象信息。 l 备份集群、表、数据库对象到数据库所在节点的本地硬盘。 l 备
10、份集群、表、数据库对象到数据库所在节点的NBU。 文档版本01 (2018-05-05) 华为专有和保密信息 版权所有 © 华为技术有限公司 4 FusionInsight LibrA 可靠性技术白皮书 3 节点可靠性 3 节点可靠性 3.1 硬件健康状态监控 3.2 操作系统健康状态监控 3.3 进程健康状态监控 3.4 硬盘故障的自动检测 3.5 节点RAID组的配置 3.1 硬件健康状态监控 FusionInsight运行在通用x86服务器上。商用x86服务器一般都会支持IPMI规范。IPMI即
11、智能平台管理接口(Intelligent Platform Management Interface),是管理基于Intel架构的企业系统所采用的一种工业标准。 FusionInsight通过调用IPMI接口,监视服务器的物理健康特征,如温度、电压、工作状态、电源状态等。如果发现异常,FusionInsight会作为节点的亚健康状态上报,维护人员可根据节点故障对系统的威胁程度和紧急程度,安排相关硬件的检修计划(例如,在100个节点的集群中,损坏2个不同环中的数据节点对业务是没有任何影响的,可以延迟修理;但如果损坏了2个同一环中的数据节点,系统就可能停止服务了,需要紧急处理)。 Fusion
12、Insight当前可监控的硬件状态包括:处理器状态、交流供电状态、直流电源模块状态、内存状态、硬盘状态、电池状态等。但具体的支持项,还取决于x86服务器硬件供应商。 3.2 操作系统健康状态监控 FusionInsight运行在Linux操作系统上(当前支持SUSE和Redhat的企业版Linux)。如果操作系统不正常,可能导致该节点上的业务实例长期处于亚健康状态,影响集群的运作。 FusionInsight对操作系统采取了多种监控措施: l 支持对节点运行状态的监控。如果节点进入假死状态,严重影响业务的运作,就会自动执行节点复位,迅速恢复业务。 l 支持对操作系统内核参数进行微调
13、在操作系统出现致命异常,如内存耗尽、非法地址访问、内核死锁、调度器失效时,重启操作系统,恢复业务。 l 周期采集节点上各类硬件资源运行状况的数据,包括处理器状态、内存状态、硬盘状态、网络状态等,如果发现异常,FusionInsight会作为节点的亚健康状态上报,携带相关的异常指示信息,如“CPU过载”、“内存过载”、“发现慢盘”、“TCP重传率越限”等,维护人员可据此对相关节点的操作系统状态进行检查,排除故障。 3.3 进程健康状态监控 FusionInsight在各节点上都部署了代理进程,负责监控业务实例的状态。如果业务实例进程故障,代理进程会尝试自动重启对应的业务实例进程,如无法
14、启动,会向OMS Server发送告警。 代理进程会周期向OMS Server发送心跳。如果代理进程故障,OMS Server也会检测到异常,发送节点故障告警,并尝试自动重启对应的代理进程。 3.4 硬盘故障的自动检测 大型LibrA集群中,硬盘数量可能高达成百上千。由于机械硬盘的故障率偏高,系统运行一段时间之后,故障硬盘就会不断出现。 FusionInsight会监控各节点上的硬盘状态,以及文件系统状态,如果出现异常,立即上报告警,通常情况下Raid组能自动修复,就不需要人工干预,如果不能自动修复,需要人工干预,这种可靠性保证机制,可以提前告知用户进行磁盘修复,不至于没有监控,没人
15、工干预,导致数据丢失,造成不必要的损失,有利于提高系统的可靠性。 3.5 节点RAID组的配置 FusionInsight建议按照实际业务需要,合理规划节点的硬盘资源,以提高系统对硬盘故障的抵御能力。 1. 各节点的操作系统,建议安装在两块硬盘做成的RAID 1上,以保障系统盘的稳定,避免一块盘损坏就导致操作系统崩溃,整个节点不可用。 2. 如果条件允许,管理节点关键进程使用的硬盘(如Manager数据库等)尽量做成RAID 1,以保证元数据的可靠性。读写模式差异很大的业务组件,应当避免共用同一块硬盘。 3. 数据盘(LibrA数据盘)可以做成单盘RAID 5(即每个RAID 5组
16、内至少要3块硬盘)。RAID组内的硬盘自身具有容错能力,如果一块硬盘坏掉,可以自修复,数据丢失几率大大降低,保证可靠性提升。 文档版本01 (2018-05-05) 华为专有和保密信息 版权所有 © 华为技术有限公司 6 FusionInsight LibrA 可靠性技术白皮书 4 网络可靠性 4 网络可靠性 4.1 网络隔离 4.2 组网可靠性 4.1 网络隔离 LibrA是分布式计算系统,要求业务节点之间全互联。为应对由此带来的可靠性、安全性风险,FusionInsight支持将网络划分为三级:集群业务平面、集群
17、管理平面和集群外维护网络,彼此之间实施物理隔离,保证业务网络、管理网络的独立运作。 实施网络隔离,可以防止业务平面的高负载对集群管理通道造成冲击,也可以阻止外部攻击者通过管理通道入侵实际业务数据。 网络类别 信任程度 网络负载 说明 集群业务平面 高 高 LibrA集群核心部件,业务数据在其中存储、流转。 集群管理平面 中 中 仅具备集群管理功能,不接触实际的业务数据。 集群外维护网络 低 低 仅能访问OMS Server提供的Web服务,除非连续攻破OMS Server和APP Server,否则无法访问业务数据。 4.2 组网可靠性 在典型配
18、置下,FusionInsight集群采用三层双平面组网。各服务器节点采用双网口Bonding方式(每节点一个业务IP地址),分别接入到两个接入层交换机,提供可靠性和负载均衡。业务平面的接入层和汇聚层分别用两套交换机通过堆叠线互联提供可靠性保障。这样,无论是节点的单个网口故障,还是网口与交换机之间单条连线故障,或者单个交换机故障,都不影响业务的运行。 进一步的细节,可以参见《硬件部署和组网方案指南》的说明。 文档版本01 (2018-05-05) 华为专有和保密信息 版权所有 © 华为技术有限公司 9 FusionInsight Libr
19、A 可靠性技术白皮书 5 数据可靠性 5 数据可靠性 5.1 数据持久度 5.1 数据持久度 FusionInsight通过对节点硬件(特别是硬盘)、操作系统、进程的监控,及时发现相关部件的异常状况,缩短了对应部件的故障检测时间和修复时间,从而提高了系统整体的数据持久度。 LibrA采用主、备、从部署架构(进程写数据),且三种角色都分别位于不同的主机,如果主进程down掉,可以快速的将进程切换到备上,备升主,接替主的业务,如果备坏掉,备的任务会切到从备上,从备接替备的任务,备机修好后,系统会自动同步从备上的数据到备,备又切回原来的角色,继续工作;数据可靠性:主写数据时候会将redo日志自动同步写到备上,写成功,返回成功,写失败,整个事务失败,这样就保证了主和备两份数据,保证了集群中数据可靠性。 文档版本01 (2018-05-05) 华为专有和保密信息 版权所有 © 华为技术有限公司 10






