基于Prometheus快速搭建网络质量监控平台

基于Prometheus快速搭建网络质量监控平台

前言

针对一些临时搭建的网络场景(例如:各种临时发布会,演唱会等),为了检验网络质量的以及确保管理员在网络出现异常情况时可以及时发现,需要部署一套监控软件用于网络设备的监控。然而,由于是临时搭建的网络,专门部署一整昂贵的监控软件显得不太现实,同时专业的监控软件无法在短时间内完成部署验收。对此,本方案主要通过Prometheus+grafana的方式,快速搭建一套临时可用的监控软件,从而实现对临时网络环境的实时监控。

原理介绍

本方案的实现原理主要通过Prometheus模组进行数据采集和告警(Prometheus的告警功能在之前的其他方案中章节已经详细讲过,这里不做赘述),通过grafana进行数据展示,从而实现整体的展示效果,具体如下:

如上图所述,prometheus主要通过对应的采集模组snmp-exporter实现对网络设备的适配采集工作,Prometheus通过向snmp-exporter发送采集指令触发snmp-exporter的采集动作,并将采集结果返回给prometheusPrometheus通过对结果进行解析并入库,同时将根据rules规则,将触发告警的事件推送到alertmanager应用实现告警功能;而grafana则是作为一个数据展示入口,通过将数据源设置为prometheusgrafana可以从prometheus中获取相关维度的监控数据,并通过自身进行可视化展示。

实施部署流程

前置条件

  1. 提供相关服务器及对应root用户访问权限
  2. 服务器到网络设备icmpsnmp可达
  3. 服务器上包含docker环境(若不包含,则需要手动搭建部署docker环境)

部署过程

  1. 上传镜像安装包到服务器的数据盘(例如: /opt)并解压,解压后可以得到grafananetwork_prometheussnmp_exporter三个目录应用,其中snmp-exporter是对应snmp采集器,network_prometheus作为业务组件和数据库,grafana作为数据可视化展示平台。
  1. 加载snmp_exporter镜像(文件名包含"image"关键字的文件)并启动应用
shell 复制代码
cd snmp_exporter
docker load -i snmp.image.tgz
docker-compose up -d

ps: 针对未适配oid的设备型号,可以通过snmp_exporter/snmp.yml配置文件添加对应型号和oid采集实现。

  1. 加载network_prometheus镜像并启动应用
shell 复制代码
cd network_prometheus
docker lod -i prom.images.tgz
docker-compose up -d 
  1. 配置监控对象,可以通过network_prometheus/prometheus.yml配置文件配置要监控的设备以及对应的监控指标
shell 复制代码
vim prometheus.yml
  1. 加载grafana镜像并启动应用
shell 复制代码
cd grafana
docker lod -i grafana.image.tgz
docker-compose up -d 
  1. 登录grafana并导入数据模板

    1. 登录grafana,默认用户名密码"admin/admin"


    2. 首页点击进入【Home→dashboard】


    3. 点击【NEW→Import】


    4. 将"grafana导入模板.json"文件拖动到文件上传区域

至此,安装完成。

效果展示

相关推荐
2403_8757368722 分钟前
道品科技智慧农业中的自动气象检测站
网络·人工智能·智慧城市
Tassel_YUE2 小时前
网络自动化04:python实现ACL匹配信息(主机与主机信息)
网络·python·自动化
Diamond技术流2 小时前
从0开始学习Linux——网络配置
linux·运维·网络·学习·安全·centos
Spring_java_gg3 小时前
如何抵御 Linux 服务器黑客威胁和攻击
linux·服务器·网络·安全·web安全
方方怪4 小时前
与IP网络规划相关的知识点
服务器·网络·tcp/ip
weixin_442643425 小时前
推荐FileLink数据跨网摆渡系统 — 安全、高效的数据传输解决方案
服务器·网络·安全·filelink数据摆渡系统
阑梦清川5 小时前
JavaEE初阶---网络原理(五)---HTTP协议
网络·http·java-ee
FeelTouch Labs6 小时前
Netty实现WebSocket Server是否开启压缩深度分析
网络·websocket·网络协议
长弓三石8 小时前
鸿蒙网络编程系列44-仓颉版HttpRequest上传文件示例
前端·网络·华为·harmonyos·鸿蒙
xianwu5438 小时前
反向代理模块
linux·开发语言·网络·git