可观测性正在成为当代 DevOps 实践的基石。即使传统上不属于 DevOps 的部门也看到了在可观察性团队的支持下带来的好处。然而,到 2023 年,组织发现采用之路比预期更加崎岖。以下是 DevOps 团队在可观察性方面面临的七个最大挑战以及一些缓解这些挑战的建议。


01

提高平均修复时间


MTTR(即平均恢复时间)是指系统在发生中断或错误后恢复并运行所需的时间。更长的 MTTR 意味着更多的停机时间和更差的客户服务。令人担忧的是,DevOps Pulse Report表明平均 MTTR 正在增加。今年,73% 的受访者表示 MTTR 为多个小时;去年这一数字仅为64%。


MTTR 通常是由于数据孤岛损害可观察性而无法诊断事件造成的。这可以通过可观测平台来改善,该平台允许工程师看到全局。


02

遥测数据的成本


随着 MTTR 的增加,许多组织必须应对高遥测数据量所产生的成本。这是一个大问题。IDC对 200 家公司的调查发现,53% 的受访者强调了存储日志数据的成本。


大部分问题是由于过时的分级定价模式造成的。许多供应商按每 GB 数据收费,因此如果您的数据量波动,您的数据成本也会波动。它们的定价模式也很模糊,这意味着许多组织发现很难知道他们支付的费用是什么。在 Coralogix,我们创建了一种新的业务模式,其成本仅为标准日志存储解决方案的三分之一。


03

工具蔓延


要理解为什么这是一个挑战,我们需要回答这个问题:什么是可观测性?有效的可观测性需要集成应用程序各个方面的数据。由于许多组织使用多种工具实施监控,因此他们遭受了工具蔓延的困扰。这会产生孤立遥测数据的效果,使得关联数据和深入了解系统性能变得更加困难。


缓解工具蔓延的方法有很多,例如在将工具纳入 DevOps 策略之前彻底评估工具的成本和收益。最有效的解决方案是“单一管理平台”工具,它将概要性的见解结合在单个仪表板上。


04

Kubernetes 复杂性


Elastic 报告称,组织越来越多地转向基于云的解决方案,例如 Kubernetes 来进行 DevOps。Kubernetes 可以根据需要动态扩展基础设施,从而消除专用服务器的成本开销,从而增强组织的能力。



然而,Kubernetes 很复杂,并且面临着一系列挑战。Kubernetes 的可扩展架构来自容器化,这是一种将应用程序托管在称为容器的对象中的范例。这意味着在 Kubernetes 中进行开发需要能够使用大量旋转板。


解决这个问题的一个好方法是在组织中进行更好的培训。此外,打破孤岛允许不同的团队转移知识。


05

安全挑战


Kubernetes 的流行带来了安全挑战。这些可能包括权限升级(用户设法获得写入访问权限等权限)和安全配置错误(开发人员忘记更改非安全默认配置)。


有多种降低 Kubernetes 安全风险的策略。其中包括将角色范围限定到特定命名空间、使用服务网格以及使用 Coralogix 的 Kubernetes Operator 增强安全性。


除了 Kubernetes 之外,还有一个更大的问题,即将安全性集成到可观察性策略中,这正成为越来越多IT 企业面临的挑战。为了解决这个问题,越来越多的企业开始将可观测性和安全监控整合到一起。基础设施和应用程序指标等解决方案可以增强安全性和监控。


06

扩展平台


为了应对不断上升的数据成本和不断增加的云复杂性带来的挑战,企业正在转向开源解决方案。然而,这些也有其自身的挑战。根据 DevOps Pulse 报告,大约 30% 的受访企业在基础设施管理、扩展和升级相关组件方面存在问题。由于许多开源平台需要专业知识来维护,因此企业很难为其获取技能和专业知识。


OpenTelemetry等工具可以通过与 Coralogix 等平台集成来简化扩展。


07

数据管道性能故障排除


实现可观测性需要拥有可靠且高性能的遥测数据管道。然而,使用开源平台的组织通常难以监控其数据管道的性能并对其进行故障排除。由于遥测数据质量较低,这可能会损害可观测性。


数据工程师 Abraham Alcantara建议了成功排除数据管道故障的十个关键步骤。其中包括识别数据管道软件和基础设施、重现和隔离问题以及自动化问题场景。另一种策略是应用机器学习,例如 Coralogix 使用的方法。