一般来说,可观察性是指您根据所了解的外部输出对复杂系统内部状态或条件的理解程度。 一个系统的可观察性越高,您就能越快越准确地从已发现性能问题找到其根本原因,而不必进行额外的测试或编码。
在云计算中,可观察性还指聚集、关联和分析分布式应用程序及其运行所用硬件的稳定性能数据流的软件工具和实践,以更高效地监控、故障排除和调试该应用程序,达到满足客户体验预期、服务级别协议 (SLA) 和其他业务要求的目的。
可观察性是一个相对较新的 IT 主题,通常会被误解为一个炒作概念,或者就是对一般系统监控和特定应用程序性能监控 (APM) 的“另一种说法”。 实际上,可观察性是 APM 数据收集的一种自然演变,旨在更好地适应云原生应用程序部署越来越快速、分布程度越来越高的动态本质。 可观察性不能取代监控 – 它能够实现更出色的监控和 APM。
(“可观察性”一词来自于控制理论,这是与根据系统反馈自动化控制动态系统相关的一个工程领域,例如,流经管道的水流、汽车上坡下坡的速度。)
IBM Cloud Pak for Watson AIOps
IBM Observability by Instana
在过去 20 年左右的时间里, IT 团队主要依靠 APM 来监控和故障排除应用程序。 APM 定期采样和聚集已知与应用程序性能问题相关的应用程序和系统数据,这称为遥测。 它根据关键性能指标 (KPI) 分析遥测数据,并结果汇总到仪表板中,以警示运营和支持团队应当解决以免发生问题的异常情况。
APM 已经足够监控和故障排除单体应用程序或传统的分布式应用程序,因为这类应用程序的新代码会定期发布,应用程序组件、服务器和相关资源之间的工作流和依赖关系十分明确或者很容易跟踪。
但如今,组织正在迅速采用现代开发实践(例如敏捷开发、持续集成和持续部署 (CI/CD)、DevOps、多个编程语言)和云原生技术(如微服务、Docker 容器、Kubernetes 和无服务器功能)。 因此,他们比以往更快地将更多服务推出市场。 但在这个过程中,他们在许多位置以许多不同的语言频繁采用新应用程序服务,而且使用时间差距巨大(无服务器功能只需几秒甚至千分之一秒),APM 一分钟采样一次数据的做法已经落后了。
行业需要的是更多更好的遥测技术,可以用来为每个应用程序用户请求或交易创建高保真、背景信息丰富、完全相关的记录。 进入可观察性。
可观察性平台与应用程序和基础架构组件内置的现有测量功能集成,并提供工具来为这些组件添加测量功能,从而持续地发现和收集性能遥测数据。 可观察性关注四个主要遥测类型:
收集该遥测数据后,平台会实时将它们关联起来,以向 DevOps 团队、站点可靠性工程 (SRE) 团队和 IT 员工提供完整的、背景丰富的信息 - 即每一个事件的具体内容、发生地点和发生原因,这些信息可能表明、引起或用于解决应用程序性能问题。
许多可观察性平台会自动发现系统中可能会出现的新的遥测源(如,对另一个软件应用程序的新 API 调用)。 而由于它们处理的数据远远超过标准的 APM 解决方案,因此许多平台包含 AIOps(面向运营的人工智能)功能,以从噪音(与问题无关的数据)中筛选出信号(表明真正问题的数据)。
可观察性的最大益处是,如果所有其他条件一样,与可观察性差的系统相比,可观察性强的系统更容易理解(笼统和细节层面均如此),更容易监控,更新新代码更简单、更安全,也更容易修复。 再具体一点,可观察性直接支持敏捷/DevOps/SRE 以更快速度交付更优质软件的目标,它使组织能够做到:
通过收购 Instana,IBM 提供行业领先的 AI 自动化功能,以管理跨混合云环境的现代应用程序的复杂性,尤其是对更好地客户体验和更多应用程序的需求会影响业务和 IT 运营。
要实现企业范围和 IT 范围的自动化,首先要从可衡量的小型成功项目起步,然后可针对其他流程和组织的其他部分扩大规模和进行优化。
通过与 IBM 合作,您可以访问基于 AI 支持的自动化功能,包括预先构建的工作流程,使每个 IT 服务流程更加智能化,使团队能够专注于最重要的 IT 问题并加速创新。
采取下一步行动: