追求5个9(99.999%)的可用性,代价实在太大了……

指尖上的架构 2024-09-10 02:19:10

实现五个九 (99.999%) 的可用性,要求正常运行时间保证每年仅 5 分钟的停机时间,确保近乎恒定的可用性和可靠性,是分布式系统卓越的基准。尽管它提供了更高的弹性和正常运行时间,但问题是:代价(成本)是什么?

追求持续正常运行时间需要付出巨大的财务、运营和人力成本。在追求 5 个 9 的过程中,经常会忽略一些方面,即通过分析来质疑收益是否值得投资(考虑收益递减规律)。

支出成本:基础设施建设

尽管现在大多数中型公司都在利用云,但必须考虑内部部署基础设施的冗余资本支出,以实现高可用性。

很多公司需要在不同的地理位置部署多个数据中心,以确保持续可用性。多个数据中心可以防止局部故障,但维护这些数据中心包含以下成本支出:

场地:租赁和购买场地建数据中心。根据Uptime Institute的报告,建立 Tier III 数据中心的潜在成本可能在每平方英尺 7,000 美元到 12,000 美元之间。对于一个 10,000 平方英尺(≈929㎡)的设施,这个数字可能高达 1.2 亿美元(≈8.5亿RMB)。

硬件:为了实现高可用性基础设施,必须在多个站点复制服务器、存储系统和网络设备。一台服务器至少要花费 2,000 美元左右,一家公司可能需要数百台服务器,因此投资额约为 200 万至 500 万美元。

网络:数据中心之间高速、冗余的网络连接,以便于处理故障转移和负载均衡。高速网络连接的年费用可能在10万美元到100万美元之间,具体取决于带宽和支持服务。

运营成本

管理复杂多层冗余、精密的故障转移机制以及众多相互连接的服务所产生的成本,可能会由于以下原因带来运营挑战:

监控需求增加:随着基础设施的增长,实时监控异常的需求也随之增加。大型企业每年在 Datadog、New Relic 或 Splunk 等解决方案上花费约 50,000 至 200,000 美元。在某些情况下,还需要定制监控解决方案,增加更多的成本。

事件管理需求增加:当监控量增加时,通过强大的事件管理流程(如运行手册、升级协议和沟通策略)处理事件至关重要。根据Ponemon Institute 的“数据泄露成本报告”,2023 年数据泄露的平均成本约为 445 万美元。虽然并非所有事件都会导致泄露,但与停机、调查和补救相关的成本可能很高。即使是轻微的事件也会中断服务并需要大量资源,尤其是在为高可用性而设计的系统中。

增加对质量保证和测试的需求:多层基础设施需要严格的测试,包括:

故障演练:定期模拟灾难恢复场景,确保恢复过程有效且正常。成本主要包括人员时间、资源分配以及对正常运营的潜在干扰。

渗透测试:进行频繁的扫描和测试,以确保所有服务可用且无漏洞。

性能测试:保证持续监控系统在高峰流量下的承载能力,以及在不影响可用性的情况下动态扩展的能力。

假设的条形图比较了中型企业不同可用性级别的灾难恢复、渗透测试和性能测试的成本

人力成本

支出和运营成本是追求高可用性的首要考虑因素,但同时,维护这些系统的人力成本也至关重要。对 IT 运营和团队来说,高可用性的具体要求的程度会影响他们的整体感受和工作满意度。其中不限于以下因素:

压力和倦怠:追求“5个9”需要雇用大量人员全天候待命,以立即解决任何问题。如果服务可用性受到影响,还会产出声誉受损或失业等严重后果,运营团队处在一个相对高压的工作环境。

错误率中的人为因素:在高压环境下,人为错误的可能性会增加。

员工流动率:高压力环境也会导致更高的流动率,开发人员会避免高压环境并追求工作与生活的平衡。

收益递减规律

从经济原则来看,对某一领域的投资达到一定程度的时候,产出或性能的收益最终会减少。在追求分布式系统的高可用性上也是一样,超过某一个峰值之后,额外的投资所带来的稳定性效果微乎其微。

从 99% 升级到 99.9% 通常会显著提高客户满意度和可靠性,这也是最具成本效益的,可以直接通过实施基础设施冗余、事件管理和监控方面的标准做法来实现。然而,从 99.9% 升级到 99.99% 或 99.999% 时,前面所提到的所有因素(例如增强冗余、监控和全面测试),成本会急剧上升。

随着投资的增加,停机时间减少所带来的回报也会减少。例如:

从 99.9% 到 99.99% 的可用性会导致每年从 8.76 小时减少到 52.6 分钟。虽然这种改进可能听起来很显著,但只有在金融和医疗保健等特定行业,这些成本才是合理的。从 99.99% 到 99.9999% 的可用性进一步将停机时间缩短至每年 5 分钟,也需要付出巨大的成本,大多数组织都难以证明这笔费用是合理的。

正如我们老生常谈的,平衡关键系统和非关键系统的成本非常重要。企业必须区分任务关键型系统和非关键系统,并只在停机时间可能对其声誉或成本产生重大影响时,才要考虑花费更多成本在可用性建设上。

结论

实现“五个九”需要花费大量的组织、运营、财务和人力成本。

虽然对于特定行业的特定组织来说追求“5个9”是有意义的,但大多数组织必须权衡成本和收益。

在大多数情况下,降低可用性目标可能有助于实现更好的平衡,从而实现可持续运营和更健康的工作文化。随着系统的发展,考虑开发可用性需求、优先考虑弹性、灵活性以及这些系统背后人员的感受也变得同样重要。

作者丨Ajinkya Mahadeo Ghadge 编译丨Rio

来源丨网址:https://thenewstack.io/the-hidden-costs-of-chasing-five-nines-in-availability/

dbaplus社群欢迎广大技术人员投稿,投稿邮箱:editor@dbaplus.cn

0 阅读:0

指尖上的架构

简介:感谢大家的关注