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

查看效果

相关推荐
异常君2 分钟前
Redis 中的概率过滤器:布隆过滤器与布谷鸟过滤器实战对比
java·redis·后端
Stimd4 分钟前
【重写SpringFramework】声明式事务上:构建事务切面(chapter 4-5)
java·后端·spring
雷渊10 分钟前
深入分析dubbo的整体架构
后端
我是苏苏12 分钟前
消息中间件RabbitMQ02:账号的注册、点对点推送信息
开发语言·后端·ruby
weixin_4565881513 分钟前
【Spring Boot】Maven中引入 springboot 相关依赖的方式
spring boot·后端·maven
追逐时光者22 分钟前
C#/.NET/.NET Core技术前沿周刊 | 第 36 期(2025年4.21-4.27)
后端·.net
写bug写bug30 分钟前
Java并发编程:优雅的关闭钩子(Shutdown Hook)
java·后端
noravinsc1 小时前
django filter 排除字段
后端·python·django
卓越进步1 小时前
层级时间轮的 Golang 实现原理与实践
开发语言·后端·golang
古时的风筝2 小时前
Caddy 比Nginx 还优秀吗
前端·后端·程序员