分布式集群测试方法、电子设备、存储介质及程序产品技术

技术编号:31490948 阅读:20 留言:0更新日期:2021-12-18 12:27
本申请实施例提供了一种分布式集群测试方法、电子设备、计算机存储介质及计算机程序产品,其中,分布式集群测试方法包括:在容器化集群的主机节点中接收到对容器化集群进行集群测试的触发操作;根据所述触发操作触发生成集群测试任务,其中,所述集群测试任务中包括多个测试程序,所述测试程序具有时间复杂度标记;在所述主机节点中生成模拟工作节点,基于所述模拟工作节点和满足预设时间复杂度标准的测试程序,执行所述集群测试任务。通过本申请实施例,提升了集群测试的效率。提升了集群测试的效率。提升了集群测试的效率。

【技术实现步骤摘要】
分布式集群测试方法、电子设备、存储介质及程序产品


[0001]本申请实施例涉及互联网
,尤其涉及一种分布式集群测试方法、电子设备、计算机存储介质及计算机程序产品。

技术介绍

[0002]分布式集群系统是指由多个处理机通过通信线路互联而构成的松散耦合的系统,传统的分布式集群系统中以每台设备为单位进行任务分配和作业,并没有充分利用每台设备的资源。为此,虚拟机技术应运而生。通过虚拟机技术,可以在一个操作系统中模拟出多台子设备,子设备之间相互隔离,从而使得一台物理设备可虚拟为多台设备使用。但基于虚拟机技术的分布式集群系统存在着启动慢、占用空间大等缺陷。
[0003]目前,随着容器技术的发展,越来越多的分布式集群系统采用容器技术,以克服虚拟机技术带来的缺陷。容器技术不需要虚拟出整个操作系统,只需要虚拟一个小规模的环境即可运行程序,执行相应的任务,启动速度快,且基本不消耗额外的系统资源。因此,基于容器技术的分布式架构得到了广泛应用。
[0004]但在基于容器技术的分布式系统(也称容器化集群)中,随着物理节点数量的增多,与之相关的缺陷数呈指数级增加。并且,一般的大型分布式集群的物理节点数量通常多达1000个以上。在这样的分布式集群投入正式运行之前,需要先对其进行测试,尤其是需要进行集群容量测试,以验证该容器化集群可能承受的容量。但目前这种大规模分布式集群的容量测试,需要投入大量的人力和物力,实现成本高,且测试效率低下。

技术实现思路

[0005]有鉴于此,本申请实施例提供一种分布式集群测试方案,以至少部分解决上述问题。
[0006]根据本申请实施例的第一方面,提供了一种分布式集群测试方法,包括:在容器化集群的主机节点中接收到对容器化集群进行集群测试的触发操作;根据所述触发操作触发生成集群测试任务,其中,所述集群测试任务中包括多个测试程序,所述测试程序具有时间复杂度标记;在所述主机节点中生成模拟工作节点,基于所述模拟工作节点和满足预设时间复杂度标准的测试程序,执行所述集群测试任务。
[0007]根据本申请实施例的第二方面,提供了一种分布式集群测试装置,包括:触发模块,用于在容器化集群的主机节点中接收到对容器化集群进行集群测试的触发操作;生成模块,用于根据触发操作触发生成集群测试任务,其中,集群测试任务中包括多个测试程序,测试程序具有时间复杂度标记;测试模块,用于在主机节点中生成模拟工作节点,基于模拟工作节点和满足预设时间复杂度标准的测试程序,执行集群测试任务。
[0008]根据本申请实施例的第三方面,提供了一种电子设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行如第
一方面所述的方法对应的操作。
[0009]根据本申请实施例的第四方面,提供了一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面所述的方法。
[0010]根据本申请实施例的第五方面,提供了一种计算机程序产品,包括计算机指令,所述计算机指令指示计算设备执行如第一方面所述的方法对应的操作。
[0011]根据本申请实施例提供的分布式集群测试方案,将其应用于容器化集群测试中,与传统测试不同的是,其不再需要真实的节点、设备和集群环境,通过集群中某台可运行主管理程序的设备即可实现基于单台设备的对整个容器化集群的测试。在本申请实施例的测试方案中,当集群中的某台可运行主管理程序的节点即主机节点接收到进行集群测试的触发操作时,会获取预先标记有执行时间复杂度标记的测试程序生成的集群测试任务,并且,在主机节点本地生成模拟工作节点,以基于这些设置进行集群测试方案。一方面,在某些测试中,如集群容量测试中,无需真实的工作节点运行测试程序,因此,通过模拟工作节点即可协助主机节点完成集群测试,可提高测试效率,又因无需部署真实的工作节点设备的集群环境,可达到节省人力和物力的效果。另一方面,在执行集群测试任务时,也仅满足预设执行时间复杂度标准的测试程序可被执行,这些测试程序通常为时间复杂度较低的测试程序,基于这些测试程序进行集群测试,即可满足诸如集群容量测试等测试方面的需求,又可避免系统资源消耗过大,还更容易发现与节点数量关联不高的其它的集群缺陷,进一步提升了集群测试的效率。
附图说明
[0012]为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请实施例中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
[0013]图1为一种容器化集群系统的示意图;
[0014]图2为根据本申请实施例一的一种分布式集群测试方法的步骤流程图;
[0015]图3A为根据本申请实施例二的一种分布式集群测试方法的步骤流程图;
[0016]图3B为图3A所示实施例中的一种对容器化集群进行集群容量测试的过程示意图;
[0017]图4为根据本申请实施例三的一种分布式集群测试装置的结构框图;
[0018]图5为根据本申请实施例四的一种电子设备的结构示意图。
具体实施方式
[0019]为了使本领域的人员更好地理解本申请实施例中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请实施例一部分实施例,而不是全部的实施例。基于本申请实施例中的实施例,本领域普通技术人员所获得的所有其他实施例,都应当属于本申请实施例保护的范围。
[0020]为便于理解本申请实施例的方案,以下首先结合图1对容器化集群进行简要说明。
[0021]图1示出了一种容器化集群的示例,图1中,该系统100可以包括多台节点设备102、和通信网络104。每台节点设备102上均可运行多个容器,在多台节点设备102中,存在一台
可运行主管理程序Master的主机节点,以及可接收主机节点管理和任务分配的一台或多台工作节点,如可运行kubelet的Worker节点。需要说明的是,该系统100中的多个节点示意为物理节点,但本领域技术人员应当明了的是,该多个节点也可以是虚拟机节点。
[0022]以kubernetes容器化集群为示例,假设图1中在左侧节点设备102中运行Master程序,即主机节点,用于控制kubernetes容器化集群中的节点设备、创建作业任务等。
[0023]下侧虚线框中节点设备的每个设备中运行有至少一个POD,为工作节点,这些工作节点在主机节点的控制下执行被分配的任务。其中,POD由一个或多个(两个及两个以上)容器构成,作为一个整体被部署至一个工作节点上,同一个POD中的容器共享IP地址、进程间通讯(IPC)、主机名及其它资源。
[0024]此外,主机节点中配置有Replication controller(复制控制器),用于本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种分布式集群测试方法,包括:在容器化集群的主机节点中接收到对容器化集群进行集群测试的触发操作;根据所述触发操作触发生成集群测试任务,其中,所述集群测试任务中包括多个测试程序,所述测试程序具有时间复杂度标记;在所述主机节点中生成模拟工作节点,基于所述模拟工作节点和满足预设时间复杂度标准的测试程序,执行所述集群测试任务。2.根据权利要求1所述的方法,其中,所述在所述主机节点中生成模拟工作节点,基于所述模拟工作节点和满足预设时间复杂度标准的测试程序,执行所述集群测试任务,包括:在所述主机节点中依次逐个启动工作节点进程,通过启动的工作节点进程模拟工作节点;基于所述主机节点和所述模拟工作节点执行所述集群测试任务,并在执行至具有第一时间复杂度标记的测试程序时,跳转至与该测试程序对应的具有第二时间复杂度标记的测试程序执行;其中,第一时间复杂度高于第二时间复杂度,第二时间复杂度为常数复杂度。3.根据权利要求2所述的方法,其中,所述在执行至具有第一时间复杂度标记的测试程序时,跳转至与该测试程序对应的具有第二时间复杂度标记的测试程序执行,包括:在执行至具有第一时间复杂度标记的测试程序时,获取预先存储的所述测试程序的输入、输出和执行时间,并跳转至与该测试程序对应的具有第二时间复杂度标记的测试程序;通过所述具有第二时间复杂度标记的测试程序,基于所述输入、输出和执行时间,进行所述测试程序的执行回放。4.根据权利要求2所述的方法,其中,所述具有第一时间复杂度标记的测试程序包括:具有第一时间复杂度标记的节点依赖性测试程序。5.根据权利要求1

4任一项所述的方法,其中,所述方法还包括:预先对所述集群测试任务进行预测试执行,以根据执行结果对所述集群测试任务中的多个测试程序进行时间复杂度标记。6.根据权利要求5所述的方法,其中,所述预先对所述集群测试任务进行预测试执行,以根据执行结果对所述多个测试程序进行时间复杂度标记,包括:在包括主机节点和多个真实工作节点的预设规模的容器化集群中,执行所述...

【专利技术属性】
技术研发人员:孙远
申请(专利权)人:阿里云计算有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1