为什么我的 DataDog 实例报告 Kubernetes "no_pod"?

Why is my DataDog instance reporting a Kubernetes "no_pod"?

我们是 运行 AWS 中的 Kubernetes 集群,我们正在使用 dd-agent DaemonSet 在 DataDog 中收集指标。

我们的指标中显示了一个标记为 "no_pod" 的 Pod,它正在使用大量资源,Memory/CPU/NetworkTx/NetworkRX。

是否解释了这个 pod 是什么,我如何找到它、杀死它、重新启动它等等?

我找到了 dd-agent source code,它似乎定义了 "no_pod" 标签,但我不太明白它为什么在那里,它来自哪里以及我如何可以通过kubectl等找到

在与 DataDog 的支持团队交谈后,我设法找到了以下与 no_pod pods 相关的信息。

Our Kubernetes check is getting the list of containers from the Kubernetes API, which exposes aggregated data. In the metric explorer configuration here, you can see a couple of containers named /docker and / that are getting picked up along with the other containers. Metrics with pod_name:no_pod that come from container_name:/ and container_name:/docker are just metrics aggregated across multiple containers. (So it makes sense that these are the highest values in your graphs.) If you don't want your graphs to show these aggregated container metrics though, you can clone the dashboard and then exclude these pods from the query. To do so, on the cloned dashboard, just edit the query in the JSON tab, and in the tag scope, add !pod_name:no_pod.

所以看起来这些 pods 是群集外的 docker 和根级别容器 运行 并且将始终显示,除非你想专门过滤掉它们 我现在做。

非常感谢 DataDog 的支持人员为我调查了这个问题,并就 pods 是什么给了我一个很好的解释,并且基本上确认我可以安全地过滤掉这些而不用担心关于他们。