一种操作系统资源异常的处理方法及系统与流程

文档序号:19155007发布日期:2019-11-16 00:37阅读:229来源:国知局
一种操作系统资源异常的处理方法及系统与流程

本发明涉及操作系统领域,特别是涉及一种操作系统资源异常的处理方法及系统。



背景技术:

服务器操作系统运行着企业服务业务,所以保持操作系统稳定的正常运行十分重要。当操作系统出现异常问题如cpu的占用率过高时,通常要求运维人员立刻登录操作系统查看原因,解决异常并恢复操作系统的稳定状态。有时可能运维人员没办法立刻登录处理,因此,导致服务器操作系统运行效率低,且存在风险。



技术实现要素:

本发明的目的是提供一种操作系统资源异常的处理方法及系统,以提高操作系统的运行效率,降低运行风险。

为实现上述目的,本发明提供了如下方案:

一种操作系统资源异常的处理方法,包括:

获取操作系统的运行数据;所述操作系统的运行数据由脚本定时获取,所述运行数据包括系统资源cpu占用率、系统内存、磁盘io使用数据;

获取所述操作系统的运行数据的设定阈值;

判断所述操作系统的运行数据是否大于设定阈值,得到第一判断结果;

当所述第一判断结果表示所述操作系统的运行数据大于设定阈值时,触发所述脚本进行处理;

当所述第一判断结果表示所述操作系统的运行数据不大于设定阈值时,返回定时获取操作系统的运行数据步骤。

可选的,在所述获取操作系统的运行数据,之后还包括:将所述运行数据存储至关系型数据库中;

在所述触发所述脚本进行处理,之后还包括:将脚本进行处理的过程数据通过邮件发送至运维人员的维护端。

可选的,所述操作系统的运行数据的设定阈值包括cpu占用率阈值、内存阈值和磁盘io阈值。

可选的,所述判断所述操作系统的运行数据是否大于设定阈值,得到第一判断结果,具体包括:

判断所述操作系统的系统资源cpu占用率是否大于所述cpu占用率阈值;当所述操作系统的系统资源cpu占用率大于所述cpu占用率阈值时,确定所述操作系统的运行数据大于设定阈值;当所述操作系统的系统资源cpu占用率不大于所述cpu占用率阈值时,确定所述操作系统的运行数据不大于设定阈值;

判断所述操作系统的系统内存是否大于所述内存阈值;当所述操作系统的系统内存大于所述内存阈值时,确定所述操作系统的运行数据大于设定阈值;当所述操作系统的系统内存不大于所述内存阈值时,确定所述操作系统的运行数据不大于设定阈值;

判断所述操作系统的磁盘io使用数据是否大于所述磁盘io阈值;当所述操作系统的磁盘io使用数据大于所述磁盘io阈值时,确定所述操作系统的运行数据大于设定阈值;当所述操作系统的磁盘io使用数据不大于所述磁盘io阈值时,确定所述操作系统的运行数据不大于设定阈值。

可选的,在所述判断所述操作系统的运行数据是否大于设定阈值,得到第一判断结果,之后还包括:

将所述第一判断结果添加时间戳后存储至mongodb数据库。

本发明还提供一种操作系统资源异常的处理系统,包括:

运行数据获取模块,用于获取操作系统的运行数据;所述操作系统的运行数据由脚本定时获取,所述运行数据包括系统资源cpu占用率、系统内存、磁盘io使用数据;

设定阈值获取模块,用于获取所述操作系统的运行数据的设定阈值;

第一判断模块,用于判断所述操作系统的运行数据是否大于设定阈值,得到第一判断结果;

触发模块,用于当所述第一判断结果表示所述操作系统的运行数据大于设定阈值时,触发所述脚本进行处理;

返回模块,用于当所述第一判断结果表示所述操作系统的运行数据不大于设定阈值时,返回定时获取操作系统的运行数据步骤。

可选的,还包括:

第一存储模块,用于在获取操作系统的运行数据之后,将所述运行数据存储至关系型数据库中;

邮件发送模块,用于在触发所述脚本进行处理之后,将脚本进行处理的过程数据通过邮件发送至运维人员的维护端。

可选的,所述操作系统的运行数据的设定阈值包括cpu占用率阈值、内存阈值和磁盘io阈值。

可选的,第一判断模块具体包括:

系统资源cpu占用率判断单元,用于判断所述操作系统的系统资源cpu占用率是否大于所述cpu占用率阈值;当所述操作系统的系统资源cpu占用率大于所述cpu占用率阈值时,确定所述操作系统的运行数据大于设定阈值;当所述操作系统的系统资源cpu占用率不大于所述cpu占用率阈值时,确定所述操作系统的运行数据不大于设定阈值;

系统内存判断单元,用于判断所述操作系统的系统内存是否大于所述内存阈值;当所述操作系统的系统内存大于所述内存阈值时,确定所述操作系统的运行数据大于设定阈值;当所述操作系统的系统内存不大于所述内存阈值时,确定所述操作系统的运行数据不大于设定阈值;

磁盘io使用数据判断单元,用于判断所述操作系统的磁盘io使用数据是否大于所述磁盘io阈值;当所述操作系统的磁盘io使用数据大于所述磁盘io阈值时,确定所述操作系统的运行数据大于设定阈值;当所述操作系统的磁盘io使用数据不大于所述磁盘io阈值时,确定所述操作系统的运行数据不大于设定阈值。

可选的,还包括:

第二存储模块,用于在判断所述操作系统的运行数据是否大于设定阈值,得到第一判断结果之后,将所述第一判断结果添加时间戳后存储至mongodb数据库。

根据本发明提供的具体实施例,本发明公开了以下技术效果:

本发明通过定时判断操作系统的运行数据是否出现异常,当出现异常时,自动触发脚本进行处理,解决了传统技术中通过运维人员登录处理异常导致及时性差的问题,提高了操作系统的运维效率,同时提高了操作系统的运行效率。同时,通过自动处理异常的方式,降低了运维风险,节省了运维成本,保证了可应用业务的稳定性。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本发明操作系统资源异常的处理方法的流程示意图;

图2为本发明操作系统资源异常的处理系统的结构示意图;

图3为本发明具体实施案例的流程示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。

图1为本发明操作系统资源异常的处理方法的流程示意图。如图1所示,所述操作系统资源异常的处理方法包括以下步骤:

步骤100:获取操作系统的运行数据。所述操作系统的运行数据由脚本定时获取,所述运行数据包括系统资源cpu占用率、系统内存、磁盘io使用数据。脚本定时获取的运行数据通过数据库链接文件将数据存储到mysql数据库中,mysql数据库为关系型数据库,其用于存储系统资源数据。

步骤200:获取操作系统的运行数据的设定阈值。每一类运行数据都对应一个阈值,整体的运行数据的设定阈值包括cpu占用率阈值、内存阈值和磁盘io阈值。根据实际需要还可以设定其他的运行数据的类型和阈值。

步骤300:判断操作系统的运行数据是否大于设定阈值。如果是,执行步骤400;如果否,返回步骤100。此步骤为判断操作系统的资源是否出现异常的过程,由于操作系统的资源包括多类运行数据,因此,此处可以分别对每类运行数据进行判断,无论哪类运行数据超出设定阈值,均认为操作系统的运行数据超出设定阈值,此时操作系统的资源出现异常。具体过程如下:

判断所述操作系统的系统资源cpu占用率是否大于所述cpu占用率阈值;当所述操作系统的系统资源cpu占用率大于所述cpu占用率阈值时,确定所述操作系统的运行数据大于设定阈值;当所述操作系统的系统资源cpu占用率不大于所述cpu占用率阈值时,确定所述操作系统的运行数据不大于设定阈值;

判断所述操作系统的系统内存是否大于所述内存阈值;当所述操作系统的系统内存大于所述内存阈值时,确定所述操作系统的运行数据大于设定阈值;当所述操作系统的系统内存不大于所述内存阈值时,确定所述操作系统的运行数据不大于设定阈值;

判断所述操作系统的磁盘io使用数据是否大于所述磁盘io阈值;当所述操作系统的磁盘io使用数据大于所述磁盘io阈值时,确定所述操作系统的运行数据大于设定阈值;当所述操作系统的磁盘io使用数据不大于所述磁盘io阈值时,确定所述操作系统的运行数据不大于设定阈值。

在得到操作系统的运行数据是否大于设定阈值的判断结果之后,将判断结果添加时间戳记录时间后存储至mongodb数据库,mongodb数据库为介于关系型与非关系型数据库之间的数据库,用于存储处理过程的信息文本记录。

步骤400:触发所述脚本进行处理。脚本具有处理操作系统资源异常的能力,当脚本对资源异常进行处理后,将脚本进行处理的过程数据通过邮件发送至运维人员的维护端,以便运维人员进行查看和纠正。

对应图1所示的操作系统资源异常的处理方法,本发明还提供一种操作系统资源异常的处理系统,图2为本发明操作系统资源异常的处理系统的结构示意图,如图2所示,所述操作系统资源异常的处理系统包括以下结构:

运行数据获取模块201,用于获取操作系统的运行数据;所述操作系统的运行数据由脚本定时获取,所述运行数据包括系统资源cpu占用率、系统内存、磁盘io使用数据;

设定阈值获取模块202,用于获取所述操作系统的运行数据的设定阈值;

第一判断模块203,用于判断所述操作系统的运行数据是否大于设定阈值,得到第一判断结果;

触发模块204,用于当所述第一判断结果表示所述操作系统的运行数据大于设定阈值时,触发所述脚本进行处理;

返回模块205,用于当所述第一判断结果表示所述操作系统的运行数据不大于设定阈值时,返回定时获取操作系统的运行数据步骤。

作为另一实施例,所述操作系统资源异常的处理系统还包括:

第一存储模块,用于在获取操作系统的运行数据之后,将所述运行数据存储至关系型数据库中;

邮件发送模块,用于在触发所述脚本进行处理之后,将脚本进行处理的过程数据通过邮件发送至运维人员的维护端。

所述操作系统的运行数据的设定阈值包括cpu占用率阈值、内存阈值和磁盘io阈值。

作为另一实施例,第一判断模块203具体包括:

系统资源cpu占用率判断单元,用于判断所述操作系统的系统资源cpu占用率是否大于所述cpu占用率阈值;当所述操作系统的系统资源cpu占用率大于所述cpu占用率阈值时,确定所述操作系统的运行数据大于设定阈值;当所述操作系统的系统资源cpu占用率不大于所述cpu占用率阈值时,确定所述操作系统的运行数据不大于设定阈值;

系统内存判断单元,用于判断所述操作系统的系统内存是否大于所述内存阈值;当所述操作系统的系统内存大于所述内存阈值时,确定所述操作系统的运行数据大于设定阈值;当所述操作系统的系统内存不大于所述内存阈值时,确定所述操作系统的运行数据不大于设定阈值;

磁盘io使用数据判断单元,用于判断所述操作系统的磁盘io使用数据是否大于所述磁盘io阈值;当所述操作系统的磁盘io使用数据大于所述磁盘io阈值时,确定所述操作系统的运行数据大于设定阈值;当所述操作系统的磁盘io使用数据不大于所述磁盘io阈值时,确定所述操作系统的运行数据不大于设定阈值。

作为另一实施例,所述操作系统资源异常的处理系统还包括:

第二存储模块,用于在判断所述操作系统的运行数据是否大于设定阈值,得到第一判断结果之后,将所述第一判断结果添加时间戳后存储至mongodb数据库。

下面提供一个具体实施案例进一步说明本发明的方案。图3为本发明具体实施案例的流程示意图。如图3所示,正常cpu的使用率不超过80%,可以根据情况调整,本实施案例中将cpu占用率阈值设置80%。本实施案例中当资源cpu占用率超出cpu占用率阈值时,通过脚本检测占用资源的进程,进而判断该进程是否为应用进程,当占用cpu资源的进程为应用进程时,采用脚本杀死该进程,使该进程结束占用。

由于操作系统的内存调度机制,长期使用会使内存的缓存会占用大量的内存资源,而且一些进程消耗大量的内存,需要设定阈值,超出阈值将清理。本实施案例中内存阈值设定空闲内存不少于1g容量。当系统内存超出内存阈值时,脚本自动释放内存。

不同磁盘的读写速率不同,阈值设定的也不同,需要根据具体型号的磁盘设定阈值大小。本实施例中磁盘io设定为100m/s。当磁盘io吞吐量超出磁盘io阈值时,通过脚本将占用io高的进程杀死,结束该进程。

本实施案例可以提高操作系统的运维效率,降低运维风险,节省运维成本,保证应用业务稳定。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1