基于集群监控分析计算设备可用性的方法及装置的制造方法_3

文档序号:9202743阅读:来源:国知局
根据监控需求预先设置的。
[0066]例如,通过ganglia监控方式,周期性地监控并采集多台计算设备在预定时长内的CPU负载率、可用磁盘容量、每秒I/O数量、网络流量及内存占用率等多个预定监控项的监控数据。
[0067]可选地,监控并采集多台计算设备在预定时长内多个预定监控项的监控数据之前,在多个计算设备上分别部署监控工具,在执行监控步骤时,启动监控工具,并通过监控工具执行多个预定监控项的监控数据监控及采集。
[0068]具体地,通过自动化配置和管理工具进行监控工具的部署,如SaltStack自动化工具在多个计算设备上批量部署监控工具ganglia。
[0069]分析模块320:对在预定时长内每台计算设备的每个预定监控项的监控数据进行分析处理,确定每台计算设备的监控分析结果。
[0070]如图4所示,分析模块320具体包括计算单元421和比较单元422 ;计算单元421:对在预定时长内每台计算设备的每个预定监控项的监控数据进行计算处理,确定与每个预定监控项相应的测评值;比较单元422:将与每个预定监控项相应的测评值与该预定监控项的预设阈值进行比较,确定每台计算设备基于多个预定监控项的监控分析结果。
[0071]具体地,对每台计算设备的每个预定监控项,将采集到的在预定时长内的监控数据通过贝叶斯分析,计算确定与每个预定监控项相应的测评值;将与每个预定监控项相应的测评值与该预定监控项的预设阈值进行比较,根据比较结果确定每台计算设备基于多个预定监控项的监控分析结果。
[0072]更具体地,计算测评值及相应的确定监控分析结果的方式包括:
[0073]I)对采集到的预定时长内CPU负载率进行平均值计算,确定相应的测评值为CPU负载率平均值;比较CPU负载率平均值与CPU负载率阈值的大小,当CPU负载率平均值大于CPU负载率阈值时,该计算设备的CPU负载率属于非正常状态;
[0074]2)对采集到的预定时长内可用磁盘容量进行最大值计算,确定相应测评值为可用磁盘容量最大值;比较可用磁盘容量最大值与磁盘容量阈值的大小,当可用磁盘容量最大值小于磁盘容量阈值时,该计算设备的可用磁盘容量属于非正常状态;
[0075]3)对采集到的预定时长内每秒I/O数量进行平均值计算,确定相应的测评值为每秒I/O平均值;比较每秒I/O平均值与I/O阈值的大小,当每秒I/O平均值大于I/O阈值时,该计算设备的每秒I/o数量属于非正常状态;
[0076]4)对采集到的预定时长内网络流量进行最大值计算,确定相应的测评值为网络流量最大值;比较网络流量最大值与网络流量阈值的大小,当网络流量最大值大于网络流量阈值时,该计算设备的网络流量属于非正常状态;
[0077]5)对采集到的预定时长内内存占用率进行最大值计算,确定相应的测评值为内存占用率最大值;比较内存占用率最大值与内存占用率阈值的大小,当内存占用率最大值大于内存占用率阈值时,该计算设备的内存属于非正常状态。
[0078]确定模块330:根据监控分析结果,确定多台计算设备的可用性信息,以用于将数据业务分配至可用设备中。
[0079]具体地,确定多台计算设备的可用性信息,包括以下情形:
[0080]当一台计算设备的所述多个预定监控项均属于正常状态,则该计算设备为可用设备;
[0081]当一台计算设备的任一预定监控项属于非正常状态,则该计算设备为不可用设备。
[0082]可选地,对于一台计算设备,如果在步骤SllO中采集数据失败,即未采集到在预定时长内任一预定监控项的监控数据时,确定该计算设备的可用性为未知;需要检测监控工具是否异常,当监控工具恢复正常时,监控采集模块310、分析模块320及可用性确定模块330重新执行采集监控数据、判断该计算设备的可用性等操作,来判断该计算设备的可用性。
[0083]可选地,对于一台计算设备,如果监控采集模块310采集数据有误时,即采集到在预定时长内任一预定监控项的监控数据与正常监控数据有较大偏差时,确定该计算设备的可用性为待定;需要监控采集模块310、分析模块320及可用性确定模块330重新执行采集监控数据、判断该计算设备的可用性等操作。
[0084]优选地(参照图3),该方法还包括数据库创建模块(图中未示出);数据库创建模块:创建监控数据库,并将采集到的多台计算设备的多个预定监控项的监控数据、相应的监控数据采集的时间信息、监控分析结果及可用性信息相关联地保存至监控数据库。其中,监控数据采集的时间信息可包括监控数据采集时间起始点、监控数据采集时长中的至少一个,而存储监控数据采集的时间信息是用于辨识数据的有效性,为后续根据监控时长及采集时间起始点来对数据业务执行进一步分配提供时间参考。
[0085]具体地,为监控系统创建监控数据库,其中,监控数据库优选为MongoDB,并将采集到的多台计算设备的多个预定监控项的监控数据、监控分析结果及可用性信息相关联地保存至监控数据库。
[0086]其中,MongoDB是目前在互联网行业常用的一种非关系型数据库(NoSql),其数据存储方式非常灵活。MongoDB内置的水平扩展机制提供了从百万到十亿级别的数据量处理能力,可以支持较大数据量的同时插入、更新等操作。
[0087]现有技术中多采用MysqlDB来存储类似数据,由于MysqlDB是关系型数据库,其数据存储格式非常标准,而来自不同计算设备的多项预定监控项的监控数据无固定格式,因此,会造成经常修改Mysql表结构、数据写入失败等情况。本方案的优选实施例中,利用MongoDB数据存格式灵活的特点,可以解决了无固定格式监控数据的存储问题。
[0088]本技术领域技术人员可以理解,本发明包括涉及用于执行本申请中所述操作中的一项或多项的设备。这些设备可以为所需的目的而专门设计和制造,或者也可以包括通用计算机中的已知设备。这些设备具有存储在其内的计算机程序,这些计算机程序选择性地激活或重构。这样的计算机程序可以被存储在设备(例如,计算机)可读介质中或者存储在适于存储电子指令并分别耦联到总线的任何类型的介质中,所述计算机可读介质包括但不限于任何类型的盘(包括软盘、硬盘、光盘、⑶-ROM、和磁光盘)、ROM (Read-Only Memory,只读存储器)、RAM (Random Access Memory,随即存储器)、EPROM (Erasable ProgrammableRead-Only Memory,可擦写可编程只读存储器)、EEPROM (Electrical Iy ErasableProgrammable Read-Only Memory,电可擦可编程只读存储器)、闪存、磁性卡片或光线卡片。也就是,可读介质包括由设备(例如,计算机)以能够读的形式存储或传输信息的任何介质。
[0089]本技术领域技术人员可以理解,可以用计算机程序指令来实现这些结构图和
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1