Grafana笔记

搭建服务器性能监测通过基于Docker,prometheus+grafana+node-exporter实现.

prometheus理解为一个时序数据库,并产生一个脚本去定时抓取数据.

node-exporter可以抓取设备的一些数据信息.

grafana为一个可视化的Dashboard。可以配置一些数据库展示数据.

----文件夹目录

 

 

 

 

1.创建docker-compose.yml

version: '3.1'
services:
  node-exporter:
    container_name: node-exporter
    image: prom/node-exporter
    ports:
     - 9188:9100

2.docker-compose up -d 启动即可 端口9188 点击metrics看到如下页面代表成功抓取数据信息

 

3.prometheus和grafana配置docker-compose.yml

version: '3.1'
services:
  # 添加 普罗米修斯服务
  prometheus:
    # Docker Hub 镜像
    image: prom/prometheus
    # 容器名称
    container_name: prometheus
    # 容器支持自启动
    restart: always
    # 容器与宿主机 端口映射
    ports:
      - 9090:9090
   # 将宿主机中的config文件夹,挂载到容器中/config文件夹
    volumes:
      - ./prometheus.yml:/etc/prometheus/prometheus.yml

  # 添加监控可视化面板
  grafana:
    image: grafana/grafana
    container_name: grafana
    hostname: grafana
    restart: always
    ports:
      - 3000:3000
    volumes:
      - ./grafana:/var/lib/grafana
    

4.配置prometheus的配置文件prometheus.yml

global:
  scrape_interval: 5s
  evaluation_interval: 5s

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

5.docker-compose up -d 启动.

6.个人理解: node-exporter抓取数据,prometheus开启两个脚本,一个定时抓取exporter数据,另一个是监听自己.而自己本身是一个数据库。在grafana里面的数据源的地址需要写监听自己的那个地址.地址的ip不能写localhost或127.0.0.1(mac本机)而是写ipv4的那个地址本次为172.20.10.11,否则的话locahost不会变成宿主而还是自己,比如在grafana中写localhost无法访问到prometheus,他们在各自的容器中。当然在docker-conpose中可以配置link。在prometheus中访问localhost:9188也无法访问到exporter。在grafana中看到数据源prometheus中实例就是监听到的9188的exporter,自己本身是一个数据库.充当一个接口。通俗的说就是prometheus为数据源,数据源中有他监听的主机。配置多个主机可以通过,英文逗号隔开在[]中。Grafana模板:8919

 

 

 

 

 

 

 

posted @ 2021-02-20 20:03  最爱吃汤圆27  阅读(131)  评论(0编辑  收藏  举报