一种NAS集群故障切换性能的测试方法和系统与流程

文档序号:16207877发布日期:2018-12-08 07:20阅读:308来源:国知局
一种NAS集群故障切换性能的测试方法和系统与流程

本申请涉及存储系统性能测试技术领域,特别是涉及一种nas集群故障切换性能的测试方法和系统。

背景技术

随着存储技术的发展,存储系统逐渐增加新的功能,目前的网络存储系统除了常用的nas(networkattachedstorage:网络附属存储)和san(storageareanetwork,存储区域网络),还包括统一存储系统。所谓统一存储系统,是一个能在单一设备上运行管理文件和应用程序的存储系统,统一存储系统在单一存储平台上整合基于文件和基于块的访问,支持基于光纤通道的san、基于ip的san和nas。为确保统一存储系统的正常运行和使用,对统一存储系统下nas集群的高可用性,尤其是统一存储系统中单节点故障切换时的可靠性进行验证,是个重要问题。

目前,由于现有的存储系统上只能单独配置san或单独配置nas,对统一存储系统中nas集群故障切换性能的测试方法,主要是分别验证san故障切换性能和nas故障切换性能,然后将两个测试结果进行简单合并,来推测统一存储系统中nas集群故障切换性能。

然而,目前的测试方法,由于其所获取的nas集群故障切换性能测试结果,是根据san故障切换性能和nas故障切换性能的测试结果简单合并,并不是同时将nas和san两种功能集成后的测试,也就是说,目前的测试并不是针对统一存储系统而设定的,因此并不能准确地模拟nas集群故障切换的状态,从而导致目前的测试方法下,其测试结果的可靠性和准确性不够高。



技术实现要素:

本申请提供了一种nas集群故障切换性能的测试方法和系统,以解决现有技术中的测试结果的可靠性和准确性不够高的问题。

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

一种nas集群故障切换性能的测试方法,所述测试方法包括:

搭建统一存储系统的测试环境,所述统一存储系统包括:设置于存储端的冗余节点和故障节点;

在测试环境下模拟nas集群单节点故障,所述nas集群单节点故障包括:软件正常重启故障、节点掉电重启故障或节点异常宕机故障;

根据预设的nas集群故障切换性能标准,检测冗余节点是否全部接管故障节点的业务,并使主机端正常运行,所述故障节点的业务包括nas业务和san业务;

如果冗余节点全部接管故障节点的业务,并使主机端正常运行,判定nas集群故障切换性能测试合格。

可选地,所述预设的nas集群故障切换性能标准包括:冗余节点所备份的nas文件系统与故障节点的nas文件系统一致、域用户能够登录域、冗余节点和故障节点之间nas文件可共享,以及主机端对存储端可进行io访问。

可选地,根据预设的nas集群故障切换性能标准,检测冗余节点是否全部接管故障节点的业务,并使主机端正常运行的方法,包括:

发生软件正常重启故障时,判断冗余节点所备份的nas文件系统与故障节点的nas文件系统是否一致、域用户是否能够登录域、冗余节点和故障节点之间nas文件是否可共享,且主机端对存储端是否可进行io访问;

如果是,判定冗余节点全部接管故障节点的业务,并使主机端正常运行;

发生节点掉电重启故障时,判断冗余节点所备份的nas文件系统与故障节点的nas文件系统是否一致、域用户是否能够登录域、冗余节点和故障节点之间nas文件是否可共享,且主机端对存储端是否可进行io访问;

如果是,判定冗余节点全部接管故障节点的业务,并使主机端正常运行;

发生节点异常宕机故障时,判断冗余节点所备份的nas文件系统与故障节点的nas文件系统是否一致、域用户是否能够登录域、冗余节点和故障节点之间nas文件是否可共享,且主机端对存储端是否可进行io访问;

如果是,判定冗余节点全部接管故障节点的业务,并使主机端正常运行。

可选地,所述搭建统一存储系统的测试环境的方法,包括:

根据所获取的安装指令,在存储设备上灌装带有nas功能的统一存储系统,并开启license;

根据所获取的创建指令,分别在冗余节点和故障节点创建存储池,并在存储池中创建任一卷和任一nas文件系统;

对冗余节点中的nas文件系统和故障节点中的nas文件系统创建cifs共享,在主机端访问cifs共享;

通过fc,将冗余节点中的卷和故障节点中的卷映射到同一个主机端,在主机端利用iometer读写冗余节点中的卷和故障节点中的卷。

可选地,所述根据所获取的安装指令,在存储设备上灌装带有nas功能的统一存储系统,并开启license的方法,包括:

根据灌装指令,在存储设备上灌装带有nas功能的统一存储系统;

根据启动指令,利用license激活统一存储系统的nas功能,并开启统一存储系统的cifs服务;

根据配置指令,在存储端配置nas端口的ip。

可选地,对冗余节点中的nas文件系统和故障节点中的nas文件系统创建cifs共享,在主机端访问cifs共享之前,所述方法还包括:

将故障节点和冗余节点添加到主机端所在的域中。

一种nas集群故障切换性能的测试系统,所述测试系统包括:

测试环境搭建模块,用于搭建统一存储系统的测试环境,所述统一存储系统包括:设置于存储端的冗余节点和故障节点;

故障模块,用于在测试环境下模拟nas集群单节点故障,所述nas集群单节点故障包括:软件正常重启故障、节点掉电重启故障或节点异常宕机故障;

检测模块,用于根据预设的nas集群故障切换性能标准,检测冗余节点是否全部接管故障节点的业务,并使主机端正常运行,所述故障节点的业务包括nas业务和san业务;

判断模块,用于当冗余节点全部接管故障节点的业务,并使主机端正常运行,判定nas集群故障切换性能测试合格;否则判定nas集群故障切换性能测试不合格。

可选地,所述预设的nas集群故障切换性能标准包括:冗余节点所备份的nas文件系统与故障节点的nas文件系统一致、域用户能够登录域、冗余节点和故障节点之间nas文件可共享,以及主机端对存储端可进行io访问。

可选地,所述检测模块包括:

nas文件系统检测单元,用于发生软件正常重启故障、节点掉电重启故障或节点异常宕机故障时,检测冗余节点所备份的nas文件系统与故障节点的nas文件系统是否一致;

域用户检测单元,用于发生软件正常重启故障、节点掉电重启故障或节点异常宕机故障时,检测域用户是否能够登录域;

共享性检测单元,用于发生软件正常重启故障、节点掉电重启故障或节点异常宕机故障时,检测冗余节点和故障节点之间nas文件是否可共享;

io访问检测单元,用于发生软件正常重启故障、节点掉电重启故障或节点异常宕机故障时,检测主机端对存储端是否可进行io访问。

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

本申请提供一种nas集群故障切换性能的测试方法,该方法首先搭建统一存储系统的测试环境,其次在测试环境下模拟nas集群单节点故障:软件正常重启故障、节点掉电重启故障或节点异常宕机故障,然后根据预设的nas集群故障切换性能标准,检测冗余节点是否能全部接管故障节点的业务并使主机端正常运行,当冗余节点是否能全部接管故障节点的业务并使主机端正常运行时,判定nas集群故障切换性能测试合格,否则判定nas集群故障切换性能测试不合格。本申请所模拟的nas集群单节点故障包括但不限于软件正常重启故障、节点掉电重启故障或节点异常宕机故障,能够涵盖常见的各种故障,有利于全面验证nas集群故障切换性能,从而有利于提高测试结果的可靠性。另外,本申请中预设的nas集群故障切换性能标准包括冗余节点所备份的nas文件系统与故障节点的nas文件系统一致、域用户能够登录域、冗余节点和故障节点之间nas文件可共享,以及主机端对存储端可进行io访问,只有满足这些性能标准,才能判定冗余节点全部接管故障节点的业务,并使主机端正常运行,从而确定测试合格。这些性能标准从nas文件系统、域用户、共享性以及io访问各方面综合考察nas集群故障切换性能,有利于提高测试结果的准确性。

本申请还提供一种nas集群故障切换性能的测试系统,该系统包括测试环境搭建模块、故障模块、检测模块和判定模块。通过测试环境搭建模块创建统一存储系统的测试环境;通过故障模块在测试环境下模拟nas集群单节点的软件正常重启故障、节点掉电重启故障或节点异常宕机故障;利用检测模块根据预设的nas集群故障切换性能标准,检测冗余节点是否全部接管故障节点的业务,并使主机端正常运行;最后通过判断模块,根据冗余节点是否全部接管故障节点的业务,并使主机端正常运行,判断nas集群故障切换性能是否测试合格。本申请中通过测试环境搭建模块,能够搭建如下的测试环境:在存储设备上灌装带有nas功能的统一存储系统,并开启license;分别在冗余节点和故障节点创建存储池,并在存储池中创建任一卷和任一nas文件系统;对冗余节点中的nas文件系统和故障节点中的nas文件系统创建cifs共享,在主机端能够访问cifs共享;通过fc将冗余节点中的卷和故障节点中的卷映射到同一个主机端,在主机端利用iometer读写冗余节点中的卷和故障节点中的卷。因此,采用本申请中的测试环境搭建模块所创建的测试环境能够确保后续模拟故障测试的顺利进行,有利于为测试判断提供较好的对比环境,因此,有利于提高测试的可靠性和准确性。另外,本申请所模拟的nas集群单节点故障包括但不限于软件正常重启故障、节点掉电重启故障或节点异常宕机故障,能够涵盖常见的各种故障,有利于全面验证nas集群故障切换性能,从而有利于提高测试结果的可靠性。此外,本申请中预设的nas集群故障切换性能标准包括冗余节点所备份的nas文件系统与故障节点的nas文件系统一致、域用户能够登录域、冗余节点和故障节点之间nas文件可共享,以及主机端对存储端可进行io访问,只有满足这些性能标准,才能判定冗余节点全部接管故障节点的业务,并使主机端正常运行,从而确定测试合格。这些性能标准从nas文件系统、域用户、共享性以及io访问各方面综合考察nas集群故障切换性能,有利于提高测试结果的准确性。

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

附图说明

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

图1为本申请实施例所提供的一种nas集群故障切换性能的测试方法的流程示意图;

图2为本申请实施例所提供的一种nas集群故障切换性能的测试系统的结构示意图。

具体实施方式

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

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

实施例一

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

s1:搭建统一存储系统的测试环境。

其中,统一存储系统部署在存储端的冗余节点和故障节点上。本实施例中冗余节点和故障节点互为对端节点,需要针对每个节点分别进行nas集群故障切换性能测试。

具体地,本申请中搭建统一存储系统的测试环境的方法,包括:

s11:根据所获取的安装指令,在存储设备上灌装带有nas功能的统一存储系统,并开启license。

执行测试前,首先要在统一存储设备上灌装带有nas功能的统一存储系统,也就是mcs(multicontrollersystem,多控制器存储系统)软件系统,确保集群正常创建并能够正常使用,而无报错信息。

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

s111:根据灌装指令,在存储设备上灌装带有nas功能的统一存储系统。

s112:根据启动指令,利用license激活统一存储系统的nas功能,并开启统一存储系统的cifs服务。

可以采用统一存储系统中的命令来实现,例如可以采用如下脚本来实现:

mtinqlsservicenodes

panel_namecluster_idcluster_namenode_idnode_namerelationnodestatuserror_date

01-20000000035627034cluster_100.2.82.1732node2localactive

01-10000000035627034cluster_100.2.82.1731node1partneractive

s113:根据配置指令,在存储端配置nas端口的ip。

由于本实施例中有两个节点:冗余节点和故障节点,此处需要对两个节点各配置一个ip。例如:配置node1节点port1端口的nas服务ip100.2.102.213,子网掩码255.255.255.0,网关100.2.102.1,可采用如下代码:

>cfgnasportip-nodenode1-port1-ip100.2.102.213-mask255.255.255.0-gw100.2.102.1。

s12:根据所获取的创建指令,分别在冗余节点和故障节点创建存储池,并在存储池中创建任一卷和任一nas文件系统。

本实施例中,在冗余节点的存储池中所创建的卷以及在故障节点的存储池中所创建的卷,是为了进行san应用,所创建的卷称为普通卷。而分别在冗余节点和故障节点的存储池中所创建的nas文件系统,为统一存储系统中所增加的功能,所创建的nas文件系统可以理解为特殊的卷。

在存储端创建nas文件系统的方法,如:在主节点palmnas1的存储池pool-lsl中,创建一个size大小为5000mb的文件系统fsname01,可以采用如下代码:

>addfs-namefsname01-poolpool-lsl-size5000-nodepalmnas1。

s13:对冗余节点中的nas文件系统和故障节点中的nas文件系统创建cifs共享,在主机端访问cifs共享。

本实施例中主机端可以采用一linux服务器。本实施例采用域用户创建cifs共享,也就是采用域用户作为访问cifs共享的用户权限。cifs共享也称cifs共享驱动器,在主机端访问cifs共享,例如:在主机端向cifs共享驱动器中拷贝文件。需要注意的是,为验证模拟故障时,冗余节点所拷贝数据和故障节点数据的一致性,此处向cifs共享驱动器中所拷贝的文件大小,要确保拷贝文件的时长大于存储端执行故障操作的时长。为进一步方便地验证模拟故障时数据的一致性,优选采用一个大文件,而不是多个小文件,从而有利于中间拷贝操作不中断,进而提高测试结果的可靠性。

本实施例中对冗余节点和故障节点中的nas文件系统创建cifs共享的方法为:添加共享路径为/fs/fssystem1/cifs1的cifs共享,可以采用如下代码:

>addcifs-namecifs_share1-path/fs/fsystem1/cifs1-oplocksoff;

采用域用户作为访问cifs共享的用户权限的方法为:修改cifs_share1共享配置,用户administrator权限rw,可以采用如下代码:

>chcifsuser-namecifs_share1-rightslu:administrator:rw。

s14:通过fc,将冗余节点中的卷和故障节点中的卷映射到同一个主机端,在主机端利用iometer读写冗余节点中的卷和故障节点中的卷。

通过步骤s11-s14,所搭建的测试环境,能够使主机端可正常访问cifs共享,且在主机端能够正常读写冗余节点和故障节点中的卷,从而能够确保后续模拟故障测试的顺利进行,有利于为测试判断提供较好的对比环境,因此,有利于提高测试的可靠性和准确性。

进一步地,步骤s13之前,本实施例中的测试方法还包括:将故障节点和冗余节点添加到主机端所在的域中。从而使当前的存储和主机端处于同一个域中,有利于后续执行模拟故障操作时,能够及时发现当前的存储,从而快速实现故障切换。

继续参见图1可知,搭建完毕测试环境后,执行步骤s2:在测试环境下模拟nas集群单节点故障,其中nas集群单节点故障包括:软件正常重启故障、节点掉电重启故障或节点异常宕机故障。

本实施例中模拟客户应用场景中可能出现的各种nas集群单节点故障,包括但不限于软件正常重启故障、节点掉电重启故障或节点异常宕机故障。

具体地,使用mcs存储系统内部的mtopstopnode–reboot命令使单节点执行冷重启;mtopstopnode–warmstart命令使单节点执行热重启;采用mtopstartservice–f命令使单节点设置为服务模式,服务模式也是常用的单节点故障修复模式;将配置节点拔出机框并等待5分钟后将其重新插入机框,从而模拟节点异常宕机故障。

模拟故障后,执行步骤s3:根据预设的nas集群故障切换性能标准,检测冗余节点是否全部接管故障节点的业务,并使主机端正常运行,其中故障节点的业务包括nas业务和san业务。

本实施例中预设的nas集群故障切换性能标准包括:冗余节点所备份的nas文件系统与故障节点的nas文件系统一致、域用户能够登录域、冗余节点和故障节点之间nas文件可共享,以及主机端对存储端可进行io访问。只有同时满足这些性能标准,才能判定冗余节点全部接管故障节点的业务,并使主机端正常运行,从而确定测试合格。这些性能标准从nas文件系统、域用户、共享性以及io访问各方面综合考察nas集群故障切换性能,有利于提高测试结果的准确性。

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

s31:发生软件正常重启故障时,判断冗余节点所备份的nas文件系统与故障节点的nas文件系统是否一致、域用户是否能够登录域、冗余节点和故障节点之间nas文件是否可共享,且主机端对存储端是否可进行io访问。

s32:如果是,判定冗余节点全部接管故障节点的业务,并使主机端正常运行。

否则,判定冗余节点不能全部接管故障节点的业务,并使主机端正常运行。

s33:发生节点掉电重启故障时,判断冗余节点所备份的nas文件系统与故障节点的nas文件系统是否一致、域用户是否能够登录域、冗余节点和故障节点之间nas文件是否可共享,且主机端对存储端是否可进行io访问。

s34:如果是,判定冗余节点全部接管故障节点的业务,并使主机端正常运行。

否则,判定冗余节点不能全部接管故障节点的业务,并使主机端正常运行。

s35:发生节点异常宕机故障时,判断冗余节点所备份的nas文件系统与故障节点的nas文件系统是否一致、域用户是否能够登录域、冗余节点和故障节点之间nas文件是否可共享,且主机端对存储端是否可进行io访问。

s36:如果是,判定冗余节点全部接管故障节点的业务,并使主机端正常运行。

否则,判定冗余节点不能全部接管故障节点的业务,并使主机端正常运行。

s4:如果冗余节点全部接管故障节点的业务,并使主机端正常运行,判定nas集群故障切换性能测试合格。

由以上步骤s3和s4可知,在模拟步骤s2中的各种故障的过程中,持续观察整个系统中冗余节点的状态,同时ssh进入nas设置的ip,即:存储系统下的虚拟机ip,也就是本实施例中步骤s113中在存储端配置的nas端口的ip,使用ctdbstatus工具检验重启节点完成后,统一存储系统是否恢复为正常的状态。其中,nas为统一存储系统中内嵌的虚拟机,ssh进入nas设置的ip,也就是ssh连接到nas的ip。

在nas集群中从冗余节点查看故障节点的状态变化,可以采用ctdbstatus命令来实现。

通过利用以上命令编写代码,验证冗余节点和故障节点的pnn(probabilisticneuralnetworks,概率神经网络)状态是否为ok,ok。如果冗余节点和故障节点的pnn状态是否为ok,ok,表明两个节点之间可以互通,即有心跳信号,因此当统一存储系统中有一个节点进入故障状态后,该故障节点中的资源会成功地被冗余节点接管,从而确保主机端的san业务和nas业务不中断,判定测试合格。

实施例二

在图1所示实施例的基础之上参见图2,图2为本申请实施例所提供的一种nas集群故障切换性能的测试系统的结构示意图。由图2可知,本申请中nas集群故障切换性能的测试系统主要包括测试环境搭建模块、故障模块、检测模块和判定模块四个部分。

其中,测试环境搭建模块用于搭建统一存储系统的测试环境,统一存储系统部署在存储端的冗余节点和故障节点上;故障模块用于在测试环境下模拟nas集群单节点故障,其中nas集群单节点故障包括:软件正常重启故障、节点掉电重启故障或节点异常宕机故障;检测模块用于根据预设的nas集群故障切换性能标准,检测冗余节点是否全部接管故障节点的业务,并使主机端正常运行,其中故障节点的业务包括nas业务和san业务;判断模块用于当冗余节点全部接管故障节点的业务,并使主机端正常运行,判定nas集群故障切换性能测试合格,否则判定nas集群故障切换性能测试不合格。

本申请中预设的nas集群故障切换性能标准包括:冗余节点所备份的nas文件系统与故障节点的nas文件系统一致、域用户能够登录域、冗余节点和故障节点之间nas文件可共享,以及主机端对存储端可进行io访问。

进一步地,本实施例中检测模块包括:nas文件系统检测单元、域用户检测单元、共享性检测单元和io访问检测单元。nas文件系统检测单元用于发生软件正常重启故障、节点掉电重启故障或节点异常宕机故障时,检测冗余节点所备份的nas文件系统与故障节点的nas文件系统是否一致;域用户检测单元用于发生软件正常重启故障、节点掉电重启故障或节点异常宕机故障时,检测域用户是否能够登录域;共享性检测单元用于发生软件正常重启故障、节点掉电重启故障或节点异常宕机故障时,检测冗余节点和故障节点之间nas文件是否可共享;io访问检测单元用于发生软件正常重启故障、节点掉电重启故障或节点异常宕机故障时,检测主机端对存储端是否可进行io访问。

本实施例中nas集群故障切换性能的测试系统的工作原理和工作方法,在图1所示的实施例中已经详细阐述,在此不再赘述。

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

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