一种分布式存储系统内核客户端的测试装置及设备的制作方法

文档序号:13512924阅读:188来源:国知局
一种分布式存储系统内核客户端的测试装置及设备的制作方法

本发明涉及测试领域,特别是涉及一种分布式存储系统内核客户端的测试装置及设备。



背景技术:

在大数据运算时代,海量应用所产生的数据多为非结构化数据,而且数据的数量级别在以指数的趋势增长。因此,在数据的传输和存储方面,传统的结构已经不能满足对于海量数据处理高效可靠的需求。而分布式存储产品的出现完美的解决了对于海量数据的存储以及传输等应用方面的问题,是应对大数据时代的有效方法。

分布式存储产品相当于将存储系统纳入服务器中,使服务器在担任传统计算角色的同时,也担任了数据存储的角色。分布式存储产品是通过客户端或文件协议的方式对外提供服务的,为了与服务器中的数据进行更高效的交互,企业往往会选用内核客户端对分布式存储产品进行一系列的数据操作,而不同版本的内核客户端与不同版本的分布式存储产品之间存在有一定的兼容性差异。为了保证存储产品与内核客户端之间能够更加紧密高效配合工作,进而确保用户的使用体验,因此需要进行上述两者之间的一系列测试。现有的测试方法需要人工对分布式存储系统中的节点进行不同版本的分布式存储产品的配置以及测试,但是这不但增加了测试所需的时间,降低了测试的效率,而且容易出现人为的疏漏以及错误。

由此可见,提供一种分布式存储系统内核客户端的测试装置,在提高测试效率的同时避免人为的疏漏以及错误,是本领域技术人员亟待解决的问题。



技术实现要素:

本发明的目的是提供一种分布式存储系统内核客户端的测试装置,取代了人为进行测试的方法,相对节省了测试时间,进而在一定程度上提高了测试效率,在开发以及优化方面提供了较大便利,同时也避免了人为的疏漏以及错误,相对提高了测试的可靠性。

为解决上述技术问题,本发明提供一种分布式存储系统内核客户端的测试装置,包括:

集群构建模块,用于部署分布式存储系统集群;其中,分布式存储系统集群中的集群节点之间能够相互访问;

产品安装模块,用于在集群节点中选择目标节点,并在目标集群节点中安装目标内核客户端以及规定版本的分布式存储产品;

测试执行模块,用于获取测试脚本,并执行测试脚本对目标内核客户端与分布式存储产品进行兼容性测试;其中测试脚本中的内容为目标内核客户端对分布式存储产品的操作规则。

优选的,该装置进一步包括:

测试结果处理模块,用于获取测试执行模块进行兼容性测试的结果以写入日志,并将日志进行存储。

优选的,该装置进一步包括:

任务队列模块,用于生成测试任务队列,并接收测试任务;

相应的,测试执行模块所执行的获取测试脚本,并执行测试脚本对目标内核客户端与分布式存储产品进行兼容性测试具体为:

根据测试任务的内容获取测试脚本,并执行测试脚本对目标内核客户端与分布式存储产品进行兼容性测试。

优选的,该装置进一步包括:

清理模块,用于清理目标内核客户端以及分布式存储产品。

优选的,产品安装模块执行的在目标集群节点中安装目标内核客户端以及规定版本的分布式存储产品具体为:

通过yum软件管理工具安装内核客户端以及分布式存储产品。

优选的,该装置进一步包括:

错误处理模块,用于记录测试过程中的错误情况,并将错误情况进行统计并提示错误信息。

优选的,该装置进一步包括:

日志分析装置,用于分析测试结果处理模块所生成的日志,并生成分析报告。

此外,本发明还提供一种分布式存储系统内核客户端的测试设备,其特征在于,包括处理器和存储器,处理器用于通过调用存储于存储器中的指令以实现以下步骤:

部署分布式存储系统集群;其中,分布式存储系统集群中的集群节点之间能够相互访问;

在集群节点中选择目标节点,并在目标集群节点中安装目标内核客户端以及规定版本的分布式存储产品;

获取测试脚本,并执行测试脚本对目标内核客户端与分布式存储产品进行兼容性测试;其中测试脚本中的内容为目标内核客户端对分布式存储产品的操作规则。

本发明所提供的分布式存储系统内核客户端的测试装置,通过自动化的方式部署分布式文件系统集群作为测试的环境基础,并根据用户需要将规定版本的分布式存储产品以及内核客户端安装在集群中的节点上,进而通过测试脚本中所规定的操作规则控制内核客户端对分布式存储产品执行相应功能操作,以实现内核客户端与所述分布式存储产品的兼容性测试。因此,本装置取代了人为进行测试的方法,相对节省了测试时间,进而在一定程度上提高了测试效率,在开发以及优化方面提供了较大便利,同时也避免了人为的疏漏以及错误,相对提高了测试的可靠性。此外,本发明还提供一种分布式存储系统内核客户端的测试设备,有益效果如上所述。

附图说明

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

图1为本发明实施例提供的一种分布式存储系统内核客户端的测试装置结构图;

图2为本发明实施例提供的另一种分布式存储系统内核客户端的测试装置结构图。

具体实施方式

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

本发明的核心是提供一种分布式存储系统内核客户端的测试装置,取代了人为进行测试的方法,相对节省了测试时间,进而在一定程度上提高了测试效率,在开发以及优化方面提供了较大便利,同时也避免了人为的疏漏以及错误,相对提高了测试的可靠性。此外,本发明的核心还提供一种分布式存储系统内核客户端的测试设备。

为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。

实施例一

图1为本发明实施例提供的一种分布式存储系统内核客户端的测试装置结构图。请参考图1,分布式存储系统内核客户端的测试装置,具体包括:

集群构建模块10,用于部署分布式存储系统集群。

其中,分布式存储系统集群中的集群节点之间能够相互访问;

需要说明的是,本模块的作用在于建立分布式存储系统的集群,可以理解的是,由于内核客户端与分布式存储产品均工作于分布式存储系统集群中,因此建立分布式存储系统集群是后续自动化测试步骤的基础。此外,为了分布式存储系统中具有分布式集群的安全特性,应保证分布式存储系统集群中的集群节点之间能够相互访问,以确保集群的整体可用性。使分布式存储系统集群中的集群节点能够相互访问,可以进行集群节点的ssh配置,使集群中的任意数据节点中均具有集群中其它数据节点的公钥,进而达到集群的数据节点之间无密码互访的目的。

产品安装模块11,用于在集群节点中选择目标节点,并在目标集群节点中安装目标内核客户端以及规定版本的分布式存储产品。

可以理解的是,在集群中往往存在有多个集群节点,而选择的目标节点的数量需根据实际情况进行设定,例如,在进行简单的兼容性等测试时,仅需要选取少量或仅选取一个目标节点用于模拟内核客户端对于分布式存储产品的操作;当需要测试在实际集群场景中内核客户端对于分布式存储产品的操作性能时,则需要选取大量的目标节点以获取更加符合实际使用情况的测试结果。另外,需要说明的是,内核客户端可以与分布式存储产品安装于同一集群节点中,也可以独立安装于集群节点中。由于内核客户端与分布式存储产品的版本众多,因此版本之间的组合情况也较为繁杂,本模块根据用户需求选取目标节点并安装不同的版本的内核客户端与分布式存储产品,因此相比于人工安装具有的更高效率,可以在很短的时间内完成不同版本的内核客户端与分布式存储产品之间的安装以及后续的测试。

测试执行模块12,用于获取测试脚本,并执行测试脚本对目标内核客户端与分布式存储产品进行兼容性测试。

其中测试脚本中的内容为目标内核客户端对分布式存储产品的操作规则。

需要说明的是,对于目标内核客户端与分布式存储产品的兼容性测试的本质是测试目标内核客户端能否正常与分布式存储产品交互以及分布式存储产品能否正常执行目标内核客户端的所有指令,因此测试脚本中的内容为目标内核客户端对分布式存储产品的操作规则。在执行测试脚本时,相当于根据逐步执行测试脚本所记录的操作步骤,并获得相应结果。可以理解的是,通过功能模块运行脚本进行测试,将完全按照既定的规则进行,相比于人工执行准确性更高,并且测试脚本执行效率更有保障。

本发明所提供的分布式存储系统内核客户端的测试装置,通过自动化的方式部署分布式文件系统集群作为测试的环境基础,并根据用户需要将规定版本的分布式存储产品以及内核客户端安装在集群中的节点上,进而通过测试脚本中所规定的操作规则控制内核客户端对分布式存储产品执行相应功能操作,以实现内核客户端与所述分布式存储产品的兼容性测试。因此,本装置取代了人为进行测试的方法,相对节省了测试时间,进而在一定程度上提高了测试效率,在开发以及优化方面提供了较大便利,同时也避免了人为的疏漏以及错误,相对提高了测试的可靠性。

实施例二

图2为本发明实施例提供的另一种分布式存储系统内核客户端的测试装置结构图。图2中模块10-13与图1相同,在此不再赘述。

如图2所示,作为一种优选的实施方式,该装置进一步包括:

测试结果处理模块20,用于获取测试执行模块12进行兼容性测试的结果以写入日志,并将日志进行存储。

可以理解的是,将测试结果作为日志进行存储有助于用户对测试结果的了解,进而在后续的分布式存储系统或内核客户端的优化时能够作为可靠的参考依据。本步骤在具体执行时,可以将所执行的每一个测试脚本所得到的测试结果作为日志上传到集群中指定节点的指定节点的指定路径下,进而用户可以直接访问该节点进行相关测试日志的查询。

如图2所示,作为一种优选的实施方式,该装置进一步包括:

任务队列模块21,用于生成测试任务队列,并接收测试任务;

相应的,测试执行模块12所执行的获取测试脚本,并执行测试脚本对目标内核客户端与分布式存储产品进行兼容性测试具体为:

根据测试任务的内容获取测试脚本,并执行测试脚本对目标内核客户端与分布式存储产品进行兼容性测试。

需要说明的是,生成测试任务队列的目的是为了批量处理用户所设定的测试任务,增加测试的整体吞吐量,相对提高了测试能力,相比于用户按照测试内容逐一进行测试,本模块的测试数度快,并且单位时间处理的任务量更大,测试效率相对更高。在实际的应用环境中,用户在控制节点上提交内核客户端的测试任务,测试任务被写入测试任务队列,该测试任务队列读取自身的测试任务并选择相应的脚本进行测试。此处所指的控制节点是能够对分布式存储系统集群中的节点进行控制的节点,可以属于分布式存储系统集群之外,另外,本发明中所提供的装置的所有模块均可以属于控制节点,但不作为具体限定。

如图2所示,作为一种优选的实施方式,该装置进一步包括:

清理模块22,用于清理目标内核客户端以及分布式存储产品。

可以理解的是,当测试结束后,需要保持分布式存储系统集群的初始化状态,使其能够再次被用于测试,因此在测试结束时可以将已经完成测试的内核客户端以及分布式存储产品从节点中清除,以便该节点安装其它版本的内核客户端以及分布式存储产品以再次进行测试。

此外,作为一种优选的实施方式,产品安装模块11执行的在目标集群节点中安装目标内核客户端以及规定版本的分布式存储产品具体为:

通过yum软件管理工具安装内核客户端以及分布式存储产品。

需要说明的是,yum软件管理工具是一个在fedora和redhat以及centos中的shell前端软件包管理器。基于rpm包管理,能够从指定的服务器自动下载rpm包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装,因此通过yum软件管理工具安装内核客户端以及分布式存储产品能够提高安装速度并且保证内核客户端以及分布式存储产品的可用性。

如图2所示,作为一种优选的实施方式,该装置进一步包括:

错误处理模块23,用于记录测试过程中的错误情况,并将错误情况进行统计并提示错误信息。

可以理解的是,在进行测试的过程中可能会由测试节点发生故障而引发测试错误的情况发生,因此当错误情况出现时,需要对测试过程中的错误情况进行记录并向用户进行错误提示,用户可以根据错误提示进行相应的故障排查与解决。

如图2所示,作为一种优选的实施方式,该装置进一步包括:

日志分析装置24,用于分析测试结果处理模块20所生成的日志,并生成分析报告。

将记录有测试结果的日志进行转化为分析报告能够更加清晰的向用户呈现测试的情况以及根据相关测试情况的分析,使用户能够更加清楚直观地了解不同版本的内核客户端与分布式存储产品之间的兼容性等情况。

实施例三

在上文中对于一种分布式存储系统内核客户端的测试装置的实施例进行了详细的描述,本发明还提供一种分布式存储系统内核客户端的测试设备,由于设备部分的实施例与装置部分的实施例相互对应,因此设备部分的实施例请参见装置部分的实施例的描述,这里暂不赘述。

本发明所提供的一种分布式存储系统内核客户端的测试设备,包括处理器和存储器,处理器用于通过调用存储于存储器中的指令以实现以下步骤:

部署分布式存储系统集群;其中,分布式存储系统集群中的集群节点之间能够相互访问;

在集群节点中选择目标节点,并在目标集群节点中安装目标内核客户端以及规定版本的分布式存储产品;

获取测试脚本,并执行测试脚本对目标内核客户端与分布式存储产品进行兼容性测试;其中测试脚本中的内容为目标内核客户端对分布式存储产品的操作规则。

本发明所提供的分布式存储系统内核客户端的测试设备,通过自动化的方式部署分布式文件系统集群作为测试的环境基础,并根据用户需要将规定版本的分布式存储产品以及内核客户端安装在集群中的节点上,进而通过测试脚本中所规定的操作规则控制内核客户端对分布式存储产品执行相应功能操作,以实现内核客户端与所述分布式存储产品的兼容性测试。因此,本设备取代了人为进行测试的方法,相对节省了测试时间,进而在一定程度上提高了测试效率,在开发以及优化方面提供了较大便利,同时也避免了人为的疏漏以及错误,相对提高了测试的可靠性。

以上对本发明所提供的一种分布式存储系统内核客户端的测试装置及设备进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

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