笔者从事网络维护工作已有十多年的时间。在十年前,可供选择的比较理想的网络管理工具并不多,而且都比较难获得。一方面,网络管理工程师在应用编程和软件管理方面的知识和技能比较欠缺;另一方面,当时的网络管理工具的易用性确是不如人意。因此,笔者一直都想自己做一个符合自己管理思路和习惯的网络管理工具。如今,这个工具已经初步成形,在这里向大家介绍,这个工具叫netmon。
一、接口监控
netmon最主要的网络管理功能借鉴了经典的开源工具MRTG,就是监控网络设备的接口性能。和MRTG一样,netmon按时间间隔规律地通过SNMP协议从网络设备采集接口的MIB信息,保存在时间序列形式的文件或数据库;按照网络管理员的指令,从历史数据中生成图表形式的性能报告。与MRTG不一样的,netmon在以下方面补充MRTG的不足:
(一)配置复杂。
虽然MRTG提供自动化工具生成配置文件,但这种方式会把大量不需要关注的接口也纳入监控范围。如果以手工方式生成配置,则对每台网络设备的重要接口都要进行配置文件编写,既要有分别地编写需要监控的内容(流量、分组、错误、丢包),也要分别编写图表展示的形式。在网络设备和重要接口的比较多的环境中,维护MRTG的配置文件是一件比较困难的工作。
对此,netmon的解决方案是:网络管理员可以通过图形界面简便的添加要管理的网络设备,可以手工一个一个地添加,也可以由netmon自动寻找,批量添加。
图1 手工添加受管网络设备
图2 创建一个自动发现任务
图3 netmon自动搜寻网络设备
图4 选择受管的网络设备,批量添加
netmon自动对受管的网络设备进行信息收集和定期更新,主要是网络设备的系统信息和接口信息。网络管理员从收集到的信息中选出要管理的网络接口,并对指定需要监控的内容(如接口状态、接口流量、接口分组、接口错误和接口丢包)。
图5 选择受管接口及其监控内容
netmon按照网络管理员的设置进行监控工作。网络管理员可以根据设备重要性来调节监控的频率。
图6 设置受管网络设备的监控参数
(二)性能报表方式单一
MRTG在每次采集性能数据后会即时生成图表,在实际情况中,很多生成的图表还没来得及被网络管理员查看就被覆盖,因此造成资源的浪费。在受管对象数量较多时,这些生成图表的开销有时会影响监控效果。
在网络管理员查看性能报告时,MRTG提供的报告形式是固定的日、周、月、年四个图表。每个图表的时间粒度(每5分钟、每15分钟、每小时、每日)和时间跨度(例如自定义的时间段)都不能按需求进行调整。
netmon的解决方案是:性能报表按需生成。在网络管理员需要查看接口性能的时候,netmon才按照网络管理员的要求生成性能图表。
图8 即时查看历史性能报告
netmon的设备查看模块可以让网络管理员在一个界面查看多台网络设备和多个接口的状态、信息和性能。可以让网络管理员产看任意时间段的历史性能报告。
二 TopN监控
当网络稳定时,日常的网络管理工作主要是快速发现破坏这种稳定的异常情况和隐患。这时,网络管理员通常需要通过一个界面(类似于仪表板)就可以了解到当前所有受管对象的整体状况。netmon的TopN功能就是为这个而开发的。
图7 TopN展示网络概况
TopN主要对以下事项进行监控:
一)ICMP不可达设备:列出ping不通的受管网络设备。当一个网络设备突然ping不通,这绝对是个需要关注的事件。
二)SNMP不可达设备:列出不能进行SNMP访问的受管网络设备。当网络设备不能进行SNMP访问时,通常意味着:1)网络设备上的进程/服务出现问题;2)网络设备的配置有问题;3)网络设备的连通性有问题,等
三)状态异常接口:列出状态不是up的接口。网络管理员一般都希望所有受管接口都处于up状态。如果一个受管接口状态不是up,网络管理员是希望即时发现并去处理的。
四)接口错误:列出检测到有输入输出错误的接口。当一个接口的输入输出出现错误,通常意味着线路或硬件的物理问题(近端或对端),严重时会到影响业务的网络通信。严重到什么程度才会影响业务,要看具体的网络情况和业务通信要求。netmon列出接口错误清单旨在给网络管理员一个参考,看是否有不应出现错误的接口在列。
五)接口丢包:列出检测到有丢包的接口。对于输入来说,接口丢包通常意味着接口收到了不能处理的分组(例如协议不对、坏包等),或接口的输入缓冲满了;对于输出来说,通常意味着是接口的带宽饱和了。当业务的网络通信出现性能下降,连通性检测显示有丢包情况,网络管理员可以在这个清单里查看是否有相关的接口在列,从而可以找到解决问题的着手点。
六)接口流量和接口利用率:列出最大输入和输出流量和利用率的接口。通过了解网络中最繁忙的接口,网络管理员可以从侧面了解网络整体的负载情况和高负载热点;同时可以快速发现哪些接口处于高度负荷的状态。这些信息可以帮助排查业务性能下降的原因。通过经常性地观察,网络管理员能够对网络的负载水平有一个认识,有助于快速识别负载骤增的情况而及时进行处理。
七)时延最大/最小设备:列出时延最大/最小的网络设备。通过了解所有网络设备时延范围,网络管理员可以侧面认识业务应用所能够获得的网络通信性能的水平。当时延过大通常意味网络出现拥塞或网络设备内部运行有异常,这些情况下,结合以上的所述的几项监控信息,基本可以知道问题的大致原因和排查的着手点。
三、报表
netmon在运行中,收集和保存了很多网络运行的性能数据。通过对这些数据进行统计分析能够为网络的性能管理、容量管理、问题管理等提供有力的支持。以下是一个受管网络设备在两周内的所有受管接口的性能统计分析报告。
报告中提供了各受管接口的总体负载情况(累计的输入输出总流量、分组)、总体繁忙度(平均输入输出流量、平均输入输出分组)、总体通信质量(累计的输入输出错误、丢包)、忙时的负载水平(最大输入输出流量、分组及相关时刻)、最低的通信质量水平(最大输入输出错误、分组及相关时刻)
以上的图例是从一个有40多个节点的实际生产系统里截取的。netmon运行在一台普通的Linux计算机内,性能状况良好。今后netmon将会提供更多的功能来支持广大网络管理员的工作。
本文介绍了netmon这款网络管理工具,它借鉴了MRTG的功能,通过SNMP协议监控网络设备接口性能,解决了MRTG配置复杂和性能报表单一的问题。netmon提供图形界面方便添加和管理网络设备,按需生成性能报表,并具备TopN监控功能,实时展示网络概况,帮助网络管理员快速发现异常。
3403

被折叠的 条评论
为什么被折叠?



