Prometheus+Grafana监控

2020-09-10  本文已影响0人  企业信息化架构

监控

influxDB:(时序数据库),常用的一种使用场景:监控数据统计。

prometheus:存储的是时序数据,即按相同时序(相同名称和标签),以时间维度存储连续的数据的集合。
时序(time series)是由名字(Metric)以及一组key/value标签定义的,具有相同的名字以及标签属于相同时序。

cadvisor:可以对节点机器上的资源及容器进行实时监控和性能数据采集,包括CPU使用情况、内存使用情况、网络吞吐量及文件系统使用情况。

grafana:是一个跨平台的开源的度量分析和可视化工具,可以通过将采集的数据查询然后可视化的展示,并及时通知。

删除原有容器

docker rm -fv influxsrv
docker rm -fv prometheus
docker rm -fv cadvisor
docker rm -fv grafana

修改目录权限

chmod 777 ./prometheus/data
chmod 777 ./grafana/data

启动安装

version: '3'

services:
    influxsrv:
        network_mode: bridge
        image: tutum/influxdb:0.13
        ports: 
            - 8083:8083
            - 8086:8086
        container_name: influxsrv
        restart: on-failure
        volumes:
            - ./influxdb/data:/data
        logging:
            driver: 'json-file'
            options:
                max-size: '30m'
                max-file: '1'
    cadvisor:
        network_mode: bridge
        image: google/cadvisor:v0.33.0
        ports: 
            - 8080:8080
        container_name: cadvisor  
        restart: on-failure
        volumes:
            - /:/rootfs:ro
            - /var/run:/var/run:rw
            - /sys:/sys:ro
            - /var/lib/docker/:/var/lib/docker:ro
        environment:        
            - storage_driver:influxdb
            - storage_driver_db:cadvisor
            - storage_driver_host:'influxsrv:8086'
        logging:
            driver: 'json-file'
            options:
                max-size: '30m'
                max-file: '1'
        depends_on:
            - influxsrv
        links:
            - influxsrv:influxsrv
    prometheus:
        network_mode: bridge
        image: prom/prometheus:v2.20.1
        ports: 
            - 9090:9090
        container_name: prometheus  
        restart: on-failure
        volumes:
            - ./prometheus/prometheus.yml:/etc/prometheus/prometheus.yml
            - ./prometheus/data:/prometheus
        logging:
            driver: 'json-file'
            options:
                max-size: '30m'
                max-file: '1'
        depends_on:
            - cadvisor
    grafana:
        network_mode: bridge
        image: grafana/grafana:7.1.5
        ports: 
            - 3000:3000
        container_name: grafana  
        restart: on-failure
        volumes:
            - /:/rootfs:ro
            - /var/run:/var/run:rw
            - /sys:/sys:ro
            - /var/lib/docker/:/var/lib/docker:ro
            - ./grafana/data:/var/lib/grafana
        environment:
            - INFLUXDB_HOST:localhost
            - INFLUXDB_PORT:8086
            - INFLUXDB_NAME:cadvisor
            - INFLUXDB_USER:root
            - INFLUXDB_PASS:root
        logging:
            driver: 'json-file'
            options:
                max-size: '30m'
                max-file: '1'
        depends_on:
            - influxsrv
            - cadvisor
        links:
            - influxsrv:influxsrv

docker-compose up -d

检查服务

influxDB:http://10.2.8.200:8083/
cadvisor:http://10.2.8.200:8080/containers/
prometheus:http://10.2.8.200:9090/targets
grafana:http://10.2.8.200:3000/

配置服务

Grafana进行新增数据源,配置prometheus数据连接和influxsrv数据连接
prometheus路径:http://10.2.8.200:9090
influxsrv路径:http://10.2.8.200:8086/

常见模板

Grafana模板路径:https://grafana.com/grafana/dashboards
Linux监控模板:9276(Linux模板需要调整变量nic,调整为Linux的实际网卡);
Docker监控模板:193;
Mysql监控模板:7362;
Redis监控模板:763;
SpringBoot监控模板:4701;
MongoDB监控模板:2583;
RabbitMQ监控模板:2121;
JVM监控模板:4701;

上一篇 下一篇

猜你喜欢

热点阅读