移动云故障快速恢复能力的建设经验分享——中国移动云能力中心SRE部/安全部副总经理朱文鹏
来源:《华为云SRE确定性运维专刊》第三期
作者简介:朱文鹏,现任中国移动云能力中心SRE部/安全部副总经理,主导移动云运维体系建设。自移动云改以来,带领移动云运维团队全面向SRE模式转型,开创了移动云规模化运维的发展局面,有力地保障了云上客户的用云体验,为移动云快速发展提供了强有力支撑。
一、序言
移动云上承载了大量的党政军、交通、疫情防控等民生业务,云服务的稳定运行成为保障云上业务连续性的必要前提。基于客户的业务连续性诉求,我们清晰的认识到故障快速恢复能力是稳定性建设过程中的重中之重,故障越快恢复,客户的业务损失就越小,这也是移动云提供客户业务护航的必要承诺。
二、故障处理理念的变化
中国移动自2019年启动“云改”战略,将“移动云”作为全集团的战略性基础业务,推动移动云实现了跨越式发展。2022年上半年移动云收入达234亿元,同比增长103.6%。IDC披露的2022年Q3数据,公有云市场份额位列第6。
持续保持高速发展的前提下,也愈发凸显出故障处理能力的瓶颈。云改初期,移动云采用“先发现、再定位、后恢复”的故障处理模式,但随着架构复杂度的提升,故障处理难度越来越大,从移动云近两年的故障处理时长数据看,依靠传统模式处理故障的时长已经无法满足客户诉求。因此,压缩故障处置时长,启用快恢手段,成为移动云故障处理模式转变的核心思路。
三、移动云故障快速恢复能力的建设思路
(一)建设思路
故障快速恢复能力的建设落地,是依靠产品能力和运维手段相辅相成的结果,我们按照“可观测能力、诊断分析工具、快恢场景”三个方面来打造故障快速恢复能力,实现向“故障发现、分析定界、快速恢复”模式的转变。
(二)分阶段推进快恢能力落地
1、可观测能力的建设思路
可观测能力的建设,并不是简单的提升监控覆盖度,传统的监控仅能做到故障的被动发现。而面向上层的业务系统,我们的目的不止是为了单纯的发现故障,而是在大量的监控数据中抽丝剥茧,对业务系统的运行状态进行观测感知,并辅助运维人员主动识别业务系统的健康度,提前介入防止事态的扩大,这也意味着发现能力的建设要着重于对业务系统运行时的理解、探查以及推导能力。
移动云故障发现能力的建设思路是通过指标(Metrics)、链路(Tracing)、日志(Logging)三融合,通过和监控告警的对接,提升根因告警的识别能力。
1)指标(Metrics)主要是面向监控对象,通过监控花名册的方式,持续梳理完善提升监控覆盖度。我们会对监控对象进行分层管理,按照“状态”、“性能”、容量”、“用户体验”,实现从底层到客户业务监控的端到端覆盖,这里需要特别关注“用户体验”指标,我们引入的黄金指标概念,采用双向故障发现的模式,通过建立业务黄金指标动态基线、基础资源的健康度模型,实现云平台和客户业务的上下监控联动。
2)链路(Tracing)主要是建立全链路跟踪能力,强化链路探测及分析,我们按照网络链路和业务链路两个方面构建相关能力。网络链路提供全链路探测和网络异常定位的回溯分析能力,通过云内外定界探针、云内拨测分析、网络回溯分析来实现。业务链路以应用维度将全量运维数据可视化呈现,通过业务系统拓扑可视化、核心调用链及调用链告警,协助故障发现快速定界。
3)日志(Logging)的能力主要是辅助对齐告警信息,并提供日志聚合检索能力。重点是进行日志的结构化调整,同时将核心日志进行单独的存放。我们会对日志进行采集存储并分析,通过可视化来展示结果。
最终我们将指标、链路、日志进行融合,基于服务、资源、业务等多维度关系图谱,进行去重、归并、汇聚处理,识别生成核心告警,形成业务系统的稳态观测能力。同时我们也建议,针对可观测能力需要开展长期的运营工作,以覆盖度、准确性等指标为导向,由专职团队持续打磨提升。
2、诊断分析工具的建设思路
我们认为故障定位是强依赖运维人员能力和经验的,然而在云化架构下,往往一个故障可能是由于多个原因引起,虽然具备调度机制,但协同定位还是存在人员能力的差距导致流转反复的问题,需要通过自动化手段来解决。
在可观测能力的基础上,需要进一步增强告警关联性策略建设,我们的思路是将人工分析经验固化成自动化诊断分析工具,通过历史故障场景的梳理,形成诊断经验库,核心告警触发后会自动进行异常问题定界分析决策,根据预案索引,自动推送预案或自动化执行。
3、快恢场景的建设思路
移动云的快恢场景的建设是面向客户业务,将应急处理能力前置到上云方案、产品系统和全局架构中,提供客户业务逃生通道,实现从传统故障处理模式向“冗余切换”、“容灾迁移”、“流量绕行”、“限流”、“熔断”以及“降级”等快速恢复业务的模式转变。
1)冗余切换基于业务系统架构的冗余部署来实现,重点关注业务系统和网络架构的冗余情况,常态化开展单点部署的检查,并通过演练的形式确保切换的生效率。
2)容灾迁移重点是针对业务系统自身的迁移能力来实现,我们一方面会利于移动云的跨AZ高可用架构,推动客户业务容灾部署。另一方面通过持续打磨业务系统的迁移能力,确保多活架构在极端情况下持续服务。移动云目前在管理面、业务面的跨资源池容灾已经达到了分钟级的迁移能力,并在持续完善数据面的容灾架构。
3)绕行按照单业务网元绕行和网络路径绕行两方面构建场景,单业务网元绕行主要视网元设备是否具备绕行能力,针对具备无损绕行能力的设备采用流量绕行方案,有损绕行的网络设备需要明确绕行风险制定绕行方案,针对不具备绕行的网元设备则需要进一步提升产品和架构能力。网络路径绕行主要是针对多AZ环境下的跨云主机、跨AZ出口访问的场景,以及对象存储、云数据库等公网绕行至管理域网络的场景。现阶段移动云的绕行建设是结合历史的故障场景,未来还需不断积累补充。
4)移动云的限流能力建设按照业务系统和网络限流两方面开展,业务系统在数据面上通过对组件、接口的流量(请求)控制进行限流;数据面采用单用户配额限制、租户级别流控、租户隔离等方式实现;同时因局部故障导致性能下降时,服务能够按照功能、接口、租户类别进行限流,并在故障恢复后,服务能够自动恢复或丢弃队列中超期请求以达到自恢复能力。网络限流采用的是基础网络和虚拟网络限流相结合的方式,通过对基础网络构建引流的能力,结合DPI进行应用层的分析检测,实现带宽控制;虚拟网络方面,对客户业务构建基于资源规格的限流能力,通过对计算、网络产品的带宽、会话参数限制,实现整体的限流能力落地。对于应用连接,利用负载均衡系统连接数限制和重新定向能力,实现面向业务连接的限流应急能力。
5)熔断能力是面向移动云的产品系统,我们会协同研发人员,通过在产品系统上构建快速“失败”的机制,避免请求大量阻塞。
6)我们会在产品业务上构建降级能力,以牺牲某些业务功能为代价,保障更关键的业务。降级能力构建的前提,需要开展产品系统间的依赖梳理和治理,根据对接的应用类依赖实现调用熔断和业务降级功能。
基于快恢能力的建设,还需要配套形成场景化应急预案,镶嵌到故障诊断工具,实现平台自动推送和自动处置。
四、 AIOps助力故障快速恢复手段的智能化发展
AIOps可以有效支撑故障恢复全过程的自动化、智能化开展。我们目前完成了异常检测模块的落地,也顺利通过了信通院《云计算智能化运维(AIOps)能力成熟度第2部分:系统和工具技术要求》的全面级评估。
异常检测模块是面向故障处理过程中的发现环节,是可观测能力的极大补充。前面我们说到发现能力的建设要着重于对业务系统运行时的理解、探查以及推导能力,异常检测模块可以达到这个效果,根据业务系统运行情况,精确的抽取告警、指标、调用链等运维数据,并智能化预测业务运行的异常情况,辅助运维人员进行决策。
未来移动云会积极探索AIOps在故障处理过程中的应用,实现故障处理全过程的自动化、智能化。
图6 异常检测的曲线示意
五、混沌工程是持续完善故障快速恢复手段的最佳工具
随着研发运维一体化加速,移动云变更次数逐年快速增长,提升快恢场景的覆盖度和验证应急预案的有效性也成为了后续的重点工作。引入混沌工程,通过主动引入故障来检验故障快速恢复手段的生效能力。我们已经建立了计划性演练、红蓝对抗、生产突袭三类演练机制,按固定周期高频次开展验证演练工作,结合演练结果持续推动快恢能力优化提升,确保工作的整体闭环。
六、结语
以上是我们对于故障快速恢复能力建设的一些经验和想法,未来移动云SRE团队希望和业界友商、研究机构加强合作,共同探讨和实践,共同促进云计算行业的可持续发展。
- 点赞
- 收藏
- 关注作者
评论(0)