一种RDMA模式下Ceph存储集群测试方法及系统与流程

文档序号:12463922阅读:406来源:国知局
一种RDMA模式下Ceph存储集群测试方法及系统与流程

本发明涉及集群测试技术领域,特别涉及一种RDMA模式下Ceph存储集群测试方法及系统。



背景技术:

当前,在对Ceph存储集群进行性能测试的时候,通常存在两种常规测试手段。其中一种是,在测试每个测试用例之前,根据测试用例重新编译可执行程序;另外一种是,根据测试用例设计测试程序的参数类型,通过参数传入来对每个测试用例进行测试。这两种方法存在一些缺陷,其共同的缺陷在于对每个测试用例进行测试时,都需要重新启动测试程序。这样不能测试出Ceph存储集群系统对压力改变的敏感程度,系统的抗压能力也不能测试到。

综上所述可以看出,如何测试出Ceph存储集群的抗压能力以及对压力改变的敏感程度是目前有待解决的问题。



技术实现要素:

有鉴于此,本发明的目的在于提供一种RDMA模式下Ceph存储集群测试方法及系统,能够测试出Ceph存储集群的抗压能力以及对压力改变的敏感程度。其具体方案如下:

一种RDMA模式下Ceph存储集群测试方法,包括:

预先创建目标测试程序;其中,所述目标测试程序为包含信号处理函数的测试程序;所述信号处理函数为根据预设的对应关系创建的用于将接收到的信号转换成相应被测参数的函数,所述对应关系为预先确定的信号与被测参数之间的对应关系;

向所述信号处理函数传送第一信号,得到由所述信号处理函数输出的第一被测参数,并利用所述第一被测参数,控制所述目标测试程序对Ceph存储集群进行相应测试;

在利用所述第一被测参数进行相应测试的过程中,若需要将所述目标测试程序中的被测参数由所述第一被测参数更改为第二被测参数,则根据所述对应关系,确定与所述第二被测参数对应的第二信号;

向所述信号处理函数传送所述第二信号,得到由所述信号处理函数输出的与所述第二信号对应的被测参数,然后利用该被测参数,控制所述目标测试程序对所述Ceph存储集群进行相应测试。

可选的,任一被测参数的参数类型均为时间参数。

可选的,所述目标测试程序为xio_client程序。

可选的,向所述信号处理函数传送任一信号的过程,包括:

利用kill命令、pkill命令或killall命令,向所述信号处理函数发送该信号。

可选的,所述预先创建目标测试程序的过程之后,还包括:

确定本轮测试所对应的所有被测参数,得到被测参数集;

根据所述对应关系,确定出与所述被测参数集中的每个被测参数对应的信号,得到相应的信号集;

将所述信号集中的每个信号依次传送至所述信号处理函数,以依次启动与每个信号对应的测试过程。

可选的,在所述目标测试程序对所述Ceph存储集群进行的每次测试过程中,均还包括:

记录相应的数据写入速率、内存压力以及CPU占用率,得到与本次测试对应的性能表现参数;

利用本次测试对应的性能表现参数,确定出与本次测试对应的被测参数的性能指数。

可选的,所述方法,还包括:

从本轮测试所对应的所有被测参数中筛选出性能指数最高的被测参数作为所述Ceph存储集群的性能最优参数。

本发明还公开了一种RDMA模式下Ceph存储集群测试系统,包括:

测试程序创建模块,用于预先创建目标测试程序;其中,所述目标测试程序为包含信号处理函数的测试程序;所述信号处理函数为根据预设的对应关系创建的用于将接收到的信号转换成相应被测参数的函数,所述对应关系为预先确定的信号与被测参数之间的对应关系;

第一测试模块,用于向所述信号处理函数传送第一信号,得到由所述信号处理函数输出的第一被测参数,并利用所述第一被测参数,控制所述目标测试程序对Ceph存储集群进行相应测试;

信号确定模块,用于在所述第一测试模块利用所述第一被测参数进行相应测试的过程中,若需要将所述目标测试程序中的被测参数由所述第一被测参数更改为第二被测参数,则根据所述对应关系,确定与所述第二被测参数对应的第二信号;

第二测试模块,用于向所述信号处理函数传送所述第二信号,得到由所述信号处理函数输出的与所述第二信号对应的被测参数,然后利用该被测参数,控制所述目标测试程序对所述Ceph存储集群进行相应测试。

可选的,任一被测参数的参数类型均为时间参数。

可选的,所述系统,还包括:

参数集确定模块,用于确定本轮测试所对应的所有被测参数,得到被测参数集;

信号集确定模块,用于根据所述对应关系,确定出与所述被测参数集中的每个被测参数对应的信号,得到相应的信号集;

压力测试模块,用于将所述信号集中的每个信号依次传送至所述信号处理函数,以依次启动与每个信号对应的测试过程。

本发明中,RDMA模式下Ceph存储集群测试方法,包括:预先创建目标测试程序;其中,目标测试程序为包含信号处理函数的测试程序;信号处理函数为根据预设的对应关系创建的用于将接收到的信号转换成相应被测参数的函数,预设的对应关系为预先确定的信号与被测参数之间的对应关系;向信号处理函数传送第一信号,得到由信号处理函数输出的第一被测参数,并利用第一被测参数,控制目标测试程序对Ceph存储集群进行相应测试;在利用第一被测参数进行相应测试的过程中,若需要将目标测试程序中的被测参数由第一被测参数更改为第二被测参数,则根据上述对应关系,确定与第二被测参数对应的第二信号;向信号处理函数传送第二信号,得到由信号处理函数输出的与第二信号对应的被测参数,然后利用该被测参数,控制目标测试程序对Ceph存储集群进行相应测试。

可见,本发明中的Ceph存储集群测试方法是在RDMA模式下展开的,该方法中,在正式测试之前,预先创建了包含信号处理函数的目标测试程序,其中,上述信号处理函数可将接收到的信号转换成相应被测参数的函数;在进行测试时,将会把相应的信号发送至上述信号处理函数,然后利用信号处理函数对接收到的信号进行转化后得到的被测参数,控制目标测试程序对Ceph存储集群展开相应的测试;而在利用某个被测参数进行相应测试的过程中,如果这时候需要更换被测参数,本发明只需向位于目标测试程序中的信号处理函数传送相应的信号,便可实现对当前被测参数的更新,而无需重新启动测试程序,从而便于测试出Ceph存储集群的抗压能力以及对压力改变的敏感程度。

附图说明

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

图1为本发明实施例公开的一种Ceph存储集群测试方法流程图;

图2为本发明实施例公开的一种Ceph存储集群测试系统结构示意图。

具体实施方式

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

本发明实施例公开了一种RDMA模式下Ceph存储集群测试方法,参见图1所示,该方法包括:

步骤S11:预先创建目标测试程序;其中,上述目标测试程序为包含信号处理函数的测试程序;上述信号处理函数为根据预设的对应关系创建的用于将接收到的信号转换成相应被测参数的函数,上述预设的对应关系为预先确定的信号与被测参数之间的对应关系。

需要说明的是,本实施例中的Ceph存储集群测试方法是在RDMA模式(RDMA,即Remote Direct Memory Access)下展开的。本实施例在Ceph存储集群中使用了基于accelio类库的应用层xio封装,这种应用层xio封装对数据写入频率有要求。本实施例中,任一被测参数的参数类型均为时间参数。其次,上述目标测试程序具体可以为xio_client程序。

可以理解的是,本实施例是在正式对Ceph存储集群展开测试之前,先创建出上述目标测试程序。如果在对Ceph存储集群展开测试之前,上述目标测试程序已经创建完毕,则可以直接使用该目标测试程序即可。

本实施例中,不同的信号对应于不同的被测参数,当信号发生变化时,相应的被测参数也会随着发生相应的变化。

步骤S12:向信号处理函数传送第一信号,得到由信号处理函数输出的第一被测参数,并利用第一被测参数,控制目标测试程序对Ceph存储集群进行相应测试。

也即,本实施例在进入正式测试阶段时,将会向位于上述目标测试程序的信号处理函数发送上述第一信号,其中,上述第一信号是指上述预设的对应关系中所记录的所有信号中的任一信号。当位于上述目标测试程序的信号处理函数接收到上述第一信号之后,将会把该第一信号转换成与第一信号对应的被测参数,也即得到上述第一被测参数,接着上述目标测试程序便可根据上述第一被测参数展开相应的测试。

步骤S13:在利用第一被测参数进行相应测试的过程中,若需要将目标测试程序中的被测参数由第一被测参数更改为第二被测参数,则根据上述对应关系,确定与第二被测参数对应的第二信号。

可以理解的是,上述第二信号是指上述预设的对应关系中所记录的所有信号中的任一信号,并且与上述第一信号互异。

步骤S14:向信号处理函数传送第二信号,得到由信号处理函数输出的与第二信号对应的被测参数,然后利用该被测参数,控制目标测试程序对Ceph存储集群进行相应测试。

也即,向位于上述目标测试程序中的信号处理函数发送上述第二信号,然后信号处理函数将会输出与上述第二信号对应的被测参数,也即输出上述第二被测参数,这样,上述目标测试程序在没有重启的情况下,获得了新的被测参数,然后根据这个新的被测参数对Ceph存储集群进行相应测试。同理,如果在利用上述第二被测参数进行相应测试的过程中,若需要将目标测试程序中的被测参数由当前的第二被测参数更改为第三被测参数,则可以向上述目标测试程序中的信号处理函数传送与上述第三被测参数对应的第三信号,以使目标测试程序在没有重启的情况下再次获取到新的被测参数,从而不间断地展开新的测试。

另外,需要说明的是,本实施例中,向信号处理函数传送任一信号的过程,包括:利用kill命令、pkill命令或killall命令,向信号处理函数发送该信号。也即,本实施例具体可以利用kill命令、pkill命令或killall命令,向位于上述目标测试程序中的信号处理函数传送信号。

可见,本发明实施例中的Ceph存储集群测试方法是在RDMA模式下展开的,该方法中,在正式测试之前,预先创建了包含信号处理函数的目标测试程序,其中,上述信号处理函数可将接收到的信号转换成相应被测参数的函数;在进行测试时,将会把相应的信号发送至上述信号处理函数,然后利用信号处理函数对接收到的信号进行转化后得到的被测参数,控制目标测试程序对Ceph存储集群展开相应的测试;而在利用某个被测参数进行相应测试的过程中,如果这时候需要更换被测参数,本发明实施例只需向位于目标测试程序中的信号处理函数传送相应的信号,便可实现对当前被测参数的更新,而无需重新启动测试程序,从而便于测试出Ceph存储集群的抗压能力以及对压力改变的敏感程度。

本发明实施例公开了一种具体的RDMA模式下Ceph存储集群测试方法,包括如下步骤:

步骤S21:预先创建目标测试程序;其中,上述目标测试程序为包含信号处理函数的测试程序;上述信号处理函数为根据预设的对应关系创建的用于将接收到的信号转换成相应被测参数的函数,上述预设的对应关系为预先确定的信号与被测参数之间的对应关系。

步骤S22:确定本轮测试所对应的所有被测参数,得到被测参数集;

步骤S23:根据预设的对应关系,确定出与被测参数集中的每个被测参数对应的信号,得到相应的信号集;

步骤S24:将信号集中的每个信号依次传送至信号处理函数,以依次启动与每个信号对应的测试过程。

其中,启动与任一个信号对应的测试过程,具体包括:将该信号传送至位于上述目标测试程序的信号处理函数,从而得到信号处理函数输出的相应被测参数,接着利用该被测参数,控制目标测试程序对Ceph存储集群进行相应的测试。

另外,本实施例在目标测试程序对Ceph存储集群进行的每次测试过程中,均还可以包括:

记录相应的数据写入速率、内存压力以及CPU占用率,得到与本次测试对应的性能表现参数,然后利用本次测试对应的性能表现参数,确定出与本次测试对应的被测参数的性能指数。

进一步的,本实施例还可以包括:从本轮测试所对应的所有被测参数中筛选出性能指数最高的被测参数作为Ceph存储集群的性能最优参数。

相应的,本发明实施例还公开了一种RDMA模式下Ceph存储集群测试系统,参见图2所示,该系统包括:

测试程序创建模块11,用于预先创建目标测试程序;其中,目标测试程序为包含信号处理函数的测试程序;信号处理函数为根据预设的对应关系创建的用于将接收到的信号转换成相应被测参数的函数,上述对应关系为预先确定的信号与被测参数之间的对应关系;

第一测试模块12,用于向信号处理函数传送第一信号,得到由信号处理函数输出的第一被测参数,并利用第一被测参数,控制目标测试程序对Ceph存储集群进行相应测试;

信号确定模块13,用于在第一测试模块利用第一被测参数进行相应测试的过程中,若需要将目标测试程序中的被测参数由第一被测参数更改为第二被测参数,则根据上述对应关系,确定与第二被测参数对应的第二信号;

第二测试模块14,用于向信号处理函数传送第二信号,得到由信号处理函数输出的与第二信号对应的被测参数,然后利用该被测参数,控制目标测试程序对Ceph存储集群进行相应测试。

本实施例中,任一被测参数的参数类型均为时间参数。

另外,本实施例还可以进一步包括参数集确定模块、信号集确定模块和压力测试模块;其中,

参数集确定模块,用于确定本轮测试所对应的所有被测参数,得到被测参数集;

信号集确定模块,用于根据对应关系,确定出与被测参数集中的每个被测参数对应的信号,得到相应的信号集;

压力测试模块,用于将信号集中的每个信号依次传送至信号处理函数,以依次启动与每个信号对应的测试过程。

其中,关于上述系统更加具体的工作过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。

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

以上对本发明所提供的一种RDMA模式下Ceph存储集群测试方法及系统进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

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