为了能够获取到Docker容器的运行状态,用户可以通过Docker的stats命令获取到当前主机上运行容器的统计信息,可以查看容器的CPU利用率、内存使用量、网络IO总量以及磁盘IO总量等信息。
写一个docker-compose.yml文件
ymlversion: '3.8'
services:
cadvisor:
image: mirrorgooglecontainers/cadvisor:latest # Docker Hub 上的替代镜像,国内可访问
container_name: cadvisor
restart: always
network_mode: host
privileged: true
volumes:
- /:/rootfs:ro
- /var/run:/var/run:ro
- /sys:/sys:ro
- /var/lib/docker/:/var/lib/docker:ro
- /dev/disk/:/dev/disk:ro
ports:
- "8080:8080"
修改普罗米修斯文件
yml# 全局配置
global:
# 数据抓取间隔(默认1分钟)
scrape_interval: 15s
# 告警规则评估频率(建议与抓取间隔一致)
evaluation_interval: 15s
# 抓取超时时间(默认10秒)
# 告警配置
alerting:
alertmanagers:
- static_configs:
- targets:
# 启用Alertmanager时需配置实际地址
# - alertmanager:9093
# 规则文件配置
rule_files:
# 告警规则文件路径(支持通配符)
# - 'alert_rules/*.rules'
# 记录规则文件路径
# - 'recording_rules/*.rules'
# 监控目标配置
#监控linux
scrape_configs:
- job_name: "prometheus-server"
file_sd_configs:
- files:
- /server/prometheus/node_exporter.yml
refresh_interval: 5s
#监控nginx
- job_name: nginx
static_configs:
- targets: ['192.168.201.104:9113']
# 自定义标签(用于维度筛选)
labels:
name: "nginx"
#监控k8s
- job_name: K8S
static_configs:
- targets: ['192.168.201.100:31666']
# 自定义标签(用于维度筛选)
labels:
name: "k8s"
#监控redis
- job_name: redis
static_configs:
- targets: ['192.168.201.104:9121']
# 自定义标签(用于维度筛选)
labels:
name: "redis"
#监控docker
- job_name: docker
static_configs:
- targets: ['192.168.201.104:8080']
# 自定义标签(用于维度筛选)
labels:
name: "docker"


9621

本文作者:松轩(^U^)
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!