目录
输入和输出集成概述
此插件将从 Amazon CloudWatch 拉取指标统计信息,从而简化监控和分析 AWS 资源的过程。
此插件使用 Prometheus 远程写入协议通过 HTTP 将指标从 Telegraf 发送到 Thanos,从而可以高效且可扩展地摄取到 Thanos Receive 组件中。
集成详情
Amazon CloudWatch
Amazon CloudWatch 插件允许用户从 Amazon 的 CloudWatch 服务中拉取详细的指标统计信息。作为一种监控解决方案,CloudWatch 使用户能够跟踪与 AWS 资源和应用程序相关的各种指标,从而改进操作和性能洞察力。该插件使用结构化的身份验证方法,通过结合 STS(安全令牌服务)、共享凭证、环境变量和 EC2 实例配置文件,优先考虑安全性和灵活性,确保对 AWS 资源的强大访问控制。主要功能包括定义特定指标命名空间、指标聚合周期以及可选地包含链接账户以进行跨账户监控。此插件的一个重要方面是它能够处理稀疏和密集指标格式,从而允许根据用户偏好使用不同的输出结构。因此,它通过直接从 CloudWatch 提供全面、及时的数据,支持云监控和分析中的多种用例。
Thanos
Telegraf 的 HTTP 插件可以通过其兼容 Remote Write 的 Receive 组件将指标直接发送到 Thanos。通过将数据格式设置为 prometheusremotewrite
,Telegraf 可以将指标序列化为与原生 Prometheus 客户端使用的相同的基于 protobuf 的格式。此设置实现了高吞吐量、低延迟的指标摄取到 Thanos 中,从而促进了大规模的集中式可观察性。这在混合环境中尤其有用,在这些环境中,Telegraf 从 Prometheus 原生范围之外的系统(例如 SNMP 设备、Windows 主机或自定义应用程序)收集指标,并将它们直接流式传输到 Thanos 以进行长期存储和全局查询。
配置
Amazon CloudWatch
[[inputs.cloudwatch]]
region = "us-east-1"
# access_key = ""
# secret_key = ""
# token = ""
# role_arn = ""
# web_identity_token_file = ""
# role_session_name = ""
# profile = ""
# shared_credential_file = ""
# include_linked_accounts = false
# endpoint_url = ""
# use_system_proxy = false
# http_proxy_url = "http://localhost:8888"
period = "5m"
delay = "5m"
interval = "5m"
#recently_active = "PT3H"
# cache_ttl = "1h"
namespaces = ["AWS/ELB"]
# metric_format = "sparse"
# ratelimit = 25
# timeout = "5s"
# batch_size = 500
# statistic_include = ["average", "sum", "minimum", "maximum", sample_count]
# statistic_exclude = []
# [[inputs.cloudwatch.metrics]]
# names = ["Latency", "RequestCount"]
# [[inputs.cloudwatch.metrics.dimensions]]
# name = "LoadBalancerName"
# value = "p-example"
Thanos
[[outputs.http]]
## Thanos Receive endpoint for remote write
url = "http://thanos-receive.example.com/api/v1/receive"
## HTTP method
method = "POST"
## Data format set to Prometheus remote write
data_format = "prometheusremotewrite"
## Optional headers (authorization, etc.)
# [outputs.http.headers]
# Authorization = "Bearer YOUR_TOKEN"
## Optional TLS configuration
# tls_ca = "/path/to/ca.pem"
# tls_cert = "/path/to/cert.pem"
# tls_key = "/path/to/key.pem"
# insecure_skip_verify = false
## Request timeout
timeout = "10s"
输入和输出集成示例
Amazon CloudWatch
-
跨账户监控:通过启用
include_linked_accounts
选项,利用此插件监控多个 AWS 账户中的资源。这种情况允许管理多个 AWS 账户的公司将指标聚合到中央监控仪表板中,提供所有指标的统一视图,同时通过适当的角色管理确保安全的数据访问和合规性。 -
动态警报系统:将此插件与警报工具集成,以创建一个自动化系统,该系统根据 CloudWatch 指标的已定义阈值触发警报。例如,如果延迟指标超过指定限制,则可以将警报发送到相关团队,从而能够主动响应性能问题并减少停机时间。
-
成本管理仪表板:使用从此插件收集的指标构建成本管理仪表板,该仪表板可视化 AWS 服务使用指标随时间的变化。通过将这些指标与计费数据相关联,组织可以识别高成本服务,并采取明智的措施来优化其资源使用和支出。
-
应用程序性能基准测试:利用从 AWS 上运行的应用程序收集的指标来执行性能基准测试。例如,通过跟踪 ELB 的延迟和请求计数指标,开发人员可以评估应用程序更改对其性能的影响,从而做出数据驱动的优化决策。
Thanos
-
无代理云监控:在云虚拟机中部署 Telegraf 代理以收集系统和应用程序指标,然后使用 Remote Write 将它们直接流式传输到 Thanos。这提供了集中式可观察性,而无需在每个位置都安装 Prometheus 节点。
-
可扩展的 Windows 主机监控:在 Windows 机器上使用 Telegraf 收集操作系统级别的指标,并通过 Remote Write 将它们发送到 Thanos Receive。这实现了跨异构环境的可观察性,而原生 Prometheus 仅在 Linux 上受支持。
-
跨区域指标联合:多个地理区域中的 Telegraf 代理可以使用此插件将数据推送到区域本地的 Thanos Receivers。从那里,Thanos 可以全局去重和查询指标,从而降低延迟和网络出口成本。
-
将第三方数据集成到 Thanos 中:使用 Telegraf 输入从自定义遥测源(例如 REST API 或专有日志)收集指标,并通过 Remote Write 将它们转发到 Thanos。这会将非原生数据引入 Prometheus 兼容的长期分析管道中。
反馈
感谢您成为我们社区的一份子!如果您有任何一般性反馈或在这些页面上发现了任何错误,我们欢迎并鼓励您提出意见。请在 InfluxDB 社区 Slack 中提交您的反馈。