kubernetes - Kubernetes 更改 __meta_kubernetes_namespace
问题描述
我正在尝试监视我的集群 Kubernetes,并且我正在使用 prometheus 来获取所有信息。
它运行良好,但我需要监视一些特定的工作人员,并且我需要使用 __meta_kubernetes_namespace 对其进行标记,但找不到任何参考解释如何在 kubnernetes 环境中更改它。
请帮我解决它,
谢谢你。
解决方案
您需要为Prometheus编写自己的抓取配置。
这是 istio envoy 代理统计的部分片段,您应该根据要监控的资源以及在哪里寻找它们来编写自己的:
- job_name: 'envoy-stats'
metrics_path: /stats/prometheus
kubernetes_sd_configs:
- role: pod
relabel_configs:
- source_labels: [__meta_kubernetes_pod_container_port_name]
action: keep
regex: '.*-envoy-prom'
- source_labels: [__meta_kubernetes_namespace]
action: replace
target_label: namespace
- source_labels: [__meta_kubernetes_pod_name]
action: replace
target_label: pod_name
metric_relabel_configs:
# Exclude some of the envoy metrics that have massive cardinality
# This list may need to be pruned further moving forward, as informed
# by performance and scalability testing.
- source_labels: [ __name__ ]
regex: 'envoy_http_(stats|admin).*'
action: drop
- source_labels: [ __name__ ]
regex: 'envoy_cluster_(lb|retry|bind|internal|max|original).*'
action: drop
也请复习普罗米修斯的第一步,因为这将有助于普罗米修斯的工作。
推荐阅读
- reactjs - React 路由器,将 # 添加到 url
- maven - Maven flatten 插件不工作不能代替我的版本属性
- vue.js - 在已经规范化的 vuex-orm 数据库中插入数据
- javascript - 在gridview的edittemplate中自动计算文本框值
- amazon-web-services - AWS REST Api 作为 S3 代理并访问客户端特定的存储桶
- erlang - 为什么 gen_server 超时
- c# - 如何在谷歌地图上添加精确定位和显示当前位置
- reactjs - 需要帮助发送正确的有效负载以更新状态
- python - 使用 tensorflow 训练模型时数据大小发生变化
- php - php中的登录功能问题