选择 AWS 监控和可观测性服务 - 选择 AWS 监控和可观测性服务

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

选择 AWS 监控和可观测性服务

迈出第一步

简介

监控和可观察性是确保基于云的工作负载和数据的可用性、性能、可靠性和安全性的关键组成部分。

  • 监控涉及系统地收集和分析数据,例如指标、日志和跟踪,以跟踪云资源的运行状况和效率,并支持被动事件管理。

  • 可观察性侧重于通过动态、实时的见解来了解系统的内部状态,从而可以主动识别和解决问题。

AWS 提供了一系列用于监控和可观测性的工具和服务。它们可用于收集数据、分析指标和创建警报以通知您存在的问题。此外,它们还可以提供日志和指标,您可以使用这些日志和指标来识别和解决问题的根本原因。

这些服务与其他 120 多个 AWS 服务 (包括亚马逊 EC2、Amazon EKS、Amazon ECS、Lambda 和 Amazon S3)和合作伙伴集成,并与各种第三方可观察性和云管理工具集成,这些工具使用近乎实时的原生遥测数据源。 AWS

本指南将帮助您选择最适合您的需求和组织的 AWS 监控和可观测性服务和工具。

在这段四分钟的 re: Invent 2023 演讲片段中, AWS 全球资深专家托沙尔·杜德瓦拉概述了如何制定可观察性策略。

明白

要根据您的需求选择合适的 AWS 监控和可观察性工具,首先了解可供您选择的选项范围以及主要服务是如何组合在一起的,可能会有所帮助。

该图显示了用于 AWS 监控和可观测性的可用选项

从三个关键数据源开始:日志、指标和跟踪。这些来源的数据可以使用 Amazon CloudWatch AWS X-Ray、或 AWS Distro for OpenTelemetry (ADOT) 代理使用。

以下是你可以使用这些数据收集源的时候:

  • 使用 Amazon CloudWatch 从您自己的应用程序中收集自定义指标,以监控运营绩效、解决问题和发现趋势。您还可以使用 CloudWatch 代理来收集日志、指标和跟踪。此外,您可以使用 Fluent D 等开源工具或 FluentBit 收集日志并将其发送到 CloudWatch 日志。

  • AWS X-Ray 用于跨多个应用程序和系统执行分布式跟踪,以帮助发现系统中的延迟,并有针对性地进行改进。您可以使用 CloudWatch 代理收集痕迹并将其发送到 X-Ray。

  • 使用 AWS 发行版 OpenTelemetry 来收集指标和跟踪。

Instrumentation

AWS 监控和可观测性服务中有两大类可用的工具: AWS 原生服务和开源管理服务。

  • AWS 原生服务包括Amazon CloudWatch 和 AWS X-Ray. CloudWatch 提供了容器见解、Lambda Insights 、Contributor Insight s、Contributor Insights 和 A ppl ication Insights 的这些关键功能,这些功能有助于您如何将数据

  • 开源管理服务包括适用于Prometheus的亚马逊托管服务(一种基于流行的Prometheus开源监控和警报解决方案并与之兼容的托管监控服务)、 OpenSearch 亚马逊服务和 OpenTelemetry Distro(不仅支持 Jaeger 和 Zipkin Tracing,还支持 AWS Jaeger 和 Zipkin Tracing)。 AWS X-Ray

可视化和分析

您可以使用亚马逊 AWS 服务地图、AWS X-Ray 跟踪地图、Amazon Managed Grafana 和 Amazon Logs Insights 对您通过这些 CloudWatch 服务收集和摄取的数据进行可视化和分析。 CloudWatch

其他服务

对监控和可观察性至关重要的其他服务包括:

  • AWS Config 提供了您在中的资源配置的详细视图 AWS 账户。此视图包括您的资源与过去的资源配置之间的关系,因此您可以看到资源的关系和配置如何随着时间的推移而变化。如果您使用的是AWS Config 规则,请 AWS Config 评估您的资源配置以确定所需的设置。

  • AWS CloudTrail 通过记录用户、角色或 AWS 服务采取的操作事件,帮助您实现运营和风险审计、治理和合规性。用户、角色或 AWS 服务采取的操作在中记录为事件 CloudTrail。事件包括在 AWS 管理控制台、 AWS Command Line Interface、 AWS SDKs 和中采取的操作 APIs。

此外,您还可以从一系列机器学习分析服务中进行选择,进一步受益于您的监控和可观测性数据。

考虑一下

选择正确的监控和可观测性服务 AWS 取决于您的具体要求和用例。以下是做出决定时需要考虑的一些标准。

Monitoring service capabilities

考虑该服务是否提供了一套全面的工具,包括指标、日志和跟踪。指标提供有关系统性能的定量数据,日志提供详细的事件信息,跟踪允许您跟踪基础架构中的交易。

还要评估该服务是否支持不同的数据类型和格式。此外,还要寻找高级功能,例如异常检测、机器学习驱动的见解以及关联来自不同来源的数据的能力。全面的解决方案应能够全面了解您的 AWS 环境,从而有助于高效地进行故障排除、性能优化和主动解决问题。

服务功能的多功能性和集成度越高,您就越有能力深入了解您的应用程序和基础架构。有关服务AWS 功能的更多详细信息,请查看《管理和治理云环境指南》(Well-Ar AWS chitected Framework 的一部分)的可观察性部分

Ease of integration

评估该服务与现有 AWS 基础架构、应用程序和部署流程的无缝集成的程度。

寻找与贵组织使用的常用编程语言、框架和第三方工具的兼容性。还要评估简化集成过程的 SDKs APIs、和插件的可用性。更好的集成可以促进数据的收集和分析,而不会给应用程序带来大量开销。

此外,请考虑该服务是否支持用于数据摄取的常用协议。提供更好集成的服务可以帮助确保更流畅的入职体验,使您的团队能够更快地开始监控您的环境,并获得对 AWS 环境的宝贵见解。

Data retention and storage

在选择 AWS 监控和可观测性服务时,数据保留和存储能力是关键考虑因素。对于您正在考虑的任何服务,请检查存储和保留历史数据的策略,以及处理随时间推移不断增加的数据量的可扩展性。

评估该服务是否支持长期存储指标、日志和跟踪,使您能够进行回顾性分析并满足合规性要求。还要考虑访问和检索存档数据的便捷性。

您使用的服务(或服务)应在为有意义的趋势分析提供足够的保留期与有效管理存储成本之间取得平衡。在考虑监控设置如何与运营需求和监管义务保持一致时,清楚地了解数据保留和存储策略非常重要。

Scalability

评估该服务在不断演变的基础架构和不断增长的工作负载方面的扩展能力。可扩展的解决方案应该可以无缝应对数据量、用户活动和应用程序复杂性的增加。

考虑服务的弹性、其适应需求高峰的能力,以及它是否支持自动缩放功能以动态适应不断变化的需求。强大的可扩展性有助于确保您的监控系统保持响应能力和有效性,即使您的 AWS 环境不断扩大,也能及时提供见解。

通过选择具有强大可扩展性的服务,您可以放心地支持应用程序和基础架构的持续增长,而不会影响性能或带来不必要的运营挑战。

Alerting and notification

评估服务的警报能力,包括根据预定义的阈值、异常或特定事件设置警报的能力。在配置警报条件时要注意灵活性,以及如何轻松管理通知渠道,例如电子邮件、短信或与协作工具的集成。

您选择的服务(或多项服务)应提供及时且可操作的警报,使您的团队能够迅速应对潜在问题。考虑诸如升级策略以及确认或隐藏警报的功能之类的功能。

与流行的事件管理平台集成可以增强整体事件响应工作流程。优先考虑一项监控服务,使您的团队能够主动解决问题,最大限度地减少停机时间并确保 AWS 环境的持续健康。

Cost

了解每项服务的定价模式,同时考虑数据量、存储空间和任何其他功能等因素。查看您正在考虑的任何服务的费用信息(例如亚马逊的账单和费用一览 CloudWatch)。

评估定价结构是否符合您的预算和使用模式。有些服务可能提供 pay-as-you-go模型,而另一些服务可能有分层定价或订阅计划。考虑所有成本的潜在影响,包括数据传输费用或访问历史数据的费用。

此外,还要评估定价是否随着基础架构的增长而有效扩展。对成本的清晰了解可确保您的监控解决方案在不影响基本功能的情况下保持成本效益,从而使您能够在满足运营要求的同时优化预算 AWS。

Customization and extensibility

评估该服务是否允许您定制仪表板、报告和警报以满足您的需求。寻找创建自定义指标、查询和可视化效果的灵活性。与第三方工具的集成和对通用工具的支持 APIs 增强了服务的可扩展性。评估监控解决方案能否适应您的应用程序和基础设施的独特需求。

高度可定制和可扩展的服务使您的团队能够微调监控参数,适应不断变化的用例,并与现有的工作流程和工具无缝集成。优先考虑提供高度可配置性的解决方案,使您能够针对自己的特定 AWS 环境和操作偏好优化监控。

Security and compliance

评估服务如何遵守 AWS 安全最佳实践,确保数据的机密性、完整性和可用性。检查传输和静态加密、访问控制和安全身份验证机制等功能。评估该服务是否支持遵守适用于您所在行业的相关法规和标准。

寻找审计跟踪功能和生成合规报告的能力。目标是通过使用符合监管要求的监控实践来帮助保护敏感数据。

优先考虑提供强大安全态势的服务,使您的组织能够维护安全和合规的 AWS 环境,同时深入了解您的应用程序和基础架构。

Machine learning and analytics

评估该服务是否使用机器学习 (ML) 来提供高级见解、异常检测和预测分析。寻找能够自动识别数据中的模式、趋势和潜在问题的功能。

强大的机器学习组件可以提高异常检测的准确性,减少误报并提高监控系统的整体效率。此外,请考虑所提供的分析的深度,例如根本原因分析和趋势预测。具有强大机器学习和分析功能的服务使您的团队能够主动解决问题,优化性能,并更深入地了解 AWS 应用程序和基础架构的行为。

Global reach

全球覆盖范围是 AWS 监测和可观测性服务的关键标准,尤其是在您的基础设施分布在多个区域的情况下。评估监控服务是否提供对不同资源性能和运行状况的可见性 AWS 区域。

考虑能够汇总和分析来自不同地理位置的数据,确保全面了解您的全球基础架构。寻找支持集中管理和监控的功能,使您能够高效地监督全球范围内的运营。

具有强大全球影响力的服务有助于确保您可以保持一致的监控实践、解决问题并无缝优化整个 AWS 部署范围的性能,无论地理边界如何。对于具有地理分布式或多云基础架构的组织来说,此功能特别有价值。

选择

既然您已经知道了评估监控和可观测性选项所依据的标准,那么您就可以选择哪种 AWS 监控和可观测性服务可能最适合您的组织需求了。

下表突出显示了哪些服务针对哪些情况进行了优化。使用下表来帮助确定最适合您的组织和用例的服务。

应用场景 它针对什么进行了优化? 监控和可观测性服务
监控和提醒

这些服务经过优化,可提供实时可见性、主动问题检测、资源优化和高效的事件响应,从而促进应用程序和基础设施的整体运行状况。

Amazon CloudWatch

亚马逊 CloudWatch 日志

Amazon EventBridge

应用程序性能监控

这些服务提供对应用程序行为的全面见解,提供用于识别和解决性能瓶颈的工具,帮助进行高效的故障排除,并有助于跨分布式应用程序和 Web 应用程序提供现代用户体验。

亚马逊 CloudWatch 应用程序信号

Amazon Managed Service for Prometheus

AWS X-Ray

Amazon S CloudWatch ynthetics

基础设施可观察性

这些服务可以全面了解您的云资源,帮助您就资源利用率、性能优化和成本效益做出更明智的决策。

亚马逊 CloudWatch 指标

亚马逊 CloudWatch 容器洞察

记录和分析

这些服务可帮助您高效管理和分析日志数据、排除故障、检测异常、支持安全性、满足合规性要求以及获得有关应用程序和基础设施的可行见解。

亚马逊 Cloudwatch 记录见解

Amazon CloudWatch 日志异常检测

Amazon Managed Grafana

亚马逊 OpenSearch 服务

Amazon Kinesis Data Streams

安全和合规性监控

经过优化,可提供强大的安全框架,支持主动威胁检测、持续监控、合规性跟踪和审计功能,以帮助保护您的 AWS 资源并维护安全合规的环境。

Amazon GuardDuty

AWS Config

AWS CloudTrail

网络监测

这些服务提供对网络流量的可见性,通过检测和预防威胁来增强安全性,实现有效的网络流量管理,并支持事件响应活动。

Amazon CloudWatch 网络监视器

Amazon CloudWatch 互联网监视器

亚马逊 VPC 流日志

AWS Network Firewall

分布式跟踪

这些服务提供了分布式应用程序内部的交互和依赖关系的全面视图。它们使您能够诊断性能瓶颈,优化应用程序性能,并通过深入了解应用程序的不同部分如何通信和交互来支持复杂系统的平稳运行。

AWS 发行版适用于 OpenTelemetry

AWS X-Ray

Amazon CloudWatch 应用程序信号(预览)

混合云和多云可观测性

保持可靠的运营,为客户提供现代数字体验,并获得帮助以实现服务级别目标和性能承诺。

Amazon CloudWatch (支持混合云和多云环境)

使用

现在,您应该清楚地了解每项 AWS 监控和可观测性服务(以及支持 AWS 工具和服务)的用途,以及哪些可能适合您。

为了探索如何使用每种可 AWS 观测性服务并了解有关这些服务的更多信息,我们提供了探索每项服务如何运作的途径。以下部分提供了指向深入文档、动手教程和资源的链接,以帮助您入门。

Amazon CloudWatch
  • 亚马逊入门 CloudWatch

    使用 Amazon 实时监控您的 AWS 资源和运行的应用程序 CloudWatch。 AWS 您可以使用 CloudWatch 来收集和跟踪指标,这些指标是您可以衡量资源和应用程序的变量。

    浏览指南

  • 亚马逊 CloudWatch 指标入门

    本指南讨论了基本监控和详细监控、如何绘制指标图表以及如何使用 CloudWatch 异常检测。

    浏览指南

  • 在亚马逊 EKS 和 Kubernetes 上设置容器见解

    在您的 EKS 集群上设置 Amazon Obs CloudWatch ervability ESK 插件和 ADTO 以向其发送指标。 CloudWatch你还将学习如何设置 Fluent Bit 或 Fluentd 以将日志发送到日志。 CloudWatch

    浏览指南

  • 开始使用 Amazon CloudWatch 应用程序见解

    了解如何使用控制台启用 Applicati CloudWatch on Insights 来管理要监控的应用程序。

    浏览指南

  • 使用 Container Insights

    了解 Container Insights 如何 CloudWatch 收集、汇总和汇总来自容器化应用程序和微服务的指标和日志。

    浏览指南

  • 在 Amazon ECS 上设置容器见解

    学习配置集群和服务级别指标,部署 ADOT 以收集 EC2实例级别指标,以及设置 FireLens 向日志发送日 CloudWatch 志。

    浏览指南

Amazon CloudWatch Application Insights
  • 开始使用 Amazon CloudWatch 应用程序信号

    在本指南中,您将学习如何自动检测您的应用程序, AWS 以便您可以监控当前应用程序的运行状况并根据业务目标跟踪长期应用程序性能。

    浏览指南

  • Amazon CloudWatch 应用程序信号,用于自动检测您的应用程序

    这篇博文深入介绍了 AWS 管理控制台 Amazon CloudWatch 应用程序信号,演示了如何为 EKS 集群收集遥测数据。

    阅读博客文章

  • 如何使用 SLOs Amazon 应用程序信号监控 CloudWatch应用程序运行状况

    这篇博客文章演示了 Amazon App CloudWatch lication 信号如何使您能够自动检测和操作应用程序,从而根据 AWS 最重要的目标跟踪应用程序性能。

    阅读博客文章

Amazon CloudWatch Lambda Insights
  • CloudWatch Lambda 见解简介

    学习如何创建一些 “Hello World” Lambda 函数并使用 Lambda Insights 对其进行监控。您将使用 AWS CDK 来部署架构。

    阅读博客

  • 使用 Amazon CloudWatch Lambda Insights 提高运营可见性

    学习如何使用 Lambda Insights 来提供简单便捷的操作监督和对函数行为的可见性。 AWS Lambda

    阅读博客

Amazon CloudWatch Logs
  • 开始使用 Amazon CloudWatch 日志

    了解如何安装统一 CloudWatch 代理以及如何使用配置指标收集 CloudFormation。

    阅读指南

  • 使用 “日志见解” 分析 CloudWatch 日志数据

    本指南将演示如何开始使用 Logs Insights 查询、在图表中可视化日志数据以及向仪表板添加查询。

    开始使用指南

  • Amazon CloudWatch 日志见解 — 快速、交互式的日志分析

    使用 Logs Insights 可以利用由创建的所有各种日志中显示的数据点、模式、趋势和见解, AWS 服务 以了解您的应用程序和 AWS 资源的行为,确定有待改进的余地,并解决运营问题。

    阅读博客文章

Amazon CloudWatch Synthetics
  • 使用 Synthetics 监控

    本指南演示了如何创建 Canary,即按计划运行的可配置脚本,并提供了 canary 脚本的示例代码。

    浏览指南

  • 使用 Amazon S CloudWatch ynthetics 安全监控用户工作流程体验和 AWS Secrets Manager

    如何使用 Amazon Synthetics 创建、部署和监控 CloudWatch综合监控解决方案。

    阅读博客文章

Amazon EventBridge
  • 开始使用亚马逊 EventBridge

    学习创建将事件路由到目标的基本规则。

    浏览指南

  • 存档并重播 Amazon EventBridge 活动

    使用 Lambda 控制台创建用作 EventBridge 规则目标的函数。

    浏览指南

  • 使用记录 Amazon EC2 实例的状态 EventBridge

    创建一个 AWS Lambda 函数来记录 Amazon EC2 实例的状态变化。您将记录任何新 EC2 实例的启动。

    使用教程

  • 使用 Amazon 构建事件驱动型应用程序 EventBridge

    了解如何使用 AWS Serverless Application Model ()AWS SAM CLI 构建和部署以及事件驱动应用程序。

    阅读博客

AWS CloudTrail
  • 入门 AWS CloudTrail

    AWS CloudTrail AWS 服务 可帮助您实现运营和风险审计、治理和合规性 AWS 账户。以下是入门方法。

    浏览指南

  • 评论 AWS 账户 活动

    了解如何在 AWS API 活动中 AWS 账户 查看支持的服务 CloudTrail。

    使用教程

  • 创建跟踪

    了解如何创建跟踪以记录所有区域 AWS 的 API 活动,包括数据和 Insights 事件。

    使用教程

  • AWS CloudTrail 日志监控研讨会

    了解如何将 CloudTrail 日志集成 CloudWatch 到 CloudWatch 日志见解、 CloudWatch 指标筛选器、 CloudWatch 指标警报和 CloudWatch 仪表板等功能中并使用这些功能。

    使用工作坊

  • AWS CloudTrail 最佳实践

    用于在整个组织 CloudTrail 中启用审计的最佳实践。

    阅读博客

AWS Config
  • 入门 AWS Config

    AWS Config 提供了中 AWS 资源配置的详细视图 AWS 账户。这说明了如何开始使用它。

    浏览指南

  • 设置 AWS Config (控制台)

    了解如何 AWS 账户 使用 AWS 管理控制台. AWS Config

    浏览指南

  • AWS Config 使用进行设置 AWS CLI

    了解如何 AWS 账户 使用 AWS CLI. AWS Config

    浏览指南

Amazon Managed Grafana
  • 亚马逊托管 Grafana 入门

    了解如何开始使用 Amazon Managed Grafana 并创建您的第一个工作空间,然后在该工作区中连接到 Grafana 控制台。

    浏览指南

  • 亚马逊托管 Grafana-入门

    了解如何与适用于 Prometheus 的亚马逊托管服务集成以及如何创建自定义控制面板。

    阅读博客

  • 使用 Amazon Managed Grafana 可视化并深入了解您的 AWS 成本和使用情况

    了解如何使用亚马逊托管 Grafana 可视化和分析您的 AWS 成本和使用数据。

    阅读博客

Amazon Managed Service for Prometheus
  • 开始使用适用于 Prometheus 的亚马逊托管服务

    为 Prometheus 工作空间创建亚马逊托管服务,设置向这些工作空间提取 Prometheus 指标,然后查询这些指标。

    浏览指南

  • 容器洞察 Prometheus 指标监控

    了解如何使用容器见解自动发现容器化工作负载中的 Prometheus 指标。 CloudWatch

    浏览指南

  • Amazon Managed Service for Prometheus FAQs

    有关亚马逊 Prometheus 托管服务的常见问题。

    阅读 FAQs

Amazon OpenSearch Service
  • 亚马逊 OpenSearch 服务入门

    使用 Amazon OpenSearch 服务创建和配置测试域。 OpenSearch 服务域是 OpenSearch 集群的同义词。

    浏览指南

  • 开始使用 Amazon OpenSearch Serverless

    本教程将引导您完成快速启动并运行 Amazon OpenSearch Serverless 搜索集合的基本步骤

    使用教程

  • 在 Amazon OpenSearch 服务中创建和搜索文档

    了解如何在亚马逊 OpenSearch 服务中创建和搜索文档。

    使用教程

  • 开始使用 Amazon OpenSearch Ingestion

    了解如何使用 Amazon OpenSearch Ingestion 将数据提取到域名和集合中。

    浏览指南

  • SIEM on Amazon OpenSearch 服务研讨会

    在 Amazon S OpenSearch ervice 上构建安全日志分析平台,并开始构建经济实惠的日志提取、分析和仪表板管理解决方案。

    使用工作坊

  • 在 Amazon OpenSearch 服务中创建和搜索文档

    了解如何在亚马逊 OpenSearch 服务中创建和搜索文档。

    使用教程

AWS Distro for OpenTelemetry
  • OpenTelemetry (ADOT) AWS 收藏版发行版入门

    逐步完成在本地构建 ADOT 系列的步骤。

    浏览指南

  • AWS 发行版适用于 OpenTelemetry JavaScript

    了解如何检测您的 JavaScript 应用程序并将相关指标发送到各种 AWS 监控解决方案。

    浏览指南

  • AWS 适用于 Python 的 OpenTelemetry 发行版

    本指南将演示如何检测您的 Python 应用程序以及如何向各种 AWS 监控解决方案发送相关指标。

    浏览指南

AWS X-Ray
  • 入门 AWS X-Ray

    本指南将引导您启动示例应用程序。然后,您将学习如何检测您的应用程序并探索与 X-Ray 集成的其他服务。

    浏览指南

  • One Observability 讲习会

    本研讨会为您提供各种用于监控和可观测性的工具 AWS 的实践体验,包括 AWS X-Ray 和ADOT。

    使用工作坊

  • 使用应用程序日志记录和监控 AWS X-Ray

    了解如何 AWS X-Ray 收集有关您的应用程序所处理的请求的数据,它可以帮助您查看、筛选和深入了解这些数据,从而发现问题和优化机会。

    浏览指南

Explore

  • 解决方案

    探索可帮助您实现监控和可观察性的 AWS解决方案。

    探索解决方案

  • 白皮书

    浏览白皮书以帮助您入门,学习最佳实践,并了解您的监控和可观察性选项。

    浏览白皮书

  • 视频、模式和指导

    浏览其他架构指南,了解监控和可观测性服务的常见用例。

    探索其他资产