Promethues 之容器监控

说到容器监控我们自然会想到 cAdvisor,我们前面也说过cAdvisor已经内置在了 kubelet 组件之中,所以我们不需要单独去安装,cAdvisor 的数据路径为 /api/v1/nodes/<node>/proxy/metrics,同样我们这里使用 node 的服务发现模式,因为每一个节点下面都有 kubelet,自然都有 cAdvisor 采集到的数据指标,配置如下:

# 任意一个Pod里,都会有ca.crt、token。在k8s源码可以看到这个配置的代码
[root@master1 ~]# kubectl exec -it   nginx-rs-8p6dl  -n default -- bash
root@nginx-rs-8p6dl:/# cd /var/run/secrets/kubernetes.io/serviceaccount/
root@nginx-rs-8p6dl:/var/run/secrets/kubernetes.io/serviceaccount# ls
ca.crt  namespace  token
- job_name: 'kubernetes-cadvisor'
  kubernetes_sd_configs:
  - role: node
  scheme: https
  tls_config:
    ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
  bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token
  relabel_configs:
  - action: labelmap
    regex: __meta_kubernetes_node_label_(.+)
  - target_label: __address__
    replacement: kubernetes.default.svc:443
  - source_labels: [__meta_kubernetes_node_name]
    regex: (.+)
    target_label: __metrics_path__
    replacement: /api/v1/nodes/${1}/proxy/metrics/cadvisor
curl -X POST "http://10.244.1.139:9090/-/reload"
posted @ 2021-03-01 01:00  taotaozh  阅读(152)  评论(0编辑  收藏  举报