六种系统弹性模式 – Cruform


系统弹性是组织、硬件和软件系统减轻故障或损失的严重性和可能性、适应不断变化的条件并在事后做出适当响应的能力。
在这篇文章中,我将介绍以下系统弹性模式:

  • 自适应响应
  • 卓越的监控
  • 协调弹性
  • 异构系统
  • 动态重新定位
  • 必要的可用性

 
自适应响应
及时和适当地做出反应的能力。自适应 SRE 团队不应该只关注速度。当问题升级时,他们也不应该盯着一个地方。
他们将使用预先存在的工具集和流程来快速准确地处理事件。Runbooks 是实现这一目标的一种方式。当然,应该根据新的知识不断更新操作手册。
 
卓越的监控
及时监测和发现不良事件。降低系统故障严重性的关键是首先知道它们何时发生。另一件事是您必须知道您的系统在何处以及在多大程度上受到影响。
有效的 SRE 工作结合了日志记录、监控和跟踪三要素,以实现被称为可观察性的圣杯。他们监控系统问题、追踪问题的根源并审查日志以识别模式。
 
协调弹性
实施深度弹性策略,以便问题需要通过多重障碍才能发生。SRE 团队可以尝试多种系统级保护,例如故障转移设计、安全集成和 BDD/TDD。
他们还可以在更深层次上与开发人员协调他们的工作。SRE 工作的一部分可能包括集成到开发人员单元中。他们可能会教开发人员如何通过全栈跟踪或 DevSecOps 哲学等措施来实现系统弹性。
 
异构系统
使用异构性来减少共模故障。就上下文而言,最明显的共模故障示例是在单根光纤电缆上为您的整个应用程序提供服务。
SRE 旨在降低基于单个组件的脆弱性导致整个系统故障的可能性。在上述情况下,如果电缆被切断,应用程序就会关闭。如果多个系统组合使用来提供服务,风险会大大降低。
 
动态重新定位
通过分布和多样化网络分布来提高从事件中恢复的能力。许多 SRE 已经具有使用分布式系统的好处,因为现在许多应用程序都在云上运行。
他们可以通过实施以下组合来保护关键系统:
  • 地理重新定位——服务可从多个区域随时获得
  • 云重新定位——服务准备好进入私有云或本地
  • 依赖重新定位——改变关键和非关键系统之间的连接,使后者的问题不会影响前者

 
必要的可用性
为用户提供服务和数据的平衡行为。SRE 必须处理不同类型的数据和系统的不同优先级。有些系统必须始终可用,而其他系统则不然。有些数据是特权数据,有些数据不是。
他们可能会采用冗余等技术来提高重要系统的可用性。这是多个实例驻留在多个位置的地方,以确保在一个实例发生故障时的可用性。它们还可能使数据变得非持久化,以使其不会受到破坏或危害。