论文部分内容阅读
互联网改变着整个世界,也改变着全球商业运作的模式。企业系统信息化的发展也呈现出爆炸性的增长趋势。一个世界500强的企业集团可能所拥有的系统只能用成千上百来进行计算。并且在实际的业务活动中也承担着越来越重要的角色。不少企业的IT系统也实行了7天*24小时的服务窗口。但是再健壮的系统都无法保证能够一直正常运行,系统偶尔发生异常,实在是不可避免,而如何在系统发生异常的时候,能够及时地发现异常,也是摆在应用系统管理员面前的一个至关重要的问题。对于应用系统的运维人员来说,希望能够快速、准确、全面、直观地获知所辖系统的运行情况,实时把控应用系统的各项指标。应用系统运维人员是应用的管理人员,必须保证系统或系统模块的高可用性,所以必须对系统的运行情况了然于胸。应用主机、数据库主机的CPU和Memory是否有冲高;网络流量是否过大,是否有堵塞的风险;应用进程是否存在,是否存活;中间件容器的容量是否有瓶颈,是否能够支持业务的冲刺活动;系统是否有隐患,是否会有引发重大故障的风险。因此,必须对应用系统的各个组件,各个环节进行监控。通过自动化的信息系统,实时了解应用系统的运行状态下的各个指标,从而才能够对当前系统的运行情况及未来可能的变化趋势做出一个正确的评估。如果发现系统存在运行故障,那么运维人员就可以及时地做出各种对应的故障诊断及恢复系统的工作。本文着重于对企业级的应用系统监控系统的研究,有别于目前市面上有许多免费的开源监控系统。而此类开源监控系统覆盖的监控方面主要集中在基础架构硬件的层面上,例如应用主机、交换机、路由器、核心网络等等,并无法对应用系统本身的运行状况进行监控。而且各个企业的应用系统难免使用不同的应用架构和应用组件来搭建,目前市面上并不存在兼容绝大多数的应用系统的监控系统,而本文中研究的监控系统的主要创新点,便是能够兼容目前市面上绝大多数的应用系统,以及提供给用户个性化配置监控的服务。本文提出的应用系统监控策略是在认真分析、汇总目前主流的应用系统架构和业务过程后,对企业级应用系统在日常运行当中的各个指标进行全方面的覆盖,并能够第一时间进行多种方式的告警。它具有以下特点:实现对企业级应用系统7*24小时全天候的实时监控。本地使用廉价且实用的Haproxy+keepalived,提供系统负载均衡和第一层高可用性;与此同时,在异地同时部署同一套监控系统,用系统双活机制来提供第二层系统高可用性,最大程度地提高监控系统的可用率。监控系统的服务端只提供接收监控信息和转发监控告警的功能,不管企业应用系统是搭建在Linux主机,Unix主机还是Windows主机,不管应用运行容器是Tomcat、Weblogic、Jboss、Web Sphere都可以被全方位地覆盖。为保证不同优先级监控在执行过程中高优先级监控优先使用资源并得到尽量的倾斜,企业级监控系统采用“分监控优先级顺序”的管理机制,对系统关键功能影响最大的监控,必须被第一时间执行并告知。对于大型企业中成千上万的业务系统,企业级监控系统的应对措施是“分服务目录”的管理机制,确保监控系统对所有的系统都是独立的,都是互不影响的。它具有以下优点:集Web层,应用层,数据库层和业务逻辑层的监控功能于一身,对企业应用系统运行情况进行全方位的监控,并且兼容市面上所有主流的应用组件和应用容器,配置不同等级,不同监控告警策略的功能。提供个性化、差异化的监控告警方式。集电话,短信,邮件,页面提示等各种告警方式,确保应用运维人员能够第一时间获知所辖系统发生异常。提供分优先级的监控执行策略。对系统关键功能影响最大的监控,必须被第一时间执行并告知。提供分服务目录的部署策略。保证被监控系统的独立性。监控系统对所有的系统都是独立的,都是互不影响的。