构建面向数字校园应用的自动监控系统
2014-12-16刘振华
刘振华
摘要:开源网络监控系统Zabbix在IT运维管理上得到了广泛应用,但是Zabbix自身所能监控的粒度和深度都难以满足IT运维管理的深层次需求,特别是对于数字校园应用系统可用性的自动监控方面存在较大的缺陷。在结合了学校具体应用的实际情况后,通过对Zabbix监控系统实施的二次开发和改造,实现了对部分应用系统可用性状态的实时监控,并给出了具体的思路和方法。
关键词: Zabbix;IT运维管理;数字校园应用;自动监控
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2014)32-7740-02
Abstract: Zabbix, as an open source network monitoring system, has been widely used in IT operation and management. However, it is hard for the Zabbixs monitoring granularity and profundity to meet the ITOMs deeper demends, especially for the defects existing in the automatic monitored control of the digital campus applications availability. The combinations with practice applications in CIET and secondary development and reform of the Zabbix monitoring system implementation make the real-time monitoring of part of applications availability come true and also bring up some specific thoughts and methods.
Key words:Zabbix; ITOM(IT Operation and Management); digital campus applications; automatic monitored control
Zabbix是一个基于WEB界面的提供分布式系统监控以及网络监视功能的企业级开源解决方案[1]。因为Zabbix部署的灵活性以及开源的特征,有很多学校和企业通过部署Zabbix来对自身的IT基础设施的运行状态进行实时监控;学校也尝试部署了Zabbix,目前已经将大部分服务器和网络设备纳入了Zabbix监控范围,使Zabbix成为运维管理人员重要的故障监控工具。
但是Zabbix只能对一些比较常规的CPU利用率、端口状态、流量、进程使用等项目进行监控,难以针对应用服务进行实时监控。而随着各类应用复杂性的提高,导致应用出现故障的原因越来越难以排查,很多故障并不是CPU、内存等一些常规问题所引起的,而有可能是系统自身的BUG或负载等一些隐秘的原因所引起的,所以有时候Zabbix显示常规的监控项目状态都正常,但是应用实际已经不可用,这样就失去了自动监控的意义。
为了弥补Zabbix在应用监控方面的不足,对Zabbix监控系统做了一些深入的研究,结合IT运维自动化的思想,在Zabbix系统的基础上进行了二次开发,能够针对DHCP、Radius认证、FTP及VPN系统等应用实施可用的自动监控。
1 系统设计思路
既然Zabbix常规监控项目难以反映出应用系统是否正常,只有亲自使用系统才能真正判断出应用系统是否可用,但是要做到实时监控,就必须用到运维自动化的相关技术了,否则单凭人工操作是无法保证监控的时效性的。为了达到自动监控的目的,采用脚本程序来模拟客户端或用户访问应用系统的流程,将该流程自动化、程序化,利用Zabbix监控系统的接口将系统状态传递给Zabbix,通过Zabbix系统的Trigger判断,将应用系统的可用状态情况以页面、邮件或者短信的方式展示给运维管理人员,以达到实时监控的目的。
自动监控系统可分为两大模块:模拟用户行为模块和应用状态感知模块。这两大模块彼此关联协作,模拟用户行为模块不断循环获取应用系统的状态,然后将状态信息传递给应用状态感知模块,应用状态感知模块经过判断,将状态信息以多种方式展示给运维管理人员。
2 具体实现
系统目前已经实现了对DHCP、Radius认证、FTP及VPN等应用系统的自动实时监控,下面将使用DHCP、Radius和FTP为例给出具体的实现思路和方法。
2.1 DHCP应用服务状态的监控
学校使用的DHCP服务是安装的Linux服务器提供的,自动实时监控DHCP服务的关键在于脚本需要不停去模拟用户利用DHCP服务器获取IP地址的过程,这个过程可以利用两条命令"ipconfig /release"和"ipconfig /renew"来表示,即释放IP和重新获取IP,如果DHCP应用出现故障,那么主机将无法在执行上述两条命令后获取正确的IP地址,那么Zabbix监控端也将无法ping通该主机。利用WIN 2003 SERVER服务器作为运行脚本程序的监控主机,该程序采用BAT(批处理)脚本实现,起到模拟用户行为的作用。服务器设置每隔30秒执行"ipconfig /release"和"ipconfig /renew"命令,重新从DHCP服务器去获取IP地址,根据监控主机能否获得正确的IP地址代表了DHCP服务是否正常,下一步需要做的就是将该状态信息传递给应用状态感知模块,即Zabbix监控系统。将此监控主机纳入Zabbix的监控范围,使用Zabbix的icmpping来确认能否与该主机通讯,如果能够ping通,则返回值为1,否则返回值为0 ;这样就能判断该主机是否获得了正确的IP地址,也就实现了对于DHCP服务应用状态的实时监控。
2.2 Radius认证应用服务状态的监控
Radius认证服务在很多网络环境有着广泛应用,用于其他应用系统和设备登录的认证。学校Radius服务的一项重要应用就是VPN和无线网络设备的登录认证。实现Radius认证应用状态的自动实时监控的关键点仍然是提取出用户使用Radius应用的流程,然后以脚本程序去实现该流程,然后将检测结果传递给Zabbix。采用基于SecureCRT平台的VBScript语言编写模拟用户登录城市热点计费网关(Dr.com)行为的脚本程序,模拟提交登录的用户名和密码,就可以根据登录结果来判断Radius服务的健康状况。
2.3 FTP应用服务状态的监控
FTP是学校重要的文件服务器,为全校师生提供文件存储服务。实现FTP应用服务状态的自动实时监控的关键也是模拟用户登录FTP系统,并上传一个测试文件,根据整个过程的状态来判断FTP应用的存活度。脚本使用PHP的CURL来实现。
为了减少系统误报的概率,可以在Zabbix里设置Trigger的值,实现连续两次探测应用服务的状态结果作为依据,达到系统监控的有效性。
3 结束语
随着数字校园建设的不断推进和完善,IT运维管理自动化就显得尤为重要。通过对开源网络监控系统Zabbix在应用监控方面的实践改造,给出了Zabbix在应用监控方面的解决方案。目前该自动监控系统已经在学校进行应用,支持对DHCP、Radius认证、FTP及VPN等应用系统状态的实时监控,计划后期将持续改造该监控系统,尽可能将更多的应用系统纳入实时监控的范围。通过给出的思路和方法,可以结合自身的实际网络环境对Zabbix进行二次开发,建成一套符合实际需求的一体化自动监控系统。
参考文献:
[1] zabbix 百度百科[EB/OL]. http://baike.baidu.com/view/1924617.htm.endprint
摘要:开源网络监控系统Zabbix在IT运维管理上得到了广泛应用,但是Zabbix自身所能监控的粒度和深度都难以满足IT运维管理的深层次需求,特别是对于数字校园应用系统可用性的自动监控方面存在较大的缺陷。在结合了学校具体应用的实际情况后,通过对Zabbix监控系统实施的二次开发和改造,实现了对部分应用系统可用性状态的实时监控,并给出了具体的思路和方法。
关键词: Zabbix;IT运维管理;数字校园应用;自动监控
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2014)32-7740-02
Abstract: Zabbix, as an open source network monitoring system, has been widely used in IT operation and management. However, it is hard for the Zabbixs monitoring granularity and profundity to meet the ITOMs deeper demends, especially for the defects existing in the automatic monitored control of the digital campus applications availability. The combinations with practice applications in CIET and secondary development and reform of the Zabbix monitoring system implementation make the real-time monitoring of part of applications availability come true and also bring up some specific thoughts and methods.
Key words:Zabbix; ITOM(IT Operation and Management); digital campus applications; automatic monitored control
Zabbix是一个基于WEB界面的提供分布式系统监控以及网络监视功能的企业级开源解决方案[1]。因为Zabbix部署的灵活性以及开源的特征,有很多学校和企业通过部署Zabbix来对自身的IT基础设施的运行状态进行实时监控;学校也尝试部署了Zabbix,目前已经将大部分服务器和网络设备纳入了Zabbix监控范围,使Zabbix成为运维管理人员重要的故障监控工具。
但是Zabbix只能对一些比较常规的CPU利用率、端口状态、流量、进程使用等项目进行监控,难以针对应用服务进行实时监控。而随着各类应用复杂性的提高,导致应用出现故障的原因越来越难以排查,很多故障并不是CPU、内存等一些常规问题所引起的,而有可能是系统自身的BUG或负载等一些隐秘的原因所引起的,所以有时候Zabbix显示常规的监控项目状态都正常,但是应用实际已经不可用,这样就失去了自动监控的意义。
为了弥补Zabbix在应用监控方面的不足,对Zabbix监控系统做了一些深入的研究,结合IT运维自动化的思想,在Zabbix系统的基础上进行了二次开发,能够针对DHCP、Radius认证、FTP及VPN系统等应用实施可用的自动监控。
1 系统设计思路
既然Zabbix常规监控项目难以反映出应用系统是否正常,只有亲自使用系统才能真正判断出应用系统是否可用,但是要做到实时监控,就必须用到运维自动化的相关技术了,否则单凭人工操作是无法保证监控的时效性的。为了达到自动监控的目的,采用脚本程序来模拟客户端或用户访问应用系统的流程,将该流程自动化、程序化,利用Zabbix监控系统的接口将系统状态传递给Zabbix,通过Zabbix系统的Trigger判断,将应用系统的可用状态情况以页面、邮件或者短信的方式展示给运维管理人员,以达到实时监控的目的。
自动监控系统可分为两大模块:模拟用户行为模块和应用状态感知模块。这两大模块彼此关联协作,模拟用户行为模块不断循环获取应用系统的状态,然后将状态信息传递给应用状态感知模块,应用状态感知模块经过判断,将状态信息以多种方式展示给运维管理人员。
2 具体实现
系统目前已经实现了对DHCP、Radius认证、FTP及VPN等应用系统的自动实时监控,下面将使用DHCP、Radius和FTP为例给出具体的实现思路和方法。
2.1 DHCP应用服务状态的监控
学校使用的DHCP服务是安装的Linux服务器提供的,自动实时监控DHCP服务的关键在于脚本需要不停去模拟用户利用DHCP服务器获取IP地址的过程,这个过程可以利用两条命令"ipconfig /release"和"ipconfig /renew"来表示,即释放IP和重新获取IP,如果DHCP应用出现故障,那么主机将无法在执行上述两条命令后获取正确的IP地址,那么Zabbix监控端也将无法ping通该主机。利用WIN 2003 SERVER服务器作为运行脚本程序的监控主机,该程序采用BAT(批处理)脚本实现,起到模拟用户行为的作用。服务器设置每隔30秒执行"ipconfig /release"和"ipconfig /renew"命令,重新从DHCP服务器去获取IP地址,根据监控主机能否获得正确的IP地址代表了DHCP服务是否正常,下一步需要做的就是将该状态信息传递给应用状态感知模块,即Zabbix监控系统。将此监控主机纳入Zabbix的监控范围,使用Zabbix的icmpping来确认能否与该主机通讯,如果能够ping通,则返回值为1,否则返回值为0 ;这样就能判断该主机是否获得了正确的IP地址,也就实现了对于DHCP服务应用状态的实时监控。
2.2 Radius认证应用服务状态的监控
Radius认证服务在很多网络环境有着广泛应用,用于其他应用系统和设备登录的认证。学校Radius服务的一项重要应用就是VPN和无线网络设备的登录认证。实现Radius认证应用状态的自动实时监控的关键点仍然是提取出用户使用Radius应用的流程,然后以脚本程序去实现该流程,然后将检测结果传递给Zabbix。采用基于SecureCRT平台的VBScript语言编写模拟用户登录城市热点计费网关(Dr.com)行为的脚本程序,模拟提交登录的用户名和密码,就可以根据登录结果来判断Radius服务的健康状况。
2.3 FTP应用服务状态的监控
FTP是学校重要的文件服务器,为全校师生提供文件存储服务。实现FTP应用服务状态的自动实时监控的关键也是模拟用户登录FTP系统,并上传一个测试文件,根据整个过程的状态来判断FTP应用的存活度。脚本使用PHP的CURL来实现。
为了减少系统误报的概率,可以在Zabbix里设置Trigger的值,实现连续两次探测应用服务的状态结果作为依据,达到系统监控的有效性。
3 结束语
随着数字校园建设的不断推进和完善,IT运维管理自动化就显得尤为重要。通过对开源网络监控系统Zabbix在应用监控方面的实践改造,给出了Zabbix在应用监控方面的解决方案。目前该自动监控系统已经在学校进行应用,支持对DHCP、Radius认证、FTP及VPN等应用系统状态的实时监控,计划后期将持续改造该监控系统,尽可能将更多的应用系统纳入实时监控的范围。通过给出的思路和方法,可以结合自身的实际网络环境对Zabbix进行二次开发,建成一套符合实际需求的一体化自动监控系统。
参考文献:
[1] zabbix 百度百科[EB/OL]. http://baike.baidu.com/view/1924617.htm.endprint
摘要:开源网络监控系统Zabbix在IT运维管理上得到了广泛应用,但是Zabbix自身所能监控的粒度和深度都难以满足IT运维管理的深层次需求,特别是对于数字校园应用系统可用性的自动监控方面存在较大的缺陷。在结合了学校具体应用的实际情况后,通过对Zabbix监控系统实施的二次开发和改造,实现了对部分应用系统可用性状态的实时监控,并给出了具体的思路和方法。
关键词: Zabbix;IT运维管理;数字校园应用;自动监控
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2014)32-7740-02
Abstract: Zabbix, as an open source network monitoring system, has been widely used in IT operation and management. However, it is hard for the Zabbixs monitoring granularity and profundity to meet the ITOMs deeper demends, especially for the defects existing in the automatic monitored control of the digital campus applications availability. The combinations with practice applications in CIET and secondary development and reform of the Zabbix monitoring system implementation make the real-time monitoring of part of applications availability come true and also bring up some specific thoughts and methods.
Key words:Zabbix; ITOM(IT Operation and Management); digital campus applications; automatic monitored control
Zabbix是一个基于WEB界面的提供分布式系统监控以及网络监视功能的企业级开源解决方案[1]。因为Zabbix部署的灵活性以及开源的特征,有很多学校和企业通过部署Zabbix来对自身的IT基础设施的运行状态进行实时监控;学校也尝试部署了Zabbix,目前已经将大部分服务器和网络设备纳入了Zabbix监控范围,使Zabbix成为运维管理人员重要的故障监控工具。
但是Zabbix只能对一些比较常规的CPU利用率、端口状态、流量、进程使用等项目进行监控,难以针对应用服务进行实时监控。而随着各类应用复杂性的提高,导致应用出现故障的原因越来越难以排查,很多故障并不是CPU、内存等一些常规问题所引起的,而有可能是系统自身的BUG或负载等一些隐秘的原因所引起的,所以有时候Zabbix显示常规的监控项目状态都正常,但是应用实际已经不可用,这样就失去了自动监控的意义。
为了弥补Zabbix在应用监控方面的不足,对Zabbix监控系统做了一些深入的研究,结合IT运维自动化的思想,在Zabbix系统的基础上进行了二次开发,能够针对DHCP、Radius认证、FTP及VPN系统等应用实施可用的自动监控。
1 系统设计思路
既然Zabbix常规监控项目难以反映出应用系统是否正常,只有亲自使用系统才能真正判断出应用系统是否可用,但是要做到实时监控,就必须用到运维自动化的相关技术了,否则单凭人工操作是无法保证监控的时效性的。为了达到自动监控的目的,采用脚本程序来模拟客户端或用户访问应用系统的流程,将该流程自动化、程序化,利用Zabbix监控系统的接口将系统状态传递给Zabbix,通过Zabbix系统的Trigger判断,将应用系统的可用状态情况以页面、邮件或者短信的方式展示给运维管理人员,以达到实时监控的目的。
自动监控系统可分为两大模块:模拟用户行为模块和应用状态感知模块。这两大模块彼此关联协作,模拟用户行为模块不断循环获取应用系统的状态,然后将状态信息传递给应用状态感知模块,应用状态感知模块经过判断,将状态信息以多种方式展示给运维管理人员。
2 具体实现
系统目前已经实现了对DHCP、Radius认证、FTP及VPN等应用系统的自动实时监控,下面将使用DHCP、Radius和FTP为例给出具体的实现思路和方法。
2.1 DHCP应用服务状态的监控
学校使用的DHCP服务是安装的Linux服务器提供的,自动实时监控DHCP服务的关键在于脚本需要不停去模拟用户利用DHCP服务器获取IP地址的过程,这个过程可以利用两条命令"ipconfig /release"和"ipconfig /renew"来表示,即释放IP和重新获取IP,如果DHCP应用出现故障,那么主机将无法在执行上述两条命令后获取正确的IP地址,那么Zabbix监控端也将无法ping通该主机。利用WIN 2003 SERVER服务器作为运行脚本程序的监控主机,该程序采用BAT(批处理)脚本实现,起到模拟用户行为的作用。服务器设置每隔30秒执行"ipconfig /release"和"ipconfig /renew"命令,重新从DHCP服务器去获取IP地址,根据监控主机能否获得正确的IP地址代表了DHCP服务是否正常,下一步需要做的就是将该状态信息传递给应用状态感知模块,即Zabbix监控系统。将此监控主机纳入Zabbix的监控范围,使用Zabbix的icmpping来确认能否与该主机通讯,如果能够ping通,则返回值为1,否则返回值为0 ;这样就能判断该主机是否获得了正确的IP地址,也就实现了对于DHCP服务应用状态的实时监控。
2.2 Radius认证应用服务状态的监控
Radius认证服务在很多网络环境有着广泛应用,用于其他应用系统和设备登录的认证。学校Radius服务的一项重要应用就是VPN和无线网络设备的登录认证。实现Radius认证应用状态的自动实时监控的关键点仍然是提取出用户使用Radius应用的流程,然后以脚本程序去实现该流程,然后将检测结果传递给Zabbix。采用基于SecureCRT平台的VBScript语言编写模拟用户登录城市热点计费网关(Dr.com)行为的脚本程序,模拟提交登录的用户名和密码,就可以根据登录结果来判断Radius服务的健康状况。
2.3 FTP应用服务状态的监控
FTP是学校重要的文件服务器,为全校师生提供文件存储服务。实现FTP应用服务状态的自动实时监控的关键也是模拟用户登录FTP系统,并上传一个测试文件,根据整个过程的状态来判断FTP应用的存活度。脚本使用PHP的CURL来实现。
为了减少系统误报的概率,可以在Zabbix里设置Trigger的值,实现连续两次探测应用服务的状态结果作为依据,达到系统监控的有效性。
3 结束语
随着数字校园建设的不断推进和完善,IT运维管理自动化就显得尤为重要。通过对开源网络监控系统Zabbix在应用监控方面的实践改造,给出了Zabbix在应用监控方面的解决方案。目前该自动监控系统已经在学校进行应用,支持对DHCP、Radius认证、FTP及VPN等应用系统状态的实时监控,计划后期将持续改造该监控系统,尽可能将更多的应用系统纳入实时监控的范围。通过给出的思路和方法,可以结合自身的实际网络环境对Zabbix进行二次开发,建成一套符合实际需求的一体化自动监控系统。
参考文献:
[1] zabbix 百度百科[EB/OL]. http://baike.baidu.com/view/1924617.htm.endprint