论文部分内容阅读
当前网络带宽不断提升,普通计算机的价格不断下降,由普通计算机作为节点,构成基本计算单元,通过高速局域网相互连接,依靠软件进行协作的集群系统具有扩展性好、性价比高等优势,已经取代了传统的大型机和巨型机,在很多工业领域得到了广泛的使用。而集群系统由普通PC机器组成,PC机器的性能并不稳定,单个节点失效的可能性非常大,在集群规模不断扩大后,对集群系统的节点进行监控越来越重要。通过监控,可以发现哪些节点已经失效,得到系统中每个节点的利用情况,分析整个集群的运行趋势、性能极限和瓶颈,为运维人员和集群负载均衡系统提供可靠依据。本项目来自于本人研究生期间实习所在公司,目的在于监控公司机房的服务器集群的运行状况,其功能包括:采集集群系统中各个节点内存、网络、处理器、磁盘、分区等各类资源的使用情况;将采集得到的各种监控数据存入后台数据库,以WEB网页的形式展示给最终用户,供用户查询和使用这些监控数据;根据用户设置的报警策略,对采集得到的监控数据进行分析,一旦发现存在异常,则会通过预订的通信规则,将异常信息发送给相关人员,以进行进一步的处理,从而减少不必要的损失。监控系统同时采用了C/S架构和B/S架构,包括驻留在各个节点上的监控客户端程序,一定数量的监控代理程序,监控服务器和数据存储组件。系统从节点机/proc文件系统、系统配置文件中获取监控数据,使用XML进行数据传送。后台利用DB Proxy构建高性能、高可用的MySQL数据库集群作为数据存储组件。在本系统设计和实现的过程中,本人完成了系统监控客户端数据采集功能,监控服务器监控配置管理、监控数据的可视化展示、用户与权限管理等功能的实现,在项目前期和后期,分别参与了系统的需求调研和测试工作。本文设计的服务器集群监控系统已经在公司上线运行,能够稳定有效的监控公司机房的服务器集群,具有占用系统资源少、反应灵敏等特点。