kubectl - 如何检索 kubernetes 中默认标签的值?

kubectl - How to retrieve values of default labels in kubernetes?

如前所述 here:“目前 namespacepod 是指标中提供的默认标签。”


kubectl -n mynamespace get pods --show-labels 显示在 Kubernetes 的部署 yaml 中定义的标签值


目标是通过普罗米修斯监控的 Grafana 仪表板的 promQL 使用默认标签(namespace & pod 由 kubernetes 提供)值。

sum(container_memory_working_set_bytes{namespace="mynamespace",pod=~"unknown"}) by (pod)

如何使用 kubectl 查看默认标签 pod 的值?

根据您分享的 link,{namespace}{pod} 是指标中提供的默认标签,它们指的是 [=12= 中包含的公开指标]

kube-state-metrics (KSM) 是一个简单的服务,它监听 Kubernetes API 服务器并生成关于对象状态的指标。 公开的指标详细 in this document.

在接下来的 link 中,您可以找到 Pods and namespace 的相关指标。

关于 pods 的默认标签,您需要创建一个 Pod label controller or indicate the label in the Pod Template

如果您没有为控制器明确指定标签,Kubernetes 将使用 pod 模板标签作为控制器本身的默认标签。如果未指定,pod 选择器也将默认为 pod 模板标签。

如果您想了解更多关于标签的最佳实践,请follow this link。 如果您想了解更多有关标签和选择器的信息,follow this link。 更多关于 Pod Template here.