一种集群资源统计方法、系统、装置及可读存储系统与流程

文档序号:14571820发布日期:2018-06-01 22:40阅读:118来源:国知局
一种集群资源统计方法、系统、装置及可读存储系统与流程

本发明涉及分布式存储系统领域,更具体地说,涉及一种集群资源统计方法、系统、装置及可读存储系统。



背景技术:

对于分布式存储系统而言,多节点共同运作提供统一命名空间的存储系统是其基础功能,但是在开发、性能调优、集群监控、后期运维等工作中对所有节点的资源使用状态统计是必不可少的。现在的资源统计工具种类繁多、功能强悍,但是很难直接使用在存储系统当中,特别是多存储节点一起统计,如果在性能调优中需要记录每个节点的CPU使用率,那就要每个节点都要开启着top之类的命令进行记录,然后结束之前逐个节点的查看使用情况,非常费时费力,操作出错率高、统计效果不明显,非常不可取。

虽然对于当前的分布式存储系统来说,集群的资源统计功能已是基本功能,但是大多是在界面进行统计并显示,而且不能有针对性的获取需要的资源,并不利于研发人员的查看及维护人员的调试。

因此,如何高效的获取集群中的节点资源,是本领域技术人员需要解决的问题。



技术实现要素:

本发明的目的在于提供一种集群资源统计方法、系统、装置及可读存储系统,以高效的获取集群中的节点资源。

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

一种集群资源统计方法,包括:

解析预设配置文件,得到目标节点标识与目标参数;其中,所述目标参数包括目标节点参数与目标进程参数;

根据所述目标节点标识连接目标节点,并获取每个所述目标节点的与所述目标参数对应的目标信息;

统计所有所述目标信息以得到目标资源信息。

其中,所述目标参数包括一下任意一项或任意组合:

目标节点总内存使用情况参数、目标节点CPU使用情况参数、目标节点中目标网口带宽使用情况参数、目标节点所有磁盘使用情况参数、目标进程内存使用情况参数、目标进程CPU使用情况参数。

其中,获取每个所述目标节点的与所述目标参数对应的目标信息,包括:

通过SCP工具将运行程序拷贝至所述目标节点;

控制所述目标节点运行所述运行程序以调用目标工具获取与所述目标参数对应的目标信息。

其中,所述获取每个所述目标节点的与所述目标参数对应的目标信息,包括:

间隔预设时间在每个所述目标节点中获取与所述目标参数对应的目标信息。

其中,所述获取每个所述目标节点的与所述目标参数对应的目标信息,包括:

接收由所述目标节点发送的目标文件;

在所述目标文件中获取所述目标信息。

为解决上述技术问题,本发明还提供一种集群资源统计系统,包括:

解析模块,用于解析预设配置文件,得到目标节点标识与目标参数;其中,所述目标参数包括目标节点参数与目标进程参数;

获取模块,用于根据所述目标节点标识连接目标节点,并在每个所述目标节点中获取与所述目标参数对应的目标信息;

统计模块,用于统计所有所述目标信息以得到目标资源信息。

其中,所述获取模块,包括:

连接单元,用于根据所述目标节点标识连接目标节点;

拷贝单元,用于通过SCP工具将运行程序拷贝至所述目标节点;

第一获取单元,用于控制所述目标节点运行所述运行程序以调用目标工具获取与所述目标参数对应的目标信息。

其中,所述获取模块,具体用于根据所述目标节点标识连接目标节点,并间隔预设时间在每个所述目标节点中获取与所述目标参数对应的目标信息。

本发明还提供了一种集群资源统计装置,包括:

存储器,用于存储计算机程序;

处理器,用于执行所述计算机程序时实现如所述集群资源统计方法的步骤。

本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如所述集群资源统计方法的步骤。

通过以上方案可知,本发明提供的一种集群资源统计方法,包括:解析预设配置文件,得到目标节点标识与目标参数;其中,所述目标参数包括目标节点参数与目标进程参数;根据所述目标节点标识连接目标节点,并获取每个所述目标节点的与所述目标参数对应的目标信息;统计所有所述目标信息以得到目标资源信息。

由此可见,本发明提供的一种集群资源统计方法,可以通过解析配置文件确定对应每个目标节点的目标标识和目标参数,从而获取每个目标节点的目标信息,并将所有目标信息进行统计,得到目标资源信息。通过配置文件可以灵活的指定目标信息以及目标节点,同时,将所有目标信息进行统计,可以方便研发人员查看。本发明还提供了一种集群资源统计系统、装置及计算机可读存储介质,同样可以实现上述技术效果。

附图说明

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

图1为本发明实施例公开的一种集群资源统计方法流程图;

图2为本发明实施例公开的一种具体的集群资源统计方法流程图;

图3为本发明实施例公开的一种集群资源统计系统结构示意图;

图4为本发明实施例公开的一种具体的集群资源统计系统结构示意图。

具体实施方式

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

本发明实施例公开了一种集群资源统计方法、系统、装置及可读存储系统,以高效的获取集群中的节点资源。

参见图1,本发明实施例提供的一种集群资源统计方法,具体包括:

S101,解析预设配置文件,得到目标节点标识与目标参数;其中,所述目标参数包括目标节点参数与目标进程参数。

在本方案中,管理节点可以通过预先的编辑配置文件确定目标节点和目标参数。在配置文件中利用目标节点的标识指定需要获取资源的目标节点,同时,通过一些目标参数指定需要在目标节点中获取那些信息。其中,管理节点可以是集群中的任意节点。

需要说明的是,目标节点标识可以是目标节点的hostname(主机名称),也可以是目标节点的ip地址,也可以是二者的结合。目标参数可以是目标节点的总内存使用情况、节点的CPU使用情况;同时还可以指定获取目标节点中具体的目标进程的信息,例如某一个目标进程的内存使用情况等。

配置文件中具体的参数配置可以参考以下内容:

首先通过参数host限定想要统计的集群节点的hostname或ip;

通过目标参数totalmem指定获取该节点的总内存使用情况,直接由free工具获取;

通过目标参数totalcpu指定获取该节点的CPU使用情况,由top工具获取,其中,还可以限定CPU使用情况的具体参数,如id、sy、load average等参数;

通过目标参数process_name指定想要获取指定进程资源的进程名;

process_pid指定想要获取指定进程资源的进程id;其中,可以只指定进程名,不指定进程id;

通过目标参数process_mem指定获取该进程的内存使用情况;

通过目标参数process_cpu指定获取该进程的cpu使用情况;

通过目标参数net_interface指定获取目标网口的带宽等使用情况,由iostat工具获取;

通过目标参数disk_all指定获取所有磁盘的使用情况,由工具sar获取。

S102,根据所述目标节点标识连接目标节点,并获取每个所述目标节点的与所述目标参数对应的目标信息。

具体地,根据目标节点标识,连接目标节点,并获取目标节点中的目标参数对应的内容。其中,管理节点与目标节点可以通过SSH相连,然后在目标节点中调用与目标参数相对应的工具,获取与目标参数对应的信息。

需要说明的是,对于目标信息的获取,可以是由管理节点每间隔预设时间主动向目标节点中获取目标信息,其中,预设时间可以是根据历史获取目标信息的时间确定,例如在目标节点上获取目标信息一般为1分钟以内,则预设时间即可为1分钟,即在连接目标节点的一分钟后,管理节点主动获取目标节点中的目标信息。

此外,也可以由目标节点在获取到目标信息后以文件形式向管理节点发送该目标信息,从而使管理节点在该文件中获取目标信息。

S103,统计所有所述目标信息以得到目标资源信息。

管理节点在获取到每个目标节点的目标信息后,将所有目标信息按照统一格式输出到最终结果文件中,以便研发人员查看。

由此可见,本发明实施例提供的一种集群资源统计方法,可以通过解析配置文件确定对应每个目标节点的目标标识和目标参数,从而获取每个目标节点的目标信息,并将所有目标信息进行统计,得到目标资源信息。通过配置文件可以灵活的指定目标信息以及目标节点,同时,将所有目标信息进行统计,可以方便研发人员查看。

本发明实施例提供一种具体的集群资源统计方法,区别于上述实施例,本发明实施例所提供的一种具体地集群资源统计方法对上述实施例中S102做了进一步的限定和说明,其他步骤内容与上述实施例大致相同,具体可以参考上述实施例,此处不再赘述。

参见图2,本发明实施例提供的一种具体的集群资源统计方法,具体包括:

S201,解析预设配置文件,得到目标节点标识与目标参数;其中,所述目标参数包括目标节点参数与目标进程参数。

S202,根据所述目标节点标识连接目标节点。

S203,通过SCP工具将运行程序拷贝至所述目标节点。

S204,控制所述目标节点运行所述运行程序以调用目标工具获取与所述目标参数对应的目标信息。

在本方案中,管理节点会根据解析之后的参数值,通过scp工具将运行程序拷贝至需要资源统计的节点,然后通过ssh连接到该节点,并执行资源统计程序,其中,资源统计程序是以top、iostat、sar、free等工具根据具体地参数运行。

目标节点按照ssh方式到各个节点搜集指定的资源信息,并保存到临时文件中,再通过scp传输方式将临时保存的文件定时发送到主管理节点,统一整理并输出结果。

S205,统计所有所述目标信息以得到目标资源信息。

在本方案中,目标信息可以按照txt格式输出,并进行统计得到目标资源信息。

下面对本发明实施例提供的一种集群资源统计系统进行介绍,下文描述的一种集群资源统计系统与上文描述的一种集群资源统计方法可以相互参照。

参见图3,本发明实施例提供的一种集群资源统计系统,具体包括:

解析模块301,用于解析预设配置文件,得到目标节点标识与目标参数;其中,所述目标参数包括目标节点参数与目标进程参数。

在本方案中,解析模块301可以通过预先编辑的配置文件确定目标节点和目标参数。在配置文件中利用目标节点的标识指定需要获取资源的目标节点,同时,通过一些目标参数指定需要在目标节点中获取那些信息。其中,管理节点可以是集群中的任意节点。

需要说明的是,目标节点标识可以是目标节点的hostname(主机名称),也可以是目标节点的ip地址,也可以是二者的结合。目标参数可以是目标节点的总内存使用情况、节点的CPU使用情况;同时还可以指定获取目标节点中具体的目标进程的信息,例如某一个目标进程的内存使用情况等。

配置文件中具体的参数配置可以参考以下内容:

首先通过参数host限定想要统计的集群节点的hostname或ip;

通过目标参数totalmem指定获取该节点的总内存使用情况,直接由free工具获取;

通过目标参数totalcpu指定获取该节点的CPU使用情况,由top工具获取,其中,还可以限定CPU使用情况的具体参数,如id、sy、load average等参数;

通过目标参数process_name指定想要获取指定进程资源的进程名;

process_pid指定想要获取指定进程资源的进程id;其中,可以只指定进程名,不指定进程id;

通过目标参数process_mem指定获取该进程的内存使用情况;

通过目标参数process_cpu指定获取该进程的cpu使用情况;

通过目标参数net_interface指定获取目标网口的带宽等使用情况,由iostat工具获取;

通过目标参数disk_all指定获取所有磁盘的使用情况,由工具sar获取。

获取模块302,用于根据所述目标节点标识连接目标节点,并在每个所述目标节点中获取与所述目标参数对应的目标信息。

具体地,获取模块302根据目标节点标识,连接目标节点,并获取目标节点中的目标参数对应的内容。其中,管理节点与目标节点可以通过SSH相连,然后在目标节点中调用与目标参数相对应的工具,获取与目标参数对应的信息。

需要说明的是,对于目标信息的获取,可以是由获取模块302每间隔预设时间主动向目标节点中获取目标信息,其中,预设时间可以是根据历史获取目标信息的时间确定,例如在目标节点上获取目标信息一般为1分钟以内,则预设时间即可为1分钟,即在连接目标节点的一分钟后,管理节点主动获取目标节点中的目标信息。

此外,也可以由目标节点在获取到目标信息后以文件形式向管理节点发送该目标信息,从而使获取模块302在该文件中获取目标信息。

统计模块303,用于统计所有所述目标信息以得到目标资源信息。

获取模块302在获取到每个目标节点的目标信息后,统计模块303将所有目标信息按照统一格式输出到最终结果文件中,以便研发人员查看。

由此可见,本发明实施例提供的一种集群资源统计系统,可以通过解析模块301解析配置文件确定对应每个目标节点的目标标识和目标参数,从而获取模块302获取每个目标节点的目标信息,统计模块303将所有目标信息进行统计,得到目标资源信息。通过配置文件可以灵活的指定目标信息以及目标节点,同时,将所有目标信息进行统计,可以方便研发人员查看。

本发明实施例提供一种具体的集群资源统计系统,区别于上述实施例,本发明实施例所提供的一种具体地集群资源统计系统对上述实施例中获取模块302做了进一步的限定和说明,其他模块内容与上述实施例大致相同,具体可以参考上述实施例,此处不再赘述。

参见图4,本发明实施例提供的一种具体的集群资源统计方法,具体包括:

解析模块301,用于解析预设配置文件,得到目标节点标识与目标参数;其中,所述目标参数包括目标节点参数与目标进程参数;

获取模块302,用于根据所述目标节点标识连接目标节点,并在每个所述目标节点中获取与所述目标参数对应的目标信息。

其中,获取模块302包括:

连接单元401,用于根据所述目标节点标识连接目标节点;

拷贝单元402,用于通过SCP工具将运行程序拷贝至所述目标节点;

第一获取单元403,用于控制所述目标节点运行所述运行程序以调用目标工具获取与所述目标参数对应的目标信息。

在本方案中,管理节点会根据解析之后的参数值,拷贝单元402通过scp工具将运行程序拷贝至需要资源统计的节点,然后通过ssh连接到该节点,并执行资源统计程序,其中,资源统计程序是以top、iostat、sar、free等工具根据具体地参数运行。

目标节点按照ssh方式到各个节点搜集指定的资源信息,并保存到临时文件中,再通过scp传输方式将临时保存的文件定时发送到主管理节点,统一整理并输出结果。

统计模块303,用于统计所有所述目标信息以得到目标资源信息。

在本方案中,目标信息可以按照txt格式输出,统计模块303进行统计得到目标资源信息。

下面对本发明实施例提供的一种集群资源统计装置进行介绍,下文描述的一种集群资源统计装置与上文描述的一种集群资源统计方法可以相互参照。

本发明实施例提供的一种集群资源统计装置具体包括:

存储器,用于存储计算机程序;

处理器,用于执行所述计算机程序时实现如上述任一实施例所述集群资源统计方法的步骤。

下面对本发明实施例提供的一种计算机可读存储介质进行介绍,下文描述的一种计算机可读存储介质与上文描述的一种集群资源统计方法可以相互参照。

本发明实施例提供的一种计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任一集群资源统计方法的步骤。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

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