Prometheus详解(十)——Prometheus容器监控

今天继续给大家介绍Linux运维相关知识,本文主要内容是Prometheus容器监控。

一、Prometheus容器监控设置

我们有时需要使用Prometheus监控Kubernetes集群中的容器,包括容器的内存、CPU、网络I/O等资源。在Kubernetes中,有内置的cAdvisor组件,用于Prometheus的容器监控设置。
接下来,我们就开始Prometheus利用cAdvisor监控容器的实战。Prometheus的ConfigMap文件监控项设置如下:

- 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

在上述配置中,我们给Prometheus注入了一个CA证书,以保证容器的访问。
完成后的Prometheus的ConfigMap配置如下:
在这里插入图片描述
完成上述配置后,我们先删除Prometheus的ConfigMap,然后再重新创建,之后使用curl命令进行刷新。

二、效果检验

在刷新后,我们进入Prometheus的监控页面,结果如下所示:
在这里插入图片描述
从上图中可以看出,我们的Prometheus对于容器的监控设置成功!
接下来,我们再尝试使用Prometheus内置的图表。打开Prometheus的graph页面,在下图所示的命令框中写入如下命令:

rate(container_cpu_usage_seconds_total{
    
    image!="",pod_name!=""}[1m])

上述配置可以查询1分钟以内Pod容器的各项数据,配置完成后的页面如下所示:
在这里插入图片描述
之后,我们点击Execute,然后点击Execute执行,然后再点击Graph,就可以看到各个容器的性能云信图表了,结果如下所示:
在这里插入图片描述
从上可以看出,我们的Prometheus容器监控设置成功!
原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200

猜你喜欢

转载自blog.csdn.net/weixin_40228200/article/details/124677886