System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及自动化测试领域,尤其涉及一种分布式存储系统的自动化测试方法、设备及介质。
技术介绍
1、针对云计算场景的分布式存储系统具备多虚机客户、多写、多读的特性,在生产交付前以及每次产品迭代后,一般会进行基准性能测试。
2、现有的分布式存储系统在测试时,通常需要测试人员在测试对象的物理节点上批量生成虚拟机,然后手动执行fio测试或者利用其他性能压测工具去跑多种io模型的测试。这种手动测试的方式不仅耗时长,测试效率低,还容易导致人为失误,降低了测试的准确性。
3、因此,需要一种能够实现自动化测试,提高测试效率和准确性的分布式存储系统的自动化测试方案。
技术实现思路
1、本申请提供一种分布式存储系统的自动化测试方法、设备及介质,用以解决现有的分布式存储系统测试效率低、准确性差的技术问题。
2、第一方面,本申请提供一种分布式存储系统的自动化测试方法,包括:
3、获取用户输入的测试配置文件,所述测试配置文件包括集群部署信息和客户端部署信息;
4、根据所述测试配置文件中的集群部署信息和客户端部署信息,部署分布式存储系统的测试环境,并生成各客户端节点对应的虚拟机;
5、对于每一客户端节点,对所述客户端节点对应的虚拟机进行性能测试,以得到所述客户端节点的测试结果文件;
6、根据每一客户端节点的测试结果文件,确定所述分布式存储系统的测试结果。
7、在一种可能的实施方式中,所述根据所述测试配置文件中的集群
8、根据所述集群部署信息,确定测试环境中的服务端节点,并根据所述客户端部署信息,确定测试环境中的客户端节点;
9、将测试用存储安装包发送至每一服务端节点和每一客户端节点,以使每一服务端节点和每一客户端节点执行所述存储安装包,完成存储集群的部署;
10、对存储集群中的各客户端节点进行测试,以确定所述存储集群能够正常运行;
11、根据所述客户端部署信息,创建所述存储集群中每一客户端节点对应的虚拟机;
12、其中,所述集群部署信息包括服务端节点个数、服务端节点ip地址、各服务端节点的登录信息以及硬件信息;所述客户端部署信息包括客户端节点个数、客户端节点ip地址、各客户端节点的登录信息以及硬件信息、各客户端节点的虚拟机部署信息。
13、在一种可能的实施方式中,所述对存储集群中的各客户端节点进行测试,以确定所述存储集群能够正常运行,具体包括:
14、根据各客户端节点的登录信息以及硬件信息,对所述存储集群中的各客户端节点进行遍历,以确定:
15、各客户端节点中是否存在集群配置文件,如果不存在,则根据所述存储安装包生成集群配置文件;
16、各客户端节点中的加速数据库存储引擎代理是否运行,如果不运行,则启动所述加速数据库存储引擎代理;
17、各客户端节点中的虚拟主机系统是否运行,如果不运行,则启动所述虚拟主机系统;
18、各客户端节点中是否配置虚拟化管理软件,如果未配置,则配置所述虚拟化管理软件。
19、在一种可能的实施方式中,所述根据所述客户端部署信息,创建所述存储集群中每一客户端节点对应的虚拟机,具体包括:
20、根据各客户端节点的虚拟机部署信息,确定每一客户端节点对应的虚拟机数目、每一虚拟机的卷数以及每一虚拟机的cpu信息和内存信息;
21、根据每一客户端节点对应的虚拟机数目以及每一虚拟机的卷数,确定服务端节点的总卷数,并在所述服务端节点根据所述总卷数创建卷;
22、对于每一客户端节点,根据所述客户端节点对应的各虚拟机的卷数在所述客户端节点挂载卷;根据所述客户端节点对应的虚拟机数目,建立虚拟网络端口,并在每一所述虚拟网络端口创建对应的虚拟机;记录各虚拟机的属性信息,所述属性信息包括虚拟机的编号信息以及ip地址;
23、根据每一客户端节点各自对应的虚拟机的属性信息,创建客户端-虚拟机列表。
24、在一种可能的实施方式中,所述对所述客户端节点对应的虚拟机进行性能测试,以得到所述客户端节点的测试结果文件,具体包括:
25、运行所述客户端节点对应的各虚拟机中的监控脚本,以获取各虚拟机的监控结果,所述监控结果包括性能测试中的io信息、cpu使用信息和内存使用信息;
26、根据io模块配置文件,对所述客户端节点对应的各虚拟机进行fio测试,以获取各虚拟机的fio测试结果;
27、根据各虚拟机的监控结果以及fio测试结果,生成所述客户端节点的测试结果文件。
28、在一种可能的实施方式中,所述根据io模块配置文件,对所述客户端节点对应的各虚拟机进行fio测试,以获取各虚拟机的fio测试结果,具体包括:
29、根据所述io模块配置文件中各io模块的预设测试顺序,进行fio测试;
30、对于所述io模块配置文件中的每一io模块,
31、根据所述io模块对所述客户端节点对应的各虚拟机下的各个卷,同时执行所述io模块的fio命令,进行fio测试;
32、以预设时长为间隔,检测各虚拟机执行所述io模块的fio测试是否全部结束;
33、如果全部结束,则根据所述预设测试顺序进入下一io模块的fio测试,直至所述io模块配置文件中的每一io模块全部完成fio测试;
34、根据各虚拟机执行每一io模块的fio测试结果,确定各虚拟机的fio测试结果。
35、在一种可能的实施方式中,在所述根据每一客户端节点的测试结果文件,确定所述分布式存储系统的测试结果之后,还包括:
36、摧毁各客户端节点对应的虚拟机,并清理所述分布式存储系统的测试环境。
37、第二方面,本申请提供一种电子设备,包括:
38、获取模块,用于获取用户输入的测试配置文件,所述测试配置文件包括集群部署信息和客户端部署信息;
39、处理模块,用于根据所述测试配置文件中的集群部署信息和客户端部署信息,部署分布式存储系统的测试环境,并生成各客户端节点对应的虚拟机;对于每一客户端节点,对所述客户端节点对应的虚拟机进行性能测试,以得到所述客户端节点的测试结果文件;根据每一客户端节点的测试结果文件,确定所述分布式存储系统的测试结果。
40、第三方面,本申请提供另一种电子设备,包括:处理器,以及与所述处理器通信连接的存储器;
41、所述存储器存储计算机执行指令;
42、所述处理器执行所述存储器存储的计算机执行指令,以实现上述的方法。
43、第四方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现上述的方法。
44、第五方面,本文档来自技高网...
【技术保护点】
1.一种分布式存储系统的自动化测试方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述根据所述测试配置文件中的集群部署信息和客户端部署信息,部署分布式存储系统的测试环境,并生成各客户端节点对应的虚拟机,具体包括:
3.根据权利要求2所述的方法,其特征在于,所述对存储集群中的各客户端节点进行测试,以确定所述存储集群能够正常运行,具体包括:
4.根据权利要求3所述的方法,其特征在于,所述根据所述客户端部署信息,创建所述存储集群中每一客户端节点对应的虚拟机,具体包括:
5.根据权利要求1-4中任一项所述的方法,其特征在于,所述对所述客户端节点对应的虚拟机进行性能测试,以得到所述客户端节点的测试结果文件,具体包括:
6.根据权利要求5所述的方法,其特征在于,所述根据IO模块配置文件,对所述客户端节点对应的各虚拟机进行FIO测试,以获取各虚拟机的FIO测试结果,具体包括:
7.根据权利要求6所述的方法,其特征在于,在所述根据每一客户端节点的测试结果文件,确定所述分布式存储系统的测试结果之后,还包括:
8.一种电子设备,其特征在于,包括:
9.一种电子设备,其特征在于,包括处理器,以及与所述处理器通信连接的存储器;
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如权利要求1至7中任一项所述的方法。
...【技术特征摘要】
1.一种分布式存储系统的自动化测试方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述根据所述测试配置文件中的集群部署信息和客户端部署信息,部署分布式存储系统的测试环境,并生成各客户端节点对应的虚拟机,具体包括:
3.根据权利要求2所述的方法,其特征在于,所述对存储集群中的各客户端节点进行测试,以确定所述存储集群能够正常运行,具体包括:
4.根据权利要求3所述的方法,其特征在于,所述根据所述客户端部署信息,创建所述存储集群中每一客户端节点对应的虚拟机,具体包括:
5.根据权利要求1-4中任一项所述的方法,其特征在于,所述对所述客户端节点对应的虚拟机进行性能测试,以得到所述客户端节点...
【专利技术属性】
技术研发人员:郑文俊,
申请(专利权)人:中国联合网络通信集团有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。