如何在Grafana中获取K8s指定命名空间的Pod及容器就绪状态并配置Container变量
Grafana中配置Kubernetes容器变量的步骤
1. 进入变量配置界面
打开目标Grafana仪表盘,点击顶部齿轮状的「设置」按钮,切换到「变量」标签页,点击「添加变量」。
2. 设置变量基础属性
- 变量类型选择查询
- 变量名称填写
container(需与你查询语句中的$container保持一致) - 可选:填写标签如「容器名称」,方便识别变量用途
3. 配置数据源与查询逻辑
- 数据源选择已配置好的Prometheus实例(需确保该实例已采集Kubernetes的
kube-state-metrics指标) - 查询框输入以下语句:
该语句会根据已选择的label_values(kube_pod_container_status_ready{namespace="$namespace",pod="$pod"}, container)namespace和pod变量,动态拉取对应Pod下的所有容器名称列表。
4. 优化变量选项(可选)
- 勾选「包含全部选项」,支持一键查看当前Pod下所有容器的就绪状态
- 「全部选项的标签」可填写「所有容器」
- 「刷新」选项选择「在变量值变化时」,确保切换命名空间或Pod后,容器列表自动更新
5. 验证配置
点击「保存变量」返回仪表盘,选择对应的命名空间和Pod后,container下拉框会自动加载该Pod下的容器列表,此时你的查询语句kube_pod_container_status_ready{namespace="$namespace",pod="$pod",container="$container"}即可正常过滤出目标容器的就绪状态。
额外注意事项
如果尚未配置namespace和pod变量,需先完成这两个变量的配置:
namespace变量查询语句:label_values(kube_pod_container_status_ready, namespace)pod变量查询语句:label_values(kube_pod_container_status_ready{namespace="$namespace"}, pod)
内容的提问来源于stack exchange,提问作者Shikha Priyedarshi
相关产品推荐
相关产品推荐

