- DOI:
10.13738/j.cnki.acc.qklw60536
- 专辑:
科学Ⅰ辑;信息科技
- 专题:
信息、科学;综合科技
- 分类号:
G90;N92
摘要:当前铁路行业信息化发展迅速,各级别信息系统支撑着铁路的多数业务系统运行,当信息系统发生故障时会对一定区域范围的业务产生影响,有效地定位和隔离故障区域对于保障业务安全稳定运行至关重要,本文主要针对铁路信息系统故障域的定义、故障域的划分方法、故障域的影响范围等方面进行研究,通过故障隔离、控制故障域蔓延等技术实现业务安全稳定运行,为铁路信息系统安全稳定提供有效保障。
关键词:故障域 可用区 边界划分 故障隔离 故障蔓延
Research on Key Technologies of Fault Domain Based on Railway Information System
Liu Tianyu, Wang Jingyan
China Railway Information Technology Group Co.,Ltd Beijing 100844
Abstract:The current rapid development of informationization in the railway industry is supported by information systems at all levels, which support the operation of most railway business systems. When the information system fails, it will have an impact on the business within a certain area. Effective positioning and isolation of the fault area is crucial to ensure the safe and stable operation of the business. This article mainly focuses on the definition of the fault domain of the railway information system, the method of dividing the fault domain, and the scope of the impact of the fault domain. Through technologies such as fault isolation and control of fault domain spread, the safe and stable operation of the business is achieved, providing effective guarantee for the security and stability of the railway information system.
Keywords:Fault domain Boundary division Available Area Fault isolation Fault propagation
中图分类号:U29:TP39
前言
近年来,信息系统(Information Systems, IS)领域的发展经历了显著的变化和创新,云计算、大数据、人工智能、物联网、区块链等技术的应用,极大地推动了信息系统在各行业的变革,其中,系统的区域划分、功能模块化、分布式架构等技术成为信息系统中研究的热点方向,并逐渐应用到各行业信息系统建设当中。在铁路信息系统中,故障域的概念越来越受到广泛的关注,故障域对于系统的故障定位、故障隔离、抑制故障蔓延等方面均有着重要的意义,对保障信息系统安全稳定运行发挥着巨大作用。
在既有的故障域研究中,研究方向主要集中在SDN控制器和分布式存储两大领域[1],SDN控制器的故障域一般通过状态图模型和扩展状态图的方法结合仿真实验来确定故障域的相关信息[2-4],从时间维度和业务维度关联对其影响范围进一步分析[5],监控层面通过多域架构结合延时算法实现故障检测、快速定位和切换[6-9]。分布式存储故障域主要是基于ceph的分布式存储,通过对区域数据容错和数据恢复等方面进行研究[10],结合数据冗余部署策略,实现故障修复、区域系统稳定,保证分布式存储服务质量[11-12]。
当前铁路行业信息系统对于故障域的研究较少,业务系统架构主要以平面化和固定化的模式来设计建设,系统的灵活度、冗余性、安全性、高可用性等仍有待提高。本文主要针对铁路行业信息系统中故障域的相关内容进行研究,为铁路信息系统运行和运维提供更加安全、高效、稳定的服务。
1 铁路信息系统故障域定义
1.1故障域
故障域是指在信息系统中,可能导致数据中断或服务不可用的故障来源所处的特定物理区域或逻辑区域。具体来说,故障域通常由一组设备、服务器、网络组件或子系统组成,这些元素在功能上是相互依赖的。当其中的某个设备发生故障时,可能会导致整个故障域的服务中断,从而影响到数据的可用性和业务的连续性。合理划分故障域,并采取相应的冗余和备份措施对保证业务连续性非常重要。
故障域类型 | 物理层 | 逻辑层 | 应用层 |
故障域分类 | 服务器 | 网络平面 | 单一功能组件 |
存储 | 计算资源池 | 单一应用服务 | |
机柜 | 存储资源池 | 应用组 | |
机柜列 | 服务节点 | 应用集群 | |
机房 | 数据库节点 | 单中心应用 | |
数据中心… | 容器Node… | 跨中心应用… |
表1 常见的故障域类型和划分
1.2可用区
根据故障域的概念,进一步可引出可用区的定义。在信息系统中,可用区是指保证数据或服务连续性的物理区域或逻辑区域,通常由多组设备或多个子系统组成。一个可用区内应包含2个或以上故障域,保证单个故障域内的故障不影响整个可用区的业务功能,提高整个系统的可用性和容错性。可用区是信息系统设计中的重要组成部分,通过合理的规划和实施,可以大大提高系统的可用性和容错能力。选择和管理可用区时,需要综合考虑业务需求、成本以及系统架构的复杂性。
1.3故障域类型
(1)物理概念
故障域可以根据其性质分为物理故障域和逻辑故障域。物理故障域主要涉及硬件层面,如数据中心中某一机房的特定机架、网络设备、存储设备等。例如,某个网络交换机的故障可能会导致连接到该交换机的所有设备失去网络访问,从而形成一个物理故障域。
(2)逻辑概念
逻辑故障域则指的是软件层面的故障,比如应用程序、数据库、中间件服务等逻辑区域。在逻辑故障域中,某个应用程序的崩溃可能会影响到依赖于该应用的其他服务,但不会影响到系统的其他部分。
1.4业务连续性
通常会将相同业务或功能的故障域部署在同一可用区中,以确保业务应用在面对硬件故障、系统异常、应用障碍等问题时仍能对外正常提供服务,保持业务连续性。故障域和可用区是相对概念,故障域会由于故障蔓延扩散至上层可用区,此时该可用区变为更大范围的故障域。如果这个故障域是唯一区域,则没有其余可用区,就可以认为该故障已没有冗余,会影响到整个业务环境。
在一个完整的体系中,可用区通常是相互独立的,这意味着一个可用区的故障不会影响到其他可用区。这种独立性通过物理和网络隔离实现。在大型云服务提供商(如AWS、Azure等)中,可用区通常分布在不同的地理位置内,以防止因自然灾害或其他区域性事件导致的服务中断。通过在多个可用区中部署应用程序和服务,即使某个可用区出现故障,其他可用区仍可继续提供服务,增强系统的整体可用性。也可以在多个可用区之间分配负载,从而提高性能和资源利用率。保障业务连续性的需求。
2 故障域边界划分
信息系统故障域的边界划分是确保系统可靠性和可用性的关键因素,可以根据故障范围对业务系统的影响进行划分,根据业务需求和系统架构的复杂性,灵活调整故障域的边界,合理的边界划分可以帮助快速定位问题并减少故障对整个系统的影响。
2.1物理位置
信息系统故障域的物理位置划分是确保系统可靠性和高可用性的重要策略。划分故障域物理位置时需要考虑多个关键因素。
从地理位置上可划分分为不同级别,数据中心级是将不同的数据中心作为独立的故障域,确保某个数据中心的故障不会影响到其他数据中心的正常运行。区域划分级可以按照地理区域(如城市、国家)进行划分,以防止自然灾害或区域性故障影响整个系统。
从机柜和设备层面,机柜划分是在同一个数据中心内,可以根据机柜区域进行划分,确保某个机柜的故障不会导致其他机柜的服务中断。物理设备是将关键设备(如服务器、存储设备等)分散部署在不同的机柜中,以降低单点故障的风险。以下图为例,集群内每台主机为一个故障域,一份数据的不同副本或分片分布存储在不同的主机中(可在同一个机柜中),这种情况下,故障域级别为“主机级”;集群内每个机柜为一个故障域,一份数据的不同副本或分片分布存储在不同的机柜中,这种情况下,故障域级别为“机柜级”,通常集群规模较大、机柜较多的情况下会选择这种部署模式。

图1“主机”故障域

图2“机柜”故障域
从网络拓扑层面来说,网络分段通过合理的网络拓扑设计,将不同的网络段划分为独立的故障域。可以使用 VLAN、子网等技术实现逻辑隔离。冗余网络是通过配置冗余的网络路径,确保某个网络设备故障时,流量能够自动切换到备用路径。
从安全隔离角度区分,物理安全隔离是在物理位置上对不同故障域增加安全设备实施安全隔离,防止未授权访问。访问控制隔离是根据故障域的敏感性,实施分级访问控制,确保只有经过授权的人员才能进入指定区域。
合理的故障域物理位置规划有助于信息系统有效的控制故障范围和快速恢复。例如,在铁路信息系统的某财务类资金结算系统中,应用服务器由于早期资源分配不均衡,导致在全部应用服务器中,Vmware虚拟机资源较多,而铁信云虚拟机资源仅有一少部分,在一次Vmware底层资源池发生故障时,造成大部分Vmware虚拟机承载的业务无法正常使用,仅有铁信云虚拟机可正常对外提供服务,虽然业务层面并未中断,但整体业务服务性能下降,降低用户使用体验。故应用在建设初期应考虑好资源划分区域、资源合理分配,保证应用具有较高的可靠性。此后的铁路信息系统建设过程中,在资源分配时,集群中的虚拟机均按照Vmware和铁信云资源平均分配的原则,后续在应用系统稳定性上较之前有了明显的提升。
信息系统物理位置的合理划分是构建高可用性信息系统的基础。通过科学的故障域划分,可以显著降低故障带来的风险,提高系统的整体稳定性和可靠性。在设计和实施过程中,定期评估和更新故障域物理位置的划分也是重要的一环。
2.2网络分割
在信息系统中,故障域的网络分割是确保系统高可用性和可靠性的关键措施。网络分割通过将网络划分为多个逻辑区域,降低了单点故障的风险,提高了故障隔离能力。不同层面的网络划分对于故障的定位和范围确认也会有不同的结果。
虚拟局域网(VLAN)通过VLAN技术,可以在同一物理网络上创建多个逻辑网络,每个VLAN相互独立,广播流量只限于同一VLAN,根据不同的部门或业务需求,将网络设备划分到不同的VLAN中,从而减少广播风暴,提升安全性。
子网划分通过IP子网将网络划分为多个子网,每个子网拥有独立的IP地址段,通过子网掩码进行管理和隔离,并由路由器或防火墙控制不同子网之间的流量,减少潜在的故障影响范围。
冗余网络路径可通过双重网络架构来实现,确保在一条路径发生故障时,流量能够自动切换到备用路径,通常使用负载均衡器将流量分配到多个网络路径,提高系统可用性和性能。
服务网格通过微服务架构实现系统搭建,通过服务网格技术实现服务之间的通信管理和故障隔离,利用服务网格实现流量分发、重试和熔断等策略,提高系统的弹性和可用性。
网络分割策略可根据业务重要性和流量特征,设计合理的网络分割策略,确保关键应用与非关键应用相互隔离,并定期审查和调整网络分割策略,以适应业务变化和网络流量特征的变化。
在以往的铁路信息系统建设过程中,网络架构相对单一,稳定性不高,为解决这一问题,在主数据中心二期工程和新一代铁路信息网络的建设中,根据《“十四五”铁路网络安全和信息化规划》和《数字铁路规划》有关要求,进一步完善了网络架构和网络资源布局,在多数网络核心设备和线路上增加了冗余或备用网络设备,保证系统网络的高可用性和安全性,提升了纵深防御能力和资源配置运用能力。
铁路信息系统的网络分割是提升系统可靠性的重要手段,通过合理的网络分割策略,可以有效降低故障传播的风险,提高系统的安全性和可用性,在实施过程中需要结合具体业务需求,持续监控和优化网络架构。
2.3服务或应用边界
在信息系统中,故障域的服务或应用边界划分是指,根据发生故障时对系统整体影响的程度来规划系统中各个服务或组件的边界,合理的服务应用边界设计可以提高信息系统的可靠性和可维护性,通过微服务架构、冗余设计和监控管理等措施,可以有效控制故障影响范围,确保系统在故障发生时的快速恢复。
合理划分故障域并采取相应的冗余和备份措施是确保业务连续性的关键。服务和应用的边界划分主要可以从横向和纵向两个方面来划分,横向划分是指将应用从底层至顶层按层级分层,同一层级的资源划分为一个故障域,纵向划分是指将应用中不同模块不同功能的子应用单独划分,每个单独的功能模块自下而上为一个故障域。
铁路某人事管理系统是横向划分故障域的典型案例。原有系统将多个功能整合为一个整体应用,没有功能划分和模块化架构的设计,造成某一故障域发生故障时,会引起整个功能失效,从而影响全部业务正常使用。经过横向划分故障域后,应用的部署按照逻辑分为前端服务、中台服务、后台服务,分别部署在不同集群中,集群包含多个节点保证自身高可用性,即使某一集群发生故障,也只会影响应用的部分功能,保证应用大部分功能可用,缩小故障范围。
铁路某财务账表类系统是纵向划分故障域的典型案例。在原有的系统设计中,不同功能应用均部署在同一集群环境下,这种部署模式会导致集群中某功能异常时,该功能无法对外提供正常服务,进一步可能会引发集群性能下降,从而影响到该集群内其他应用的可用性,系统整体的安全性和稳定性较差。通过纵向划分故障域,应用服务部署到18个不同的集群中,每个集群为一个路局提供多个功能服务,这种部署模式大大提高应用的安全性,每个集群中包含多个节点,保证集群自身高可用性,即使某一集群发生故障,只会影响到某一路局的某个功能模块,其他路局业务则不受影响,有效缩小了故障范围。
铁路信息系统故障域的合理划分和管理在信息系统的设计与运维中起着关键作用,不仅可以提高系统的可靠性和可用性,还能为企业提供稳定的业务支持。
3 故障域影响范围
故障域的影响范围对于系统设计和维护具有重要意义。从影响范围来说,可分为以下三种,局部影响是故障只影响特定的服务或组件,例如单个微服务的失效,不会影响到整个系统的其他部分。区域性影响是故障可能影响到同一数据中心或同一网络区域内的多个服务。例如,网络故障可能导致多个依赖该网络的服务不可用。全局影响是某些故障可能导致整个系统瘫痪,例如数据库主节点的故障或者核心服务的失效。
3.1跨故障域部署
为了降低或消除故障对业务系统的影响,数据或服务可以跨多个故障域进行部署。这种方法使得即使某一个故障域发生故障,其他故障域仍能保持正常运行,或者通过模块化与解耦等技术,将系统拆分为不同的服务,降低模块间的耦合度,从而减小故障的影响范围,确保业务的持续性和稳定性。
例如故障域为机柜中的某台主机时,可将某应用部署在同一机柜中的不同主机上,当其中某一主机发生故障时,另一主机仍能对外提供服务。
图3 “主机”级故障域示意图
故障域为某一机柜时,可将某应用部署在两个不同机柜中,当其中一个机柜发生故障时,另一个机柜仍能对外提供服务。
图4 “机柜”级故障域示意图
在实际的业务部署中,应根据业务需求和实际使用场景将业务部署到不同的故障域内,以保证业务能够安全稳定运行。
3.2故障隔离
故障隔离是指在信息系统发生故障时限制故障对系统其他部分的影响。在故障域中,通过将系统划分为多个独立的区域,可以有效地控制和管理故障。确保一部分系统的故障不会影响到其他部分,从而提高系统整体的可靠性。在隔离上可使用不同的硬件资源进行物理层面的隔离,也可通过虚拟化技术,创建独立的虚拟环境进行逻辑层面的隔离。多数云服务提供商均会采用某些故障隔离策略,通过多个可用区或数据中心来提高服务的可靠性和可用性,从而实现在某个区域发生故障时,可以快速定位并恢复,同时限制故障的影响范围,确保系统的其他部分正常运作。
3.3故障蔓延
故障蔓延是指在故障发生时,某些情况下,故障会通过服务间的依赖关系传播,导致一处故障引发故障规模不断扩大,进而影响到其他服务和组件,导致系统其他部分也出现故障。例如,某个服务的一个实例由于过载出现故障,导致其他实例负载升高,从而导致这些实例像多米诺骨牌一样一个接着一个出现故障,针对这一问题,可通过下述方法来解决。
(1)资源隔离
通过硬件或物理层面的手段来实现资源的分隔。例如,不同的服务器、不同的数据存储设备等物理资源用于不同的任务或用户。这种隔离方式通常适用于高安全性要求的场景。也可通过虚拟化技术在单一物理硬件上创建多个虚拟环境,确保每个环境相对独立运行,从而实现独立运行的环境相互之间不发生干扰。
对于资源抢夺造成服务内、服务间的故障传播,可以通过线程池隔离、数据库连接池隔离、消息通道隔离等方式进行管理,从而实现故障发生时快速隔离故障区域。
(2)服务冗余容错
信息系统中冗余容错是确保系统高可用性和可靠性的重要策略。通过冗余和容错机制,可以在部分组件发生故障时,保持系统的正常运行。
在数据冗余中,数据备份是指定期备份关键数据,使用增量备份或全量备份策略,确保数据在故障发生时可以恢复。数据库复制是使用主从复制或多主复制架构,确保数据在不同节点间保持一致,提高数据的可用性。
在应用层容错中,重试机制是在应用层实现重试逻辑,对于短暂的故障进行自动重新启动。熔断器模式是使用熔断器设计模式,在系统组件发生故障时,自动停止对故障组件的调用,防止故障扩散。
在分布式系统中,微服务架构是将应用程序拆分为多个独立的微服务,服务之间相互隔离,单个服务的故障不会影响整体系统。健康检查是指通过健康检查机制,动态管理服务实例,确保请求总是发送到可用的服务上。
在主数据中心二期建设中,云平台的搭建主要包括生产区、开发测试区、运维管理区,在保证自身区域高可用性的前提下,按照不同的功能进行区域划分,可有效地将故障范围控制在较小的故障域内,防止故障快速蔓延,提高云平台的安全性。
确定信息系统故障域的影响范围有助于制定有效的系统架构和故障处理策略,从而提升系统的可用性和可靠性。通过合理设计、实时监控,明确业务部署模式,故障发生时快速隔离,抑制故障蔓延,可有效降低故障对系统整体的影响。在未来铁路信息系统的建设中,应尽可能的实现各层级的冗余能力,提升系统的高可用性和安全级别,自下而上的从网络层、服务器层、应用层等层面到数据中心的某机柜、机房、同城数据中心、异地数据中心、灾备数据中心等各环节都应设计不同级别的冗余措施,从而实现故障域的合理设计和管控,建设更加安全稳定、高可用性的业务信息系统。
4 结束语
铁路信息系统故障域研究的意义在于提升系统的可靠性、可用性、安全性和扩展性。通过有效划分和管理故障域,铁路信息系统可以实现高容错性、高可用性和高安全性的目标,减少故障影响,优化资源配置,增强灾难恢复能力,并提升故障诊断与恢复效率。本文对于铁路行业信息系统在未来的建设和发展中提供了一些新的设计思路,更好地保障铁路行业信息系统的运维安全,为铁路行业信息化的发展夯实基础。
参考文献
[1] 赵会,吕光宏,杨洋,贾创辉. SDN 故障分析研究综述[J].计算机应用研究2020,37(10):2895-2901.
[2] 曹德建,黄志球,陆陈,陈光颖,仵志鹏.将故障信息扩展到功能模型的安全性分析方法研究[J].小型微型计算机系统 2016,37 No.1:24-32.
[3] 向波,俞黎阳. SDN多控制器容错机制的研究与设计[J].计算机工程与应用2018,54(23):81-88.
[4] 王文胜. SDN控制器故障恢复部署与交换机流表溢出缓解机制研究[D].河北大学,2020.
[5] 谢青,叶坚栋。一种跨域故障分析的方法及系统: WO2022/105675Al 27.05.2022
[6] 晏思宇.基于OVS的SDN可靠性研究[D].北京邮电大学,2016.
[7] 朱兴浩.多域SDN中控制器的快速故障切换机制研究[D].重庆邮电大学,2017.
[8] 樊自甫,杨先辉,姚杰.基于SDN架构的控制层故障恢复算法[J].重庆理工大学学报(自然科学),2020,34(5):173-180.
[9] 马裕城,李灵,潘卓夫.用于故障检测和识别的域迁移生成对抗网络[J].第33届中国过程控制会议.中国新疆乌鲁木齐,2022-07-29.
[10] 娄红敏.基于Ceph的分布式存储系统跨机架修复技术优化[D].北京邮电大学,2019.
[11] 刘榴.分布式存储系统容错机制的研究与实现[D].上海交通大学,2018.
[12] 齐一川.分布式存储系统可靠性的仿真与优化方法研究[D].华中科技大学,2020.
通信作者:刘天宇
地址:北京市海淀区北蜂窝路5号院1号楼6层,邮编100844
联系电话:15201017706
E-mail:454571062@QQ.com
论文项目:中国国家铁路集团有限公司科技研究开发计划重点课题(N2023S013)。
第一作者:刘天宇,工程师。
第二作者:王景艳,高级工程师。
相关文献推荐
- 节点文献
- 读者推荐
- 相关基金文献
- 关联作者
- 相关视频
- 批量下載
