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

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

前言

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

原理介绍

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

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

实施部署流程

前置条件

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

部署过程

  1. 上传镜像安装包到服务器的数据盘(例如: /opt)并解压,解压后可以得到grafana、network_prometheus、snmp_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"文件拖动到文件上传区域

至此,安装完成。

效果展示

相关推荐
故七月1 分钟前
GEO 信源评估体系:如何判断一条网页信源能否被大模型采信
前端·网络·人工智能
hasty20 分钟前
一次 WebSocket 握手为何能终止进程?Undici CVE-2026-19534 的异常边界
网络·websocket·网络协议
实点科技1 小时前
XB6S-EI2002如何与信捷XDH-60T4-E实现EtherNet/IP通讯?
网络
Cheney Pan1 小时前
第4篇 Spring Boot 应用监控:Micrometer 与 JVM 指标
jvm·spring boot·后端·prometheus
仍然.1 小时前
RabbitMQ---可靠性传输
网络·分布式·rabbitmq
飞鸟真人1 小时前
应用性能监测(APM)之 (四)Prometheus与Metrics集群存储
prometheus
砚凝霜2 小时前
【软考信息安全】第八章 防火墙类型与实现技术
网络
hasty2 小时前
前缀相同不代表同一网络:ip-address 跨地址族比较缺陷
网络·网络协议·tcp/ip
大侠归来2 小时前
cJSON 源码解析:parse_string 函数深入剖析
linux·网络·算法
弹简特2 小时前
【Java项目-企悦抽】13-奖品管理模块-奖品列表和创建奖品的实现
java·开发语言·网络·springboot