李佳辑,许亮
(西藏自治区地震局,西藏 拉萨 850000)
随着信息网络的不断发展,众多的单位或企业都建立了自己的一套信息化网络系统,且计算机网络规模日渐庞大,影响网络性能的因素也逐渐增多,如路由器,交换机,服务器以及通信链路故障等,如何有效地管理服务器网络,是迫切需要解决的问题[1]。
西藏自治区(以下简称“西藏”)地震信息网络系统同样也面临类似问题,近几年随着各类项目的不断建设完成,各类网络结构及设备的不断增加,致使整个监控系统无法实时掌握其运行的状态,甚至在出现问题后无法及时定位故障点。为了解决该问题,同时利用丰富的网络资源,采用Spine开源软件,并结合目前通用网络设备采用的SNMP协议,建设西藏地震网络监控系统,以实现网络故障,设备故障的及时定位,同时通过新开发邮件推送故障信息,Telnet远程操作等方式提高本系统的监控能力及故障排除能力。
Spine目前是一款较为强大的网络监控及网络拓扑制作软件,可以针对网络系统、路由器、交换机及服务器等进行精准的监视、追踪、检测等操作,确保网络正常运行。由于该软件只提供基本的常规功能,如设备添加,线路建立等,所以该软件提供并支持二次开发,可通过C++、Java等常用编程软件进行编辑,可拓展出各类功能模块,如邮件报警,短信报警,设备的远程登录等相关功能,极大方便日常管理,提高运维能力。
SNMP(Simple Network Managed Protocol)是简单网络管理协议的简称,由一组网络管理的标准组成,包含一个应用层协议(application layer protocol)、数据库模型(database schema)和一组资料物件。该协议能够支持网络管理系统,用以监测连接到网络上设备的运行情况。该协议属于应用层协议,由于其简单易用,是事实上的网络管理工业标准。
SNMP协议有两个基本命令模式,read和readwrite,read是可以通过SNMP协议观察设备配置细节,而readwrite模式可以让管理者有权限修改设备配置[2]。考虑到很多厂商的设备基本都支持SNMP协议的应用,所以使用该协议配合Spine软件实现网络的监控功能。
目前有SNMPv1、SNMPv2、SNMPv3三种正式版本。
针对西藏地震信息网络监控的实际需求,利用C++编程软件,新系统区域中心,各有人值守台站及无人遥测台站的各类设备日常运行情况及网络监控而开发。
邮件模块开发示例代码:
[EMail]
SMPTAddress=smtp.163.com(添加smtp地址)
ReplyTo=xxx@163.com(添加需要推送的邮箱地址)
Encoding=0
Authorization=1
UserName=xxxx(添加邮箱用户名)
Password=xxxx(添加邮箱密码)
[Config]
DeleteOlderThan=7
ShowOnWebPage=1
HTMLFile=Notification.htm
DefaultSendTo=xxwl@xizdzj.gov.cn
DefaultSoundFile=SoundsAlarm01.wav
HideMessage=0
MessageTimeOut=30
Header=You asked to be notified when...
WhenWakesUp=%Name (%Address) 上线
ENWhenGoesDown=%Name (%Address) 下线
图1 新增邮件推送功能
该模块开发完成后,可通过软件内部设置邮件的发送地址,在某台设备出现故障时,可将故障信息自动及时发送至所设置的收取邮箱,及时提醒工作人员各设备工作状态,同时也解决了工作人员后期对各故障设备的数据统计。
根据实际需求,同时针对监控系统,基于软件开发了Telnet功能模块,主要方便于各级工作人员,在日常的系统运维中,可以通过该功能模块远程登录到需要控制的设备进行各类操作。
TELNET功能模块开发示例代码:
[ExtCmd1]
BackGroundColor=clTeal
BackGroundFileName=
TileBackGroundImage=1
Indent=1
NameFont=宋体,9,B,0,clWhite,0
InactiveColor=clSilver
SelectedBevelColor=clYellow
ID=11
Name=Telnet
PollMode=2
Comment=Telnet
Application=PluginsTelnet.exe(程序名称)
Parameters=%Address(程序路径)
Snmp协议主要采用read/write模式,使监控软件可以读取设备数据,如运行的路由器、交换机及服务器等设备。
如果需要结合Spine软件实时监控到各类设备的运行状态,就需要在各类支持设备开启Snmp功能,使协议与软件能够无缝对接,实时读取各类设备状态,实现从设备故障到通知工作人员快速通道的建立。
根据各自使用的不同网络交换设备,就西藏地震信息网络中所使用的使用的H3C设备为例,具体操作命令如下:
snmp-agent community read ****
snmp-agent community write **** (*代表输入的密码)
图2 网络交换设备Snmp协议开启
该软件可部署于服务器及普通台式计算机,考虑到后期数据量的不断增加,建议部署于服务器,操作系统支持Windows2008以上版本,同时支持Linux操作系统。
对软件进行成功部署,并成功添加开发模块后,需要对监控的设备进行添加,如IP地址、设备名称及部署位置等,所有监控设备添加完成后,形成完整的西藏地震信息网络拓扑机构,极大方便了系统的管理及运维。
由于西藏地震局近几年各类项目的不断建设,网络监控将是网络管理的一种重要手段,使用开源软件不仅可以达到加强网络监控,提高网络管理水平,减轻网络管理人员负担,还可以有效的降低网络管理成本[3]。通过实际的部署应用,Spine与SNMP配合使用能够很好的实现网络平台的监控服务能力,在对软件进行二次应用开发后,实现了故障邮件信息推送,远程登录操作等功能。
将软件部署于西藏地震局和所属各台站后,解决了区域中心及各台站对上连设备与本地设备的实时监控及故障通知,使工作人员能够第一时间发现故障解决故障,提高了核心网络及专业设备的运行率。
考虑到各种设备的监控协议不同,在日常的应用中需要针对不同的协议使用,并结合自身实际应用情况进行研究和开发,后期可推广应用于预警项目等各类平台的实际监控应用中。
图3 西藏地震网络监控部署