docker Prometheus安装部署

Prometheus Server

Prometheus Server 本身也将以容器的方式运行在 host 192.168.56.103 上。

Exporter

Prometheus 有很多现成的 Exporter,完整列表请参考 https://prometheus.io/docs/instrumenting/exporters/

  • 我们将使用:

    • Node Exporter,负责收集 host 硬件和操作系统数据。它将以容器方式运行在所有 host 上。

    • cAdvisor,负责收集容器数据。它将以容器方式运行在所有 host 上。

  • 安装Node Exporter

docker run -d  \
-v "/proc:/host/proc" \
-v "/sys:/host/sys" \
-v "/:/rootfs" \
--net=host \
prom/node-exporter \
--path.procfs /host/proc \
--path.sysfs /host/sys \
--collector.filesystem.ignored-mount-points "^/(sys|proc|dev|host|etc)($|/)"

ip + 端口 验证
使用--net = host 方便通信

  • 各节点运行 cAdvisor,用来监控容器
docker run \
--volume=/:/rootfs:ro \
--volume=/var/run:/var/run:rw \
--volume=/sys:/sys:ro \
--volume=/var/lib/docker/:/var/lib/docker:ro \
--detach=true \
--name=cadvisor \
--net=host \
google/cadvisor:latest

ip + 端口 验证

  • 安装 Prometheus Server
docker run -d -p 9090:9090 \
-v /root/prometheus.yml:/etc/prometheus/prometheus.yml \
--name prometheus \
--net=host \
prom/prometheus
global:
  scrape_interval:     15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
  evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.
alerting:
  alertmanagers:
  - static_configs:
    - targets:
      # - alertmanager:9093
      #
rule_files:
  # - "first_rules.yml"
  # - "second_rules.yml"


scrape_configs:
  # The job name is added as a label `job=` to any timeseries scraped from this config.
     - job_name: 'prometheus'
       static_configs:
       - targets: ['localhost:9090','localhost:9100','localhost:8080','192.168.28.18:8080','192.168.28.18:9100','192.168.28.19:8080','192.168.28.19:9100']

修改targets

你可能感兴趣的:(docker Prometheus安装部署)