一种Linux下NAS集群重置的测试方法和系统与流程

文档序号:16245325发布日期:2018-12-11 23:31阅读:349来源:国知局
一种Linux下NAS集群重置的测试方法和系统与流程

本申请涉及存储系统技术领域,特别是涉及一种linux下nas集群重置的测试方法和系统。

背景技术

在存储系统技术领域,带有nas功能的统一存储系统又称nas集群。nas集群的稳定性是nas测试中一个重要的组成部分,而nas集群重置测试能够很好地反映nas集群的稳定性,因此,对nas集群进行nas集群重置测试,是个重要问题。

目前对nas集群进行重置的方法,主要是人工测试。具体地,在nas集群重置测试时,需要手动向一个节点输入清除命令,然后等待命令执行完毕,大约需要10分钟;再向nas集群中的另一个节点手动输入清除命令,等待命令执行完毕,大约需要10分钟,再向整个集群输入清除命令,等待命令执行完毕,大约需要5分钟,总计大约25分钟完成一次集群重建。在nas集群重置时,每个迭代版本需要执行以上集群重置动作100次。最后工作人员根据集群重置测试中,执行多少次重置后发生失败来获取集群重置结果。

然而,目前对nas集群进行重置的方法中,由于采用人工手动测试,而一次集群重置所需时间较长,集群重置失败的概率并不高,在测试过程中等待时间太长,耗费太多时间和精力,测试效率太低。而且人工手动测试的方法,每次重置都需要手动输入命令,容易出现命令输入错误的情况,因此,也不利于测试效率的提高。



技术实现要素:

本申请提供了一种linux下nas集群重置的测试方法和系统,以解决现有技术中的nas集群重置测试效率低的问题。

为了解决上述技术问题,本申请实施例公开了如下技术方案:

一种linux下nas集群重置的测试方法,所述方法包括:

s1:获取当前nas集群的基本信息,所述基本信息包括:nas集群运行状态和nas集群中节点数量;

s2:根据nas集群的基本信息,清除nas集群;

s3:创建新的nas集群;

s4:按照设定的集群重置次数n,重复执行步骤s1-s3,n为自然数;

s5:根据执行结果,统计集群重置的次数。

可选地,所述根据当前nas集群的基本信息,清除nas集群的方法,包括:

根据当前nas集群的基本信息和第一清除命令,依次在nas集群每个节点中清除节点与主机的映射关系以及节点的端口ip,所述第一清除命令在nas集群每个节点中执行;

根据第二清除命令,在nas集群中清除所有文件系统,所述第二清除命令在nas集群中执行。

可选地,所述第一清除命令为replacenas命令,所述第二清除命令为restorenas命令。

可选地,创建新的nas集群之后,所述方法还包括:

根据新的nas集群的运行状态,判断新的nas集群是否创建成功;

如果新的nas集群的运行状态为正常,按照设定的集群重置次数n,重复执行步骤s1-s3;

如果新的nas集群的运行状态为异常,停止集群重置。

可选地,所述根据执行结果,统计集群重置的次数,包括:

如果重复执行步骤s1-s3时,n次新的nas集群创建均成功,则集群重置次数为n;

如果重复执行步骤s1-s3时,第m次新的nas集群创建失败,则集群重置次数为m-1,其中,m为自然数且m<n。

可选地,所述nas集群中节点数量为2。

一种linux下nas集群重置的测试系统,所述测试系统包括:

基本信息获取模块,用于获取当前nas集群的基本信息,所述基本信息包括:nas集群运行状态和nas集群中节点数量;

清除模块,用于根据nas集群的基本信息,清除nas集群;

创建模块,用于创建新的nas集群;

重置模块,用于按照设定的集群重置次数n,重复启动所述清除模块和创建模块,n为自然数;

统计模块,用于根据所述重置模块重复启动所述清除模块和创建模块的次数,统计集群重置的次数。

可选地,所述清除模块包括:

节点清除单元,用于根据当前nas集群的基本信息和第一清除命令,依次在nas集群每个节点中清除节点与主机的映射关系以及节点的端口ip;

集群清除单元,用于根据第二清除命令,在nas集群中清除所有文件系统。

可选地,所述测试系统中还包括有判断模块,用于

根据新的nas集群的运行状态,判断新的nas集群是否创建成功;

如果新的nas集群的运行状态为正常,启动所述重置模块;

如果新的nas集群的运行状态为异常,停止集群重置。

可选地,所述nas集群中节点数量为2。

本申请的实施例提供的技术方案可以包括以下有益效果:

本申请提供一种linux下nas集群重置的测试方法,首先获取nas集群的基本信息,其次根据nas集群的基本信息清除nas集群,然后创建新的nas集群,根据设定的集群重置次数n,重复进行集群的清除和创建,最后根据执行结果统计集群重置的次数。采用本申请中的方法进行脚本编写,能够实现自动化的nas集群重置测试,相比于现有技术中人工测试,能够节省大量测试时间,有利于提高测试效率和测试结果的准确性。

本申请还提供一种linux下nas集群重置的测试系统,该系统主要包括基本信息获取模块、清除模块、创建模块、重置模块和统计模块,通过基本信息获取模块获取到当前nas集群的基本信息,其次通过清除模块和创建模块实现一次集群重置,然后通过重置模块安装设定的集群重置次数实现多次集群重置,最后通过统计模块对集群重置次数进行统计,从而完成nas集群重置的测试。本申请通过各个模块的协调配合,能够实现自动化的nas集群重置测试,有利于提高测试脚本的复用率和测试结果的收集效率,从而节约测试时间,提高测试效率和测试结果的准确性。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。

附图说明

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

图1为本申请实施例所提供的一种linux下nas集群重置的测试方法的流程示意图;

图2为本申请实施例所提供的一种linux下nas集群重置的测试系统的结构示意图。

具体实施方式

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

为了更好地理解本申请,下面结合附图来详细解释本申请的实施方式。

参见图1,图1为本申请实施例所提供的一种linux下nas集群重置的测试方法的流程示意图。由图1可知,本申请中nas集群重置的测试方法主要包括如下过程:

s1:获取当前nas集群的基本信息,基本信息包括:nas集群运行状态和nas集群中节点数量。

具体地,nas集群运行状态包括正常和异常两种状态。通过nas集群状态命令可以获取到nas集群的运行状态,例如:如果获取到nas集群状态为“start”表示集群正常运行。如果当前nas集群运行状态为正常运行,清除nas集群;如果当前nas集群运行状态为异常,退出测试流程。可以通过functionlscluster()函数查看当前集群的基本信息。

进一步地,本实施例中nas集群中节点的数量为2。

获取到当前nas集群的基本信息后后,执行步骤s2:根据nas集群的基本信息,清除nas集群。

具体地,步骤s2包括如下过程:

s21:根据当前nas集群的基本信息和第一清除命令,依次在nas集群每个节点中清除节点与主机的映射关系以及节点的端口ip,其中第一清除命令在nas集群每个节点中执行。

本实施例中第一清除命令为replacenas命令,该命令在nas集群的每个节点中执行,用于清除节点与主机的映射关系以及当前节点端口的ip地址。可通过functionreplacenas_cmd_ssh()函数在每个节点中进行集群清除。

s22:根据第二清除命令,在nas集群中清除所有文件系统,其中第二清除命令在nas集群中执行。

本实施例中第二清除命令为restorenas命令,该命令在nas集群中执行,用于清除nas集群中的所有文件系统。可通过functionrestorenas_cmd_ssh()函数在nas集群中进行集群清除。

s3:创建新的nas集群。

可利用函数functionmknascluster_cmd_ssh(),创建新的nas集群。

进一步地,该实施例中创建新的nas集群后,还包括根据所创建的集群运行状态确定是否进行重置。具体地,包括如下过程:

s61:根据新的nas集群的运行状态,判断新的nas集群是否创建成功。

可采用集群状态查看命令确定nas集群是否创建成功,如果状态为正常运行则创建成功,如果状态为异常则创建不成功。

s62:如果新的nas集群的运行状态为正常,按照设定的集群重置次数n,重复执行步骤s1-s3。

s63:如果新的nas集群的运行状态为异常,停止集群重置。

以上步骤s2-s3相当于进行一次集群重建,继续参见图1可知,成功创建新的nas集群后,执行步骤s4:按照设定的集群重置次数n,重复执行步骤s1-s3,n为自然数。

本实施例中集群重置次数为预先设定的参数,具体根据nas集群的要求而定。

步骤s5:根据执行结果,统计集群重置的次数。

具体地,步骤s5包括如下过程:

s51:如果重复执行步骤s1-s3时,n次新的nas集群创建均成功,则集群重置次数为n。

s52:如果重复执行步骤s1-s3时,第m次新的nas集群创建失败,则集群重置次数为m-1,其中,m为自然数且m<n。

本实施例中可以利用count变量来统计集群重置的次数。集群重置成功时会有success提示标志,如果执行创建失败,会直接退出测试,可通过查看count值,来查看失败前执行了几次集群重建,从而确定集群重置的次数。

综上所述,采用本申请中的测试方法,编写测试脚本,能够自动实现nas集群重置,有利于节省测试时间,提高测试效率。而且集群重置失败也能确定当前集群的重置次数,从而确定当前集群的性能状况。

参见图2,图2为本申请实施例所提供的一种linux下nas集群重置的测试系统的结构示意图。由图2可知,本申请还提供一种linux下nas集群重置的测试系统,该系统主要包括基本信息获取模块、清除模块、创建模块、重置模块和统计模块。

其中,基本信息获取模块用于获取当前nas集群的基本信息,所述基本信息包括:nas集群运行状态和nas集群中节点数量;清除模块用于根据nas集群的基本信息,清除nas集群;创建模块用于创建新的nas集群;重置模块用于按照设定的集群重置次数n,重复启动所述清除模块和创建模块,n为自然数;统计模块用于根据所述重置模块重复启动所述清除模块和创建模块的次数,统计集群重置的次数。

进一步地,本实施例中清除模块包括节点清除单元和集群清除单元。节点清除单元用于根据当前nas集群的基本信息和第一清除命令,依次在nas集群每个节点中清除节点与主机的映射关系以及节点的端口ip。集群清除单元用于根据第二清除命令,在nas集群中清除所有文件系统。

进一步地,本实施例中的测试系统中还包括有判断模块,用于根据新的nas集群的运行状态,判断新的nas集群是否创建成功;如果新的nas集群的运行状态为正常,启动所述重置模块;如果新的nas集群的运行状态为异常,停止集群重置。

本实施例中统计模块统计集群重置次数的方法为:如果重置模块n次重复启动清除模块和创建模块时,均能够成功创建新的nas集群,则集群重置次数为n。如果重置模块在重复启动清除模块和创建模块时,第m次创建nas集群失败,则集群重置次数为m-1。这里m<n,且m、n均为自然数。

本实施例中linux下nas集群重置的测试系统的工作原理和工作方法,在图1所示的实施例中已经详细阐述。该实施例未详细描述的部分,可以参照图1所示的实施例,两个实施例之间可以互相参照,在此不再赘述。

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

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