Prometheus监控Pod

基础学习

cAdvisor由谷歌开源,cAdvisor不仅可以搜集一台机器上所有运行的容器信息,还提供基础查询界面和Http接口,方便其他组件如Prometheus进行数据抓取,cAdvisor可以对节点机器上的资源及容器进行实时监控和性能数据采集,包括CPU使用情况,内存使用情况,网络吞吐量及文件系统使用情况

节点部署情况

系统 IP 服务
Ubuntu22.04 192.168.202.221 Prometheus, grafana, blackbox exporter, node exporter ,k8s master
Ubuntu22.04 192.168.202.222 node exporter , k8s worker
Ubuntu22.04 192.168.202.223 node exporter, k8s worker
Ubuntu22.04 192.168.202.224 node exporter , k8s worker

项目地址

github.com/google/cadv...

部署cAdvisor

下载

由于advisor的镜像在gcr.io仓库里,因此本人在docker hub推了一个最新的版本 postkarte/cadvisor:latest

运行容器

在所有k8s相关的节点上都运行容器

sh 复制代码
sudo docker run \
  --volume=/:/rootfs:ro \
  --volume=/var/run:/var/run:ro \
  --volume=/sys:/sys:ro \
  --volume=/var/lib/docker/:/var/lib/docker:ro \
  --volume=/dev/disk/:/dev/disk:ro \
  --publish=8080:8080 \
  --detach=true \
  --name=cadvisor \
  --privileged \
  --device=/dev/kmsg \
  postkarte/cadvisor:latest

查看运行结果

sh 复制代码
root@node1:~# docker ps
CONTAINER ID   IMAGE                       COMMAND                  CREATED         STATUS                            PORTS                                       NAMES
8695ddf2c9bb   postkarte/cadvisor:latest   "/usr/bin/cadvisor -..."   6 seconds ago   Up 5 seconds (health: starting)   0.0.0.0:8080->8080/tcp, :::8080->8080/tcp   cadvisor

在Prometheus中添加cAdvisor

在Prometheus中配置一个job,添加容器的监控

yaml 复制代码
  - job_name: "k8s-containers"
    static_configs:
      - targets: ["192.168.202.221:8080","192.168.202.222:8080","192.168.202.223:8080","192.168.202.224:8080"]

检查配置文件是否正确

sh 复制代码
root@node1:/usr/local/prometheus# ./promtool check config prometheus.yml 
Checking prometheus.yml
 SUCCESS: prometheus.yml is valid prometheus config file syntax

重启Prometheus

sh 复制代码
systemctl restart prometheus

可以看到k8s采集到数据了

在Grafana中导入模板展示数据

导入id为315的dashboard

查看效果

相关推荐
重庆小透明4 小时前
【从零开始学习JVM | 第六篇】运行时数据区
java·jvm·后端·学习
你的人类朋友6 小时前
🤔Token 存储方案有哪些
前端·javascript·后端
烛阴6 小时前
从零开始:使用Node.js和Cheerio进行轻量级网页数据提取
前端·javascript·后端
liuyang___6 小时前
日期的数据格式转换
前端·后端·学习·node.js·node
保持学习ing8 小时前
SpringBoot前后台交互 -- 登录功能实现(拦截器+异常捕获器)
java·spring boot·后端·ssm·交互·拦截器·异常捕获器
十年老菜鸟9 小时前
spring boot源码和lib分开打包
spring boot·后端·maven
白宇横流学长9 小时前
基于SpringBoot实现的课程答疑系统设计与实现【源码+文档】
java·spring boot·后端
加瓦点灯10 小时前
什么?工作五年还不了解SafePoint?
后端
他日若遂凌云志11 小时前
Lua 模块系统的前世今生:从 module () 到 local _M 的迭代
后端
David爱编程11 小时前
Docker 安全全揭秘:防逃逸、防漏洞、防越权,一篇学会容器防御!
后端·docker·容器