一种用于大型服务器集群的日志集群扫描与分析方法
【技术领域】
[0001]本发明是关于系统监控与系统管理领域,特别涉及一种用于大型服务器集群的日志集群扫描与分析方法。
【背景技术】
[0002]在各种云计算服务日益普及到千家万户、超级计算助推国家绝大多数核高基项目的今天,服务器集群的稳定与安全成为这一新型计算模式成功的关键。而集群内部的扫描与分析是提供这种稳定性与安全性最及时和可靠的途径。
[0003]首先,现有的日志分析方法专注于单机节点日志的聚拢和统一管理,如专利CN103856354A “一种集群存储系统日志统一管理实现方法”和CN102724063A “日志采集服务器及数据包分发、日志聚类方法及网络”中所述的方法。这类方法忽略了单机服务器本身的筛选、分类以及为集群统一监控提供可能的前期预测和即时状况确认的能力。
[0004]其次,现有云计算服务器日志管理则专注于单机物理服务器上的日志分类、筛选,并为管理员的手动维护提供方便,如专利CN103475535A “云计算服务器日志管理系统”和CN102594598A “一种日志管理系统及其实现方法”中所描述的技术。这类技术忽略了基于服务器集群整体的统一管理和监控调度,不利于发挥服务器集群特别是大型服务器集群的整体资源整合与共享。
[0005]所以目前仍没有一个系统的技术来支撑日志集群的统一扫描与整体分析,以得到当前状况及未来运行趋势的方法或技术。服务器集群的各种日志可以提供关于整个集群平台运行状况最及时、最全面的信息。
【发明内容】
[0006]本发明的主要目的在于克服现有技术中的不足,提供一种能够充分利用单机服务器上最及时的日志信息以及一种“推” “拉”结合的高效日志数据交换协议来全面实时地监控和预警整个平台的稳定性和安全性的技术。为解决上述技术问题,本发明的解决方案是:
[0007]提供一种用于大型服务器集群的日志集群扫描与分析方法,包括:
[0008](一 )单机日志分析;
[0009](二)集群日志分析;
[0010](三)日志集群分析;
[0011](四)日志数据交换;
[0012](一)单机日志分析包括日志事件的统一化处理和事件快速分类,且单机日志分析在每一单机物理服务器上进行;
[0013]所述日志事件的统一化处理的具体步骤为:
[0014]步骤A:来源标识:记录每一日志事件(日志事件是指日志里包含的单个事件)产生的物理服务器在集群内的唯一标识,以及产生该日志事件的虚拟服务器标识;其中,所述虚拟服务器是指运行在物理服务器虚拟化软件上的服务器个体;
[0015]步骤B:时间戳生成:将物理服务器和虚拟服务器的即时时间戳与对应的标识绑定,并生成相应的两个服务器签名;
[0016]所述事件快速分类具体是指:根据来源的软硬件层级和预定义的严重程度,将所有日志事件分入不同的集合,并存入对应的文件(每一个集合对应一个文件);且若日志事件的严重程度超过预先定义的程度,则将该日志事件作为紧急事件推送至日志集群分析;
[0017]( 二)集群日志分析包括整体事件的关联处理和集群事件的来源分析,且集群日志分析在集群主管机上进行;所述集群主管机是指集群内用于管理的物理服务器(集群主管机通常不提供服务而专用于管理);
[0018]所述整体事件的关联处理具体包括:1、通过比较集群整体日志事件时间戳之间的相互关系,建立整体日志事件之间的关系,包括先后、并发;2、通过比较集群整体日志事件来源的软硬件层级,建立整体日志事件之间的因果关系;
[0019]所述集群事件的来源分析具体是指:记录导致集群日志事件的物理服务器列表(集群日志事件通常不包含虚拟服务器的信息);
[0020](三)日志集群分析用于集群中各类日志的归总以及集群平台当前和未来运行状况的预测,具体包括下述步骤:
[0021]步骤C:事件库的建立或更新:当出现集群日志事件需要进行集群日志分析,或者有紧急事件从单机日志分析推送至日志集群分析,作为第一个集群事件,则触发建立事件库;在建立有事件库后,当出现集群日志事件需要进行集群日志分析,或者有紧急事件从单机日志分析推送至日志集群分析,则触发更新事件库;
[0022]其中,所述事件库存储于集群主管机的一个数据库中;
[0023]步骤D:事件库统计:每一次进行步骤C中的事件库更新时,计算事件库中对应事件在特定时间窗口内的出现次数,并重新计算事件库中每一事件的出现频率;
[0024]其中,所述特定时间窗口的初始大小(由系统管理员)预先设定,并能自动调整大小(如果事件库更新的频率增高,这一时间窗口将自动缩小;反之,则自动增大);
[0025]步骤E:事件库建模:建立基于事件频率、事件来源以及依赖关系的事件库模型(事件库模型是指事件库里各种事件间关系的统称),用于表达不同事件之间的因果关系或先后关系;其中,所述事件频率通过步骤D获得,所述事件来源通过步骤A和集群日志分析中的集群事件的来源分析获得,所述依赖关系通过集群日志分析中的整体事件的关联处理获得;
[0026]事件库模型存储在哈希链表树中,树形结构的父子指针表示依赖关系中的因果关系或先后关系,树节点内存储事件频率和事件来源,事件索引由哈希链表表示;
[0027]步骤F:事件模式识别:利用模式识别方法,对步骤E建立的事件库模型中的信息进行模式(模式是指事件库里有统计意义的事件序列)的建立和识别,并记录所有显示较强统计意义的事件模式,用于为集群平台紧急状况监测和预警提供依据;
[0028]其中,所述模式识别方法包括主元分析、贝叶斯决策理论方法;所述模式识别的依据是事件来源、事件频率和事件关系;所述显示较强统计意义的事件模式是指超过设定值的事件模式,包括出现次数超过设定值的事件模式、出现频率超过设定值的事件模式、以一个紧急事件(严重程度超过预先定义的程度的事件)结束的事件模式;
[0029]步骤G:集群平台运行状况预警:当步骤F中识别出显示较强统计意义的事件模式并记录时,发出平台运行状况警告通知,同时对显示较强统计意义的事件模式的日志条目(这一事件模式可以未完全发生)进行记录;
[0030]步骤H:集群平台未来事件预测:根据步骤E中建立的事件库模型(包括已经计算出的树形结构中父子节点之间的频率依赖关系),预测将来可能发生的事件(每一对发生频率相同的父子节点之间有100%的依赖关系,所以一旦父节点中的事件已经发生,子节点中的事件也必然会发生;发生频率不同的父子节点事件之间的依赖关系可以通过统计方法、基于神经网络或规则挖掘等的方法进行计算和预测),并发出针对可能发生的紧急事件(一般为严重程度超过预先定义的程度)的预告通知;
[0031](四)日志数据交换用于实现日志数据在单机物理服务器和集群主管机之间进行交换,集群主管机通过集群日志分析获得日志数据,单机物理服务器和集群主管机通过推送(“推”)与查询(“拉”)相结合的交互