相关文章

上海财经大学:搭建一个优良的业务监控系统

业务可用性监控平台的设计

  传统对业务系统的监控一般以单个设备、资源或软件告警为主,缺乏系统与业务层面的整体监控和分析能力,难以从整个系统业务可用性的角度加以评价。同样一个从技术角度看起来十分微小的故障或疏忽,有可能对业务几乎没有影响,但也有可能会造成十分重大的影响。本文通过引入CMDB 中的配置项建模思路,试图解决监控项的局部性问题,同时在开源监控软件基础上用灵活的监控脚本编写加以实现,以期将整个建模过程变得高效化、自动化和规范化,并能够随着IT 业务对象的变化而不断地动态更新和完善,准确地反映业务对象本身,同时达到及时监控的效果。

  常见业务系统结构及对应的监控项

  常见的业务系统软硬件架构如图2 所示,一般包括物理设备、逻辑资源、操作系统、中间件、应用实例以及业务服务等,针对各个层次的监控也各不相同,以下说明对于业务系统结构中各个层次的常见监控内容。

  图2 为常见应用系统的部署层次结构,一般最底层为物理设备,包括各类物理主机、网络设备、物理存储等。随着虚拟化技术的广泛采用,部署在虚拟主机上的操作系统越来越多,因此我们专门在物理设备层上搭建了逻辑资源层,不仅包括虚拟主机,还包括逻辑的存储资源和网络资源等直接可供操作系统使用的逻辑资源。第三层为操作系统层,基于其上的是中间件层,包含数据库、应用服务器、HTTP 服务等,而具体的业务系统应用实例搭建在中间件层上。最后面对用户的是业务服务层,它通过负载均衡与应用实例进行关联。

  对物理设备的监控一般主要包括机房环境监控,主机资源的使用率监控等。针对不同的物理设备,监控侧重点有所不同。对于物理主机,主要关注CPU、内存、IO、系统平均负载等实时状态,对存储设备则主要是对物理磁盘空间使用率的监控,而网络设备主要是对物理网络传输性能、可访问性的监控等。

  随着虚拟化的应用逐步增多,越来越多的应用已部署在虚拟主机中,因此需要考虑对逻辑资源的监控。与物理设备类似,关注点也主要包括逻辑磁盘空间使用率,逻辑主机、逻辑网络资源使用率和性能等。

  对操作系统层面的监控内容首先是对操作系统安全方面的监控,比如操作系统版本、补丁、各类防护软件、重要服务端口的设置情况、用户访问级别等,其次为一些重要参数的设置是否正确,如linux中的可打开文件个数参数默认值较小,经常会影响部分应用程序的正常使用。

  为了保障业务服务的可用性,很多应用系统都采用了硬件或软件的负载均衡措施,因此面对最终用户的一项服务的后面常常由多个应用系统实例构成,对这类应用系统实例的监控,除了保证功能可用性方面的监控之外,还要注意保证各个应用实例之间的一致性,这一点往往容易被忽略应用实例之间不一致导致的后果既难定位,也难以发现核实。

  业务服务层主要是针对面向最终用户的服务功能可用性和业务系统安全性进行监控,其中功能可用性又包括整体可用性和关键功能可用性等内容。