监控工具prometheus配置-docker版

1、安装

直接创建一个docker-compose.yml

内容增加

networks:为了网络在同一个网段,方便通信,增加一个网段。
services:
prometheus:
安装docker镜像的信息配置。定义了镜像来源image,容器名称container_name,重点是吧prometheus.yml放入到容器内的卷映射,对外访问端口ports
grafana:
用于UI展示,能把prometheus中采集的信息用多种图形的方式展示。其官网有很多可以直接引用的模版。
grafana面板资源
https://grafana.com/grafana/dashboards

version: "3"

# 网桥 -> 方便相互通讯
networks:
  prometheus:
    ipam:
      driver: default
      config:
        - subnet: "172.22.0.0/24"

services:
  # 开源的系统监控和报警系统
  prometheus:
    image: prom/prometheus:v2.34.0
    container_name: prometheus
    restart: unless-stopped
    volumes:
      - ./prometheus/prometheus.yml:/etc/prometheus/prometheus.yml
    command: "--config.file=/etc/prometheus/prometheus.yml --storage.tsdb.path=/prometheus"
    ports:
      - "9090:9090"
    depends_on:
      - node-exporter
    networks:
      prometheus:
        ipv4_address: 172.22.0.11

  # 采集服务器层面的运行指标
  node-exporter:
    image: prom/node-exporter:v1.3.1
    container_name: prometheus-node-exporter
    restart: unless-stopped
    ports:
      - "9100:9100"
    networks:
      prometheus:
        ipv4_address: 172.22.0.22

  # 用于UI展示
  # https://grafana.com/docs/grafana/latest/installation/docker
  grafana:
    image: grafana/grafana:8.0.0
    container_name: prometheus-grafana
    restart: unless-stopped
    ports:
      - "3000:3000"
    volumes:
      - "./prometheus/grafana/grafana.ini:/etc/grafana/grafana.ini" # 邮箱配置
    environment:
      GF_EXPLORE_ENABLED: "true"
      GF_SECURITY_ADMIN_PASSWORD: "admin"
      GF_INSTALL_PLUGINS: "grafana-clock-panel,grafana-simple-json-datasource,alexanderzobnin-zabbix-app"
      # 持久化到mysql数据库
      GF_DATABASE_URL: "mysql://root:root@www.zhengqingya.com:3306/grafana" # TODO 修改
    depends_on:
      - prometheus
    networks:
      prometheus:
        ipv4_address: 172.22.0.33

 

2、配置

配置需要监控的信息prometheus.yml

global:
  scrape_interval: 10s
  scrape_timeout: 10s
  evaluation_interval: 10m
scrape_configs:
  # springboot项目
  - job_name: spring-boot
    scrape_interval: 5s
    scrape_timeout: 5s
    metrics_path: /actuator/prometheus
    scheme: http
    basic_auth:
      username: admin
      password: 123456
    static_configs:
      - targets:
          - 192.168.3.61:16000 # TODO 此处填写SpringBoot应用的IP+端口号

  # prometheus
  - job_name: prometheus
    static_configs:
      - targets: ['prometheus:9090']
        labels:
          instance: prometheus

  # 采集node exporter监控数据,即linux
  - job_name: linux
    static_configs:
      - targets: ['node-exporter:9100']
        labels:
          instance: localhost

 

 

3、访问测试

访问prometheus,默认端口没有修改,以及我们的容器地址对外映射的端口是9000。

访问后,我们最关心的是,我们要监控的信息列表在哪里。

此时可以在这里路径下访问:Status---Target

访问地址

http://192.168.3.230:9090/

 

访问后,就是我们配置的监控列表信息。只有服务连接成功时,状态才是UP。

 

 

访问UI配置界面:http://IP:端口

http://192.168.3.230:3000/

进入主页后,信息如此。

此时我们首先需要做的事情是配置数据源。

数据源可以是多样的,目前我们信息数据来自prometheus,所以数据源选择这个。

添加数据,填写prometheus地址url

拉到最下方,选择save and test,如果出现如图的 data source is working 说明数据源添加成功

 

 

grafana看板配置:

选择导入模版,目前我们使用的模版是jvm模版

https://grafana.com/grafana/dashboards/4701-jvm-micrometer/

 

 

引入模版

 加载成功后,选择数据源,最后点击import

点击import后,得到如下图信息。

 

posted on 2024-08-13 13:13  陈惟鲜的博客  阅读(72)  评论(0编辑  收藏  举报

导航