03|变更:为什么说变更是可靠性的第一杀手?
白园
你好,我是白园。今天我们来聊聊可靠性领域的第三个部分——变更。
你有没有发现一个现象,无论是国内的公司还是海外的公司,在故障原因中,变更所占的比例最大。你有没有想过原因是什么?既然变更是可靠性第一杀手,那么有没有什么办法来彻底解决这个问题?
在接下来的内容中,我将带你深入探讨变更背后的原理,并分析为什么变更会成为系统稳定性的主要威胁。此外,我将分享一套有效的策略来应对变更带来的风险,帮助你提高系统的可靠性。通过这些方法,我们可以更好地控制变更过程,减少其带来的负面影响。
变更是什么?
正式开始之前,你可以先回答我一个问题,以下哪些操作属于变更?
答案是:上述列举的所有操作都属于变更。实际上,任何操作只要有可能影响到线上服务可靠性都会被视为一种变更。
为什么说变更是可靠性的第一杀手?
变更的本质就是打破稳态,在日常工作中,任何形式的变更,在变更过程中都可能让一个系统从稳定状态转变为不稳定状态。而系统处于不稳定状态的时候,正是故障最容易发生的时刻。
其次,变更的来源广泛,发生频率高,形式多样,涵盖软件更新、配置调整、硬件升级等类型,这些都显著增加了风险。在我负责的业务领域,变更日均超过百次,涵盖代码发布、配置调整、A/B 测试等多种类型。历史上,这些类型变更都曾引发过故障。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
1. 变更是可靠性的第一杀手,因为变更的本质是打破稳态,可能增加故障发生的可能性。 2. 应对变更带来的风险需要双管齐下,解决主观层面和客观层面的问题,包括提升团队成员对变更管理的重视、实施严格的变更机制、分级发布等策略。 3. 在变更前需要详细记录每次变更的具体内容、评估变更可能对功能和资源造成的影响,并制定详细的回滚计划。 4. 分级发布是一种有效的应对变更风险的策略,需要按照变更顺序、进行变更检查和变更干预和处置来最小化变更可能引起的风险。 5. 变更后的检查环节对于确保变更成功至关重要,需要关注自身服务状态指标、业务核心指标和上下游关键指标。 6. 工具和平台层面的自动阻断和智能checker是防范变更引发故障的重要工具,能够监控发布过程并处理大规模且具有个性化特征的指标检测问题。 7. 变更故障产生的原因主要有主观和客观两个层面,需要针对这两种不同层面的问题提出相应的解决策略。 8. 思考题:在上线的过程中,系统出现故障时,是优先切流止损还是优先选择回滚?需要进行讨论和评估。
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《SRE 实践:服务可靠性案例课》,新⼈⾸单¥59
《SRE 实践:服务可靠性案例课》,新⼈⾸单¥59
立即购买
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
精选留言
由作者筛选后的优质留言将会公开显示,欢迎踊跃留言。
收起评论