在Docker中搭建 prometheus(普罗米修斯)这个大佬

在之前我们有使用Docker 搭建过一些常用的环境,今天我们来搞一个更好玩,听起来就很牛逼的东西—普罗米修斯(prometheus)。

在这里插入图片描述

这次我们的搭建方式还是和以前一样使用 docker-compose,首次看到的小伙伴可以去我之前的文章中查看docker环境的搭建。

接下来我们横刀直入,首先还是和惯例一样新建一个prometheus的文件夹,用来存放docker-compose.yml的信息。

docker-compose.yml :

version: '2'

networks:
    monitor:
        driver: bridge

services:
    prometheus:
        image: prom/prometheus
        container_name: prometheus
        hostname: prometheus
        restart: always
        volumes:
            - ./prometheus.yml:/etc/prometheus/prometheus.yml
#            - ./node_down.yml:/usr/local/etc/node_down.yml:rw
        ports:
            - "9090:9090"
        networks:
            - monitor

    alertmanager:
        image: prom/alertmanager
        container_name: alertmanager
        hostname: alertmanager
        restart: always
#        volumes:
#            - ./alertmanager.yml:/usr/local/etc/alertmanager.yml
        ports:
            - "9093:9093"
        networks:
            - monitor

    grafana:
        image: grafana/grafana
        container_name: grafana
        hostname: grafana
        restart: always
        ports:
            - "3000:3000"
        networks:
            - monitor

    node-exporter:
        image: quay.io/prometheus/node-exporter
        container_name: node-exporter
        hostname: node-exporter
        restart: always
        ports:
            - "9100:9100"
        networks:
            - monitor

    cadvisor:
        image: google/cadvisor:latest
        container_name: cadvisor
        hostname: cadvisor
        restart: always
        volumes:
            - /:/rootfs:ro
            - /var/run:/var/run:rw
            - /sys:/sys:ro
            - /var/lib/docker/:/var/lib/docker:ro
        ports:
            - "8899:8080"
        networks:
            - monitor

我们对上面的信息稍微的介绍一下,当然有用过prometheus的小伙伴肯定是都知道的了:

  • cadvisor 用于获取docker容器的指标
  • node-exporter 用户获取服务器的指标
  • grafana 监控的web-ui好用的可视化组件
  • alertmanager 告警组件
  • prometheus 核心监控组件

然后我们需要新建prometheus的配置文件prometheus.yml
( 这份配置其实就是告诉prometheus要去哪个端口中拉取对应的监控数据 )

这里要注意端口,按自己配置的来

prometheus.yml :

global:
  scrape_interval:     15s
  evaluation_interval: 15s
scrape_configs:
  - job_name: 'prometheus'
    static_configs:
    - targets: ['ip:9090']  ## TODO ip自己写
  - job_name: 'cadvisor'
    static_configs:
    - targets: ['ip:8899']  ## TODO ip自己写
  - job_name: 'node'
    static_configs:
    - targets: ['ip:9100']  ## TODO ip自己写

在这里有很多配置的信息我都忽略没写了,prometheus的功能还是很强大的,对监控想深入了解的可以官网看看文档,或者去B站上有很多相关的学习视频。

随后在目录下docker-compose up -d启动
在这里插入图片描述

于是我们就可以分别访问:

  • http://ip:9100/metrics( 查看服务器的指标)
  • http://ip:8899/metrics(查看docker容器的指标)
  • http://ip:9090/(prometheus的原生web-ui)
  • http://ip:3000/(Grafana开源的监控可视化组件页面)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

搞到最后还是想说:一个docker-compose起了5个服务器,真™好使!

最后一个网址尤为的重要,我们肯定还会经常的用到

下面我们就对 Grafana 这个可视化工具进行配置:
进到Grafana首页,我们首先要配置prometheus作为我们的数据源
在这里插入图片描述
进到配置页面,写下对应的URL,然后保存就好了。

在这里插入图片描述

配置好数据源之后,我们就可以配置对应的监控信息了,常见的配置监控已经有对应的模板了,就不需要我们一个一个地去配置了。(如果不满足的话,那还是得自己去配)

在这里,我就演示如何使用现有的模板,直接import对应的模板,相关的模板可以在 https://grafana.com/grafana/dashboards/ 这里查到。

在这里插入图片描述

我们选择直接服务器的监控也就是:8919

在这里插入图片描述
import后就能直接看到高大上的监控页面了
在这里插入图片描述

哦吼,搞定搞定!!

当然了,我这个里面没跑任何东西,所有空空如也,但是并不妨碍它看起来高大上。

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zyyn_未来可期

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值