“确定性运维”能力助力云上业务运维体系升级
作者:林华鼎
华为云SRE在短短几年内经历了华为云业务从小量到大量到海量的高速发展,以及新型技术和开发模式引入的全过程。可以用“MATE”来概括过程中所遇到的挑战:M(Messy Complex)解耦的网络;A(Active Iteration)快速迭代;T(Trustworthy Operation)安全生产;E(Evolution FullStack)全栈运维。为了应对这些不确定的挑战,华为云SRE用“确定性运维”能力支撑了华为云“稳定可靠”,平台质量和运维效率均得到大幅改善,目前居于国内、国际领先地位。
【“确定性运维”能力诞生】
在开发/运维领域有各种标准,包括ITIL(目前最新版是V4)、Agile(敏捷开发)、DevOps、持续交付CI/CD……;还有G公司发布的SRE核心理念,用工程的方法解决运维问题;A公司CTO连续十年在公开峰会上传播“Everything fails, all the time”。
华为云SRE综合了各家所长,经过5年的实践,总结出“持续韧性”(Continue Resilience)的标准,即韧性是从架构设计、到交付、到现网运行的持续改进。运维的新常态是接受部分故障,处在部分故障中的系统要求仍能正常运行对外提供服务,全流程通过软件工程的方法解决运维问题。持续韧性的价值主张是“确定性质量结果”,即“确定性运维”能力,包括:
· 确定性高可用架构:包括确定性失效率、确定性恢复时长以及确定性故障影响;
· 动态清零风控方法:包括全面质量管理(被动响应为主)和动态风控(主动运维为主);
· 低复杂度运维框架:在业务高度复杂的情况下,通过智能运维工具的深化开展,提升效率,确保运维组织规模不要线性增长。
【助力云上业务运维体系升级】
云上数以万计的客户,虽然所运维的对象不同,但是面对的挑战却有不少的共通之处。当企业在业务快速增长、数字化转型或深入云化改造,可能遇到可用性管理、责任分工、容量管理、云资源配置、安全生产、效率提升、智能运维能力构建等问题,华为云SRE运维使能中心负责将“确定性运维”能力转化为云上业务运维的能力体系。经过诸多案例分析和专家讨论,梳理出如下适用于云上业务的“确定性运维”体系,相较于传统运维体系,业务模块有如下变化:
· 传统运维关注问题快速定界定位,关注产品的可维护性,新体系中,运维团队不仅关注可维护性,更多地参与到产品的架构设计中,落实“产品高可用架构”;
· 传统运维以被动响应、主动巡检等活动为主,新体系中全面加强了被动响应和主动运维的活动,执行“全面的质量和动态清零风控”;
· 传统开发模式下版本交付经过较长周期的质量管理且变更并不频繁,但现在多数企业执行的是“持续交付”流程,从运维角度必须要强调自动变更以降低风险;
· 传统业务体量小的时候,安全合规的压力并不高,体量变大以后参与的团队增多,交付越发频繁,安全生产和安全防护的压力和能力诉求都很大;
· 基础设施云化以后,面对种类繁多的云化资源(包括OS、网络、数据库、容器等),需要自动化的“资源治理”能力,以提升质量和效率;
· 传统运维模式使用的工具通常以ITSM工具为主,新体系中增加“工具开发”模块,由运维团队自行设计、集成或开发第三方的运维作业和AIOPS工具。
在运维体系进阶的过程中,“组织、流程、工具”也在业务驱动下分别做了升级:
首先是“组织”能力升级,传统的运维组织多数是“消防员”角色,主要投入精力在巡检、告警、故障处理上,确定性运维模型下,经过SRE变革,转型为“建构师”,主要承担三个角色:可用性守护者(强调全栈能力,对业务的SLO和可用性负责;用更多时间思考和改进可用性,提前拦截隐患)、可用性设计者(围绕SLI/SLO开展工作,参与产品高可用设计)、软件工程开发者(不仅仅是编码,用系统工程的方法解决问题);要求运维团队具备4个关键能力:软件编码、工程方法、自动化开发、SLO设计。
其次是“流程”能力升级,传统的运维流程,以监控、故障、问题、变更管理为主,在确定性运维模式下,不仅优化了原有流程(监控、事件、问题、变更管理),还增加了主动管理业务可用性、运营、资源和需求的流程。尤其是可用性管理,包括PPR高可用架构能力检查、交付验收、容灾演练、压力测试、应急预案等混沌工程流程。
最大的一块是“确定性运维”能力升级(比重可以占到60%),相比传统运维能力,增加深度参与前端产品架构设计和监控设计、混沌等活动内涵对于一家初步启动建设SRE能力且风险识别还找不到太好的头绪的企业,建议:
首先是“活着”,保障业务稳定、有故障则快速修复。先抓““确定性恢复能力””,通过故障场景、故障模式识别,针对性进行恢复能力设计和提升;抓“混沌工程”,通过演练暴露问题,倒逼能力提升;然后建议重点抓监控能力(SLI设计),确保能够及时发现问题;如果持续交付涉及的人群复杂且变更频繁,则必须优先抓安全生产和构建自动化变更能力。
其次是“夯实”,将部分能力逐步自动化、智能化,提升整体效率。关注高可用架构部分,逐条审视确定性可靠性、确定性可恢复性、确定性故障影响范围等架构能力的落实情况;通过PPR、ORR等能力做好常规检查。“夯实”的内容也包括对云上资源的治理:一致性管理、健康检查、弹性伸缩、成本等管理智能化管理能力。
【成熟度评估】
基于上述“确定性运维”体系,我们综合了华为云SRE以及多家云上客户SRE专家的意见,梳理出一套成熟度评估标准(有一套详细的Checklist),各企业可参照对自己当前运维体系的成熟度进行评估,审视自身的状态,如有必要则拟定优化目标、策略和计划,积极开展变革,提升整体可用性能力。
- 点赞
- 收藏
- 关注作者
评论(0)