Kubernetes 和 Dynatrace 集成
强大的性能和简单的集成,由 Telegraf 提供支持,Telegraf 是 InfluxData 构建的开源数据连接器。
50 亿+
Telegraf 下载量
#1
时序数据库
来源:DB Engines
10 亿+
InfluxDB 下载量
2,800+
贡献者
目录
输入和输出集成概述
此插件通过与 Kubelet API 通信来捕获 Kubernetes Pod 和容器的指标。
Dynatrace 插件允许用户将 Telegraf 收集的指标直接发送到 Dynatrace 进行监控和分析。此集成增强了系统和应用程序的可观测性,为性能和运行状况提供了宝贵的见解。
集成详情
Kubernetes
Kubernetes 输入插件与 Kubelet API 接口,以收集在单个主机上运行的 Pod 和容器的指标,理想情况下作为 Kubernetes 安装中 DaemonSet 的一部分。通过在集群中的每个节点上运行,它从本地运行的 Kubelet 收集指标,确保数据反映环境的实时状态。作为一个快速发展的项目,Kubernetes 经常更新,此插件遵循主要云提供商支持的版本,在有限的时间跨度内保持跨多个版本的兼容性。重要考虑因素是潜在的高序列基数,这可能会给数据库带来负担;因此,建议用户实施过滤技术和保留策略以有效管理此负载。配置选项提供了插件行为的灵活定制,以无缝集成到不同的设置中,从而增强其在监控 Kubernetes 环境中的实用性。
Dynatrace
Telegraf 的 Dynatrace 插件有助于通过 Dynatrace Metrics API V2 将指标传输到 Dynatrace 平台。此插件可以在两种模式下运行:它可以与 Dynatrace OneAgent 一起运行,后者自动执行身份验证,或者它可以在独立配置中运行,后者需要手动指定 URL 和 API 令牌以用于没有 OneAgent 的环境。除非明确配置为使用可用的配置选项将某些指标视为增量计数器,否则该插件主要将指标报告为仪表。此功能使用户能够自定义发送到 Dynatrace 的指标的行为,从而利用该平台的强大功能进行全面的性能监控和可观测性。对于用户而言,确保 Dynatrace 和 Telegraf 都符合版本要求至关重要,从而在与 Dynatrace 生态系统集成时优化兼容性和性能。
配置
Kubernetes
[[inputs.kubernetes]]
## URL for the kubelet, if empty read metrics from all nodes in the cluster
url = "http://127.0.0.1:10255"
## Use bearer token for authorization. ('bearer_token' takes priority)
## If both of these are empty, we'll use the default serviceaccount:
## at: /var/run/secrets/kubernetes.io/serviceaccount/token
##
## To re-read the token at each interval, please use a file with the
## bearer_token option. If given a string, Telegraf will always use that
## token.
# bearer_token = "/var/run/secrets/kubernetes.io/serviceaccount/token"
## OR
# bearer_token_string = "abc_123"
## Kubernetes Node Metric Name
## The default Kubernetes node metric name (i.e. kubernetes_node) is the same
## for the kubernetes and kube_inventory plugins. To avoid conflicts, set this
## option to a different value.
# node_metric_name = "kubernetes_node"
## Pod labels to be added as tags. An empty array for both include and
## exclude will include all labels.
# label_include = []
# label_exclude = ["*"]
## Set response_timeout (default 5 seconds)
# response_timeout = "5s"
## Optional TLS Config
# tls_ca = /path/to/cafile
# tls_cert = /path/to/certfile
# tls_key = /path/to/keyfile
## Use TLS but skip chain & host verification
# insecure_skip_verify = false
Dynatrace
[[outputs.dynatrace]]
## For usage with the Dynatrace OneAgent you can omit any configuration,
## the only requirement is that the OneAgent is running on the same host.
## Only setup environment url and token if you want to monitor a Host without the OneAgent present.
##
## Your Dynatrace environment URL.
## For Dynatrace OneAgent you can leave this empty or set it to "http://127.0.0.1:14499/metrics/ingest" (default)
## For Dynatrace SaaS environments the URL scheme is "https://{your-environment-id}.live.dynatrace.com/api/v2/metrics/ingest"
## For Dynatrace Managed environments the URL scheme is "https://{your-domain}/e/{your-environment-id}/api/v2/metrics/ingest"
url = ""
## Your Dynatrace API token.
## Create an API token within your Dynatrace environment, by navigating to Settings > Integration > Dynatrace API
## The API token needs data ingest scope permission. When using OneAgent, no API token is required.
api_token = ""
## Optional prefix for metric names (e.g.: "telegraf")
prefix = "telegraf"
## Optional TLS Config
# tls_ca = "/etc/telegraf/ca.pem"
# tls_cert = "/etc/telegraf/cert.pem"
# tls_key = "/etc/telegraf/key.pem"
## Optional flag for ignoring tls certificate check
# insecure_skip_verify = false
## Connection timeout, defaults to "5s" if not set.
timeout = "5s"
## If you want metrics to be treated and reported as delta counters, add the metric names here
additional_counters = [ ]
## In addition or as an alternative to additional_counters, if you want metrics to be treated and
## reported as delta counters using regular expression pattern matching
additional_counters_patterns = [ ]
## NOTE: Due to the way TOML is parsed, tables must be at the END of the
## plugin definition, otherwise additional config options are read as part of the
## table
## Optional dimensions to be added to every metric
# [outputs.dynatrace.default_dimensions]
# default_key = "default value"
输入和输出集成示例
Kubernetes
-
动态资源分配监控: 通过利用 Kubernetes 插件,团队可以为跨各种 Pod 和容器的资源使用模式设置警报。这种主动监控方法可以根据特定阈值自动扩展资源,从而帮助优化性能,同时最大限度地减少高峰使用期间的成本。
-
多租户资源隔离分析: 使用 Kubernetes 的组织可以利用此插件来跟踪每个命名空间的资源消耗。在多租户场景中,了解不同团队之间的资源分配和使用情况对于确保公平访问和性能保证至关重要,从而带来更好的资源管理策略。
-
实时健康仪表板: 将 Kubernetes 插件捕获的数据集成到 Grafana 等可视化工具中,以创建实时仪表板。这些仪表板提供了对 Kubernetes 环境的整体健康状况和性能的洞察,使团队能够快速识别和纠正跨集群、Pod 和容器的问题。
-
自动化事件响应工作流程: 通过将 Kubernetes 插件与警报管理系统相结合,团队可以根据实时指标自动化事件响应程序。如果 Pod 的资源使用量超过预定义限制,则自动化工作流程可以触发补救措施,例如重新启动 Pod 或重新分配资源,所有这些措施都有助于提高系统弹性。
Dynatrace
-
云基础设施监控: 利用 Dynatrace 插件来监控云基础设施设置,将来自 Telegraf 的实时指标馈送到 Dynatrace。此集成提供了资源利用率、应用程序性能和系统健康状况的整体视图,从而能够主动响应跨各种云环境的性能问题。
-
自定义应用程序性能指标: 通过配置 Dynatrace 输出插件以发送来自 Telegraf 的定制指标,实现自定义应用程序特定指标。通过利用额外的计数器和维度选项,开发团队可以获得与应用程序运营需求精确对齐的见解,从而实现有针对性的优化工作。
-
多环境指标管理: 对于运行多个 Dynatrace 环境(例如,生产、暂存和开发)的组织,请使用此插件从单个 Telegraf 实例管理所有环境的指标。通过正确配置端点和 API 令牌,团队可以在整个 SDLC 中保持一致的监控实践,确保在开发过程的早期检测到性能异常。
-
基于指标更改的自动化警报: 将 Dynatrace 输出插件与警报机制集成,该机制在特定指标超过定义的阈值时触发通知。这种情况涉及配置额外的计数器来监控关键的应用程序性能指标,从而能够快速采取补救措施以保持服务可用性和用户满意度。
反馈
感谢您成为我们社区的一份子!如果您有任何一般性反馈或在这些页面上发现了任何错误,我们欢迎并鼓励您提出意见。请在 InfluxDB 社区 Slack 中提交您的反馈。