gpt4 book ai didi

kubernetes - Prometheus 未从 GKE 中的 cadvisor 接收指标

转载 作者:行者123 更新时间:2023-12-05 02:05:16 31 4
gpt4 key购买 nike

嘿嘿,

我已经在 GKE v1.16.x 中使用 kubernetes 部署了 prometheus、grafana、kube-state-metrics、alertmanager 等设置。我用过 https://github.com/do-community/doks-monitoring作为 yaml 文件的起点。

几天来我一直在尝试调试一种情况,如果能提供一些帮助,我将不胜感激。我的普罗米修斯节点没有从 cadvisor 获取指标。

  • 部署中的所有服务和 pod 都在运行。 prometheus、kube-state-metrics、node-exporter,全部运行 - 没有错误。
  • prometheus UI 中的 cadvisor 目标显示为“up”。
  • Prometheus 能够从集群收集其他指标,但不能收集 pod/容器级别的使用指标。
  • 我在查询 kubectl get --raw "/api/v1/nodes/<your_node>/proxy/metrics/cadvisor" 时可以看到 cadvisor 指标,但是当我在普罗米修斯中寻找 container_cpu_usage 时或 container_memory_usage , 没有数据。
  • 我在 prometheus 中的 cadvisor 抓取作业配置
    - job_name: kubernetes-cadvisor
honor_timestamps: true
scrape_interval: 15s
scrape_timeout: 10s
metrics_path: /metrics/cadvisor
scheme: https
bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token
tls_config:
ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
insecure_skip_verify: true
kubernetes_sd_configs:
- role: node
relabel_configs:
- action: labelmap
regex: __meta_kubernetes_node_label_(.+)

摘自 prometheus/docs/examples。

我在路径和抓取配置方面尝试了一大堆不同的变体,但没有成功。基于我可以使用 kubectl get 查询指标这一事实(它们存在)在我看来问题是普罗米修斯与 cadvisor 目标通信。

如果有人有过此配置的经验,我肯定会感谢一些帮助调试。

干杯

最佳答案

我找到了一个博客,其中包含适合我的示例配置。 cadvisor(和 kubelet)指标的 GKE 端点与文档示例中的标准端点不同。这是我工作的普罗米修斯工作的摘录:

    - job_name: kubernetes-cadvisor
honor_timestamps: true
scrape_interval: 15s
scrape_timeout: 10s
metrics_path: /metrics/cadvisor
scheme: https
bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token
tls_config:
ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
insecure_skip_verify: true
kubernetes_sd_configs:
- role: node
relabel_configs:
- action: labelmap
regex: __meta_kubernetes_node_label_(.+)
- target_label: __address__
replacement: kubernetes.default.svc.cluster.local:443
- source_labels: [__meta_kubernetes_node_name]
regex: (.+)
target_label: __metrics_path__
replacement: /api/v1/nodes/${1}/proxy/metrics/cadvisor
- job_name: kubernetes-kubelet
honor_timestamps: true
scrape_interval: 15s
scrape_timeout: 10s
metrics_path: /metrics
scheme: https
bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token
tls_config:
ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
insecure_skip_verify: true
kubernetes_sd_configs:
- role: node
relabel_configs:
- action: labelmap
regex: __meta_kubernetes_node_label_(.+)
- target_label: __address__
replacement: kubernetes.default.svc.cluster.local:443
- target_label: __metrics_path__
source_labels: [__meta_kubernetes_node_name]
regex: (.+)
replacement: /api/v1/nodes/${1}/proxy/metrics

编辑:这是博文的链接 -> https://medium.com/htc-research-engineering-blog/monitoring-kubernetes-clusters-with-grafana-e2a413febefd .

关于kubernetes - Prometheus 未从 GKE 中的 cadvisor 接收指标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63691208/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com