docker 基于docker搭建prometheus+grafana+cadvisor

docker pull prom/prometheus
docker pull prom/node-exporter
docker pull grafana/grafana
docker pull hub.c.163.com/xbingo/cadvisor:latest

一、各节点运行node-exporter+cadvisor

#启动node-exporter
mkdir node-exporter
docker run -d -p 9100:9100 \
--name node-exporter \
--restart always \
-v /root/node-exporter/proc:/host/proc:ro \
-v /root/node-exporter/sys:/host/sys:ro \
-v /root/node-exporter:/rootfs:ro \
prom/node-exporte

#启动cadvisor
mkdir cadvisor
docker run -d \
--name cadvisor \
--restart always \
-p 8080:8080 \
-v /root/cadvisor/var/run:/var/run:ro \
-v /root/cadvisor/sys:/sys:ro \
-v /root/cadvisor/var/lib/docker/:/var/lib/docker:ro \
hub.c.163.com/xbingo/cadvisor:latest

二、master启动prometheus

创建prometheus.yml配置文件
mkdir prometheus
vim prometheus.yml

global:
  scrape_interval:     60s
  evaluation_interval: 60s

scrape_configs:
  - job_name: prometheus
    static_configs:
      - targets: ['localhost:9090']

  - job_name: node1
    static_configs:
      - targets: ['节点IP:9100']
  - job_name: node2
    static_configs:
      - targets: ['节点IP:9100']
      
docker run  -d \
--name prometheus \
--restart always \
-p 9090:9090 \
-v /root/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml  \
prom/prometheus

三、监控主机启动garfana

新建空文件夹grafana,配置权限,用来存储数据
mkdir grafana
chmod 777 -R grafana

docker run -d \
--name grafana \
--restart always \
-p 3000:3000 \
--name=grafana \
-v /root/grafana:/var/lib/grafana \
grafana/grafana

访问监控主机http://IP:3000