re:Invent 2023 | Amazon Distro 用于 OpenTelemetry 的无缝可观测性

关键字: [Amazon Web Services re:Invent 2023, OpenTelemetry, Observability, Operational Excellence, Opentelemetry, Telemetry Data, Debugging Production]

本文字数: 1200, 阅读完需: 6 分钟

视频

如视频不能正常播放,请前往bilibili观看本视频。>> https://www.bilibili.com/video/BV1t34y1c7HF

导读

在过去,从运行在亚马逊云科技上的应用程序中收集数据可能是一项挑战。亚马逊云科技通过 API 和 Amazon Distro for OpenTelemetry (ADOT) 对 OpenTelemetry (OTel) 的支持极大地简化了开发人员的可观察性体验。了解如何使用 Amazon CloudWatch 和 Amazon Kinesis data Streams、ADOT 代理、OTel 在 Amazon EKS 上的 Kubernetes 代理和 OpenTelemetry Lambda 层,检测应用程序并将数据发送到任何兼容的后端。还可以了解数据生成的最佳实践、使用 OTel 收集器的管道管理,以及使用亚马逊云科技的 OTel 语义约定进行模式管理。

演讲精华

以下是小编为您整理的本次演讲的精华,共900字,阅读时间大约是4分钟。如果您想进一步了解演讲内容或者观看演讲全文,请观看演讲完整视频或者下面的演讲原文。

利兹·方琼·琼斯在演讲开始时,表达了对现场工程师的理解,他们可能在会议期间需要随时待命。她深知他们在深夜处理生产问题时,被突然叫到的焦虑感。她的目标是为与会者提供专业冷静的调试问题和增强信心的方法,无论是在早晨10点还是在凌晨2点。方琼·琼斯希望工程师们能学会如何将这些优秀的操作技巧传递给整个团队。这样,等到明年的re:Invent时,他们将能够自信地将值班任务分配给同事,并在会议过程中不受干扰。

方琼·琼斯解释道,这种调试系统的关键在于可观察性的实践。在生产中出现故障时,可观察性使得工程师能够快速提出假设、验证理论并解决问题。这需要系统具备高质量的测量工具,以生成必要的远程测量数据。此外,数据必须经济高效地存储,并可随时进行查询。可观察性使工程师能够在不发布新代码的情况下找到新问题的根源。相反,他们可以分析已从生产环境中流出的远程测量数据。

亚马逊云科技的架构框架与这一优先事项相一致,将卓越运营列为其七大支柱之一。具体而言,该框架强调工作负载必须具有可观察性,要识别关键性能指标,要捕捉远程测量数据,并使用分布式追踪。仅仅监测总体正常运行时间是远远不够的。工程师需要了解实际的客户体验。方琼·琼斯强调,卓越的运营需要深入了解后台服务和真实的用户互动。

从根本上讲,调试生产系统就是关于形成和测试可能导致停机或性能下降的假设。目标是迅速恢复问题并恢复正常运行,甚至在客户未察觉之前。当然,工程师们的目标是防止bug进入生产环境。然而,总会出现无法预料的新问题。这时,可观察性就变得至关重要——不仅仅是监控已知问题,更是获取对未知情况的洞察。

方琼-琼斯表示,日志、指标和追踪相互补充,共同提供了远程测量数据,有助于诊断问题。日志提供过程级信息,但可能需要预先了解查找位置。指标展示高级别系统可见性,但缺少请求级详细数据。追踪器则能跟踪特定请求在服务间的路径,捕获定时数据和元数据。

自2018年起,OpenTelemetry致力于创建这种遥测数据并将其融入观测领域。到2021年,规范和API已实现通用可用性。2022年,跨语言追踪和指标SDK趋于稳定。

OpenTelemetry包含若干关键组件,如数据格式规范、11个具备库集成的语言SDK、处理和发送数据用的收集器以及主要可观察性供应商的支持。这些SDK和集成消除了工程团队自建仪器的需求。收集器在处理和发送数据时展现灵活性。广泛的支持使用户能在不换方案的情况下轻松切换供应商。

方琼-琼斯介绍了亚马逊云科技为OpenTelemetry提供的定制分发,即ADOT,专针对亚马逊云科技工作负载优化。ADOT将数据路由至亚马逊云科技的观测服务。对于支持的语言的Kubernetes应用程序,OpenTelemetry Operator会自动仪器化容器并安装收集器。其他环境需手动配置SDK。无服务器函数使用Lambda层进行OpenTelemetry。近期,ADOT还增加了日志支持。

尽管OpenTelemetry解决了仪器和数据生成的问题,但方琼-琼斯强调,它对存储持中立态度。数据不应轻易丢弃,而应发送至分析工具。她展示了ADOT如何引导追踪至亚马逊云科技的服务,如X-Ray、Managed Prometheus和CloudWatch。像Lightstep或Datadog这样的第三方APM工具允许跨追踪聚合。为降低开销,CloudWatch指标可使用Kinesis Data Firehose将这些以OpenTelemetry格式接收的数据流给这些工具,而非使用API调用的方法。

As an example, Fong-Jones describes how her company, Honeycomb, monitors their query service, Retriever. They utilize Lambda and OpenTelemetry to measure the median duration of calls, segmented by customer ID. This level of granularity helps identify the location of potential latency issues.

While automatic instrumentation captures basic telemetry data, custom attributes and spans allow engineers to add important context. For instance, tagging key variables such as user ID or search query provides structured debugging data without recording the entire request body. Wrapping expensive functions within custom spans enhances the granularity of traces. Fong-Jones notes that semantic conventions contribute to cross-team and cloud consistency in customizing attributes.

One key advantage of OpenTelemetry is its support for multiple vendors. Examples include observability tools working alongside secure long-term storage (such as S3) and integrations with configuration management (such as Chef) and continuous integration/continuous deployment (such as CircleCI) tools.

In summary, Fong-Jones highlights the advantages of OpenTelemetry in terms of instrumentation, data routing, custom telemetry, and vendor portability. By leveraging these features, engineers can gain the necessary observability for quickly debugging issues in production. This allows them to calmly address accidents, sleep soundly, and not have to worry about on-call rotations. Fong-Jones encourages audiences to implement OpenTelemetry for operational excellence required for reliable systems.

下面是一些演讲现场的精彩瞬间:

领导者期望与会者在解决问题时能够增强信心并分享专业知识,以便在下一次re:Invent上不再需要随时待命。

演讲者探讨了如何提高生产系统的可靠性,并将其与观众的待命经历相结合。

亚马逊云科技的先进框架强调了可观察性、遥测数据和分布式追踪对卓越运营的重要性。

领导者强调了解获客户洞察、解决技术债务和消除单点故障的重要性。

演讲者讨论了仅依赖日志文件进行监控的局限性以及使用指标获得系统汇总视图的优势。

跟踪是一组跨度,每个跨度都与给定的请求ID相对应,通过传播请求ID来简单实现跟踪功能,从而记录开始时间、持续时间和父跨度ID。

领导者回忆起一个事件,当时他们无法快速分析数据以解决问题,导致失去了宝贵的睡眠。

总结

利兹·冯·琼斯在re:Invent的亚马逊云科技大会上发表了演讲,探讨了如何借助可观察性提升运营效率。她认为,为了快速解决生产环境中的新问题而无需提交新代码,我们需要具备出色的可观察性。实现可观察性的关键在于拥有高质量的工具来生成遥测数据,以较低的成本存储数据并能够对其进行查询。追踪、指标和日志都是有益的遥测数据类型。OpenTelemetry作为一个跨服务和语言的通用标准,可以生成和收集这种遥测数据。

亚马逊云科技的OpenTelemetry发行版(ADOT)使得在亚马逊云科技上使用OpenTelemetry变得更加简便。对于Kubernetes工作负载,您可以安装ADOT Operator来自动为您的应用程序添加仪表。随后,可以将数据引导至各种亚马逊云科技服务或第三方供应商以进行存储和分析。

为了更好地利用遥测数据,可以使用自定义属性和范围对数据进行标注,以捕捉关键的业务背景信息。还可以将数据并行地导向多个目标地点。例如,将其长期保存在S3中进行安全分析,同时将其发送给供应商以实现实时的可观察性。

总的来说,通过采用OpenTelemetry的良好可观察性实践,可以帮助您快速解决生产问题,提高可靠性并让您的团队更加安心。

演讲原文

https://blog.csdn.net/just2gooo/article/details/134791458

想了解更多精彩完整内容吗?立即访问re:Invent 官网中文网站!

2023亚马逊云科技re:Invent全球大会 - 官方网站

点击此处,一键获取亚马逊云科技全球最新产品/服务资讯!

点击此处,一键获取亚马逊云科技中国区最新产品/服务资讯!

即刻注册亚马逊云科技账户,开启云端之旅!

【免费】亚马逊云科技“100 余种核心云服务产品免费试用”

【免费】亚马逊云科技中国区“40 余种核心云服务产品免费试用”

亚马逊云科技是谁?

亚马逊云科技(Amazon Web Services)是全球云计算的开创者和引领者,自 2006 年以来一直以不断创新、技术领先、服务丰富、应用广泛而享誉业界。亚马逊云科技可以支持几乎云上任意工作负载。亚马逊云科技目前提供超过 200 项全功能的服务,涵盖计算、存储、网络、数据库、数据分析、机器人、机器学习与人工智能、物联网、移动、安全、混合云、虚拟现实与增强现实、媒体,以及应用开发、部署与管理等方面;基础设施遍及 31 个地理区域的 99 个可用区,并计划新建 4 个区域和 12 个可用区。全球数百万客户,从初创公司、中小企业,到大型企业和政府机构都信赖亚马逊云科技,通过亚马逊云科技的服务强化其基础设施,提高敏捷性,降低成本,加快创新,提升竞争力,实现业务成长和成功。

  • 23
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值