一种用于HPC集群的自动测试方法和装置与流程

文档序号:11388812阅读:504来源:国知局
一种用于HPC集群的自动测试方法和装置与流程

本发明涉及服务器领域,具体来说,涉及一种用于hpc集群的自动测试方法和装置。



背景技术:

目前,在面向hpc(highperformancecomputing,高性能计算)集群用户的集群订单在出厂前,需要根据用户需求,定制相应的操作系统,并通过集群中各种配置的服务器进行统一的测试,去排除集群在生产过程中发现的隐患,从而提升集群订单的质量。同时,通过出厂前的提前部署,减少现场施工的时间,提升用户满意度。

但是,目前在订单测试时,需要测试工程师根据用户提供的集群规划,部署操作系统、配置网络环境、安装测试软件、测试、查看及判定结果等,其在大部分测试规划中,都需要人员参与,且开发一套自动化处理数据的软件成本较高,但是由于订单繁杂(用户的需求不一),且测试量比较大(一般订单数量大于30台),手动输入已经无法满足工作效率的需求,因此,现有技术存在着完全由人工去完成一系列操作,这样耗费人力,效率不高,且容易出错的缺陷。

针对相关技术中的问题,目前尚未提出有效的解决方案。



技术实现要素:

针对相关技术中的问题,本发明提出一种用于hpc集群的自动测试方法和装置,能够基于脚本,将现有的一系列命令通过脚本的方式运行,在测试过程中无需过多的操作,极大的提升了效率,减少测试人员工作量。

本发明的技术方案是这样实现的:

根据本发明的一个方面,提供了一种用于hpc集群的自动测试方法。

该自动测试方法包括:接收hpc集群的订单信息,其中,订单信息包括多个服务器的配置信息;根据订单信息,搭建多个服务器的硬件环境,并编写测试规划;以及根据预先配置的脚本、测试规划和配置信息,对多个服务器进行操作系统的安装和测试。

根据本发明的一个实施例,根据预先配置的脚本、测试规划和配置信息,对多个服务器进行操作系统的安装包括:根据多个服务器的测试规划,对多个服务器进行ip地址的分配,以部署多个服务器的网络环境,其中,测试规划包括多个服务器和ip地址的对应关系。

根据本发明的一个实施例,将测试规划保存至上传文件夹。

根据本发明的一个实施例,根据预先配置的脚本、测试规划和配置信息,对多个服务器进行操作系统的安装和测试还包括:根据预先配置的脚本和配置信息,对多个服务器的操作系统和网卡驱动进行安装,其中,配置信息包括每个服务器的操作系统的类型信息和版本号;以及根据预先配置的脚本,安装测试软件,并通过测试软件,对操作系统进行测试。

根据本发明的一个实施例,预先设置的脚本为shell脚本。

根据本发明的另一方面,提供了一种用于hpc集群的自动测试装置。

该自动测试装置包括:接收模块,用于接收hpc集群的订单信息,其中,订单信息包括多个服务器的配置信息;搭建编写模块,用于根据订单信息,搭建多个服务器的硬件环境,并编写测试规划;以及安装测试模块,用于根据预先配置的脚本、测试规划和配置信息,对多个服务器进行操作系统的安装和测试。

根据本发明的一个实施例,安装测试模块包括:部署模块,用于根据多个服务器的测试规划,对多个服务器进行ip地址的分配,以部署多个服务器的网络环境,其中,测试规划包括多个服务器和ip地址的对应关系。

根据本发明的一个实施例,还包括:保存模块,用于将测试规划保存至上传文件夹。

根据本发明的一个实施例,安装测试模块还包括:第一安装模块,用于根据预先配置的脚本和配置信息,对多个服务器的操作系统和网卡驱动进行安装,其中,配置信息包括每个服务器的操作系统的类型信息和版本号;以及第二安装模块,用于根据预先配置的脚本,安装测试软件,并通过测试软件,对操作系统进行测试。

根据本发明的一个实施例,预先设置的脚本为shell脚本。

本发明的有益技术效果在于:

本发明通过接收hpc集群的订单信息,随后根据订单信息,搭建多个服务器的硬件环境,并编写测试规划,最后根据预先配置的脚本、测试规划和配置信息,对多个服务器进行操作系统的安装和测试,从而基于脚本,将现有的一系列命令通过脚本的方式运行,在测试过程中无需过多的操作,其可以极大的将集群订单测试工作自动化,从而提升工作效率,而且,在整个过程中,减少了人工干预,极大的降低了人为操作失误的风险。

附图说明

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

图1是根据本发明实施例的用于hpc集群的自动测试方法的流程图;

图2是根据本发明实施例的用于hpc集群的自动测试方法的具体流程图;

图3是根据本发明实施例的测试环境部署的示意图;

图4是根据本发明实施例的用于hpc集群的自动测试方法装置的框图。

具体实施方式

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

根据本发明的实施例,提供了一种用于hpc集群的自动测试方法。

如图1所示,根据本发明实施例的用于hpc集群的自动测试方法包括:

步骤s101,接收hpc集群的订单信息,其中,订单信息包括多个服务器的配置信息;

步骤s103,根据订单信息,搭建多个服务器的硬件环境,并编写测试规划;

步骤s105,根据预先配置的脚本、测试规划和配置信息,对多个服务器进行操作系统的安装和测试。

在该实施例中,继续参见图2所示,首先接收hpc集群的订单,该订单中包括多个需求服务器的序列号、型号以及所需求的操作系统的类型和版本号等信息,随后搭建测试环境,即搭建订单中的服务器的硬件环境,如服务器通电、以及服务器的互相连接等,以保证订单中的服务器能够运行,随后编写规划,该规划是指搭建服务器的网络环境,即对订单中的多个服务器进行ip地址的分配,如,根据本发明的一个实施例,该规划可为一个表格,该表格中记录着服务器和ip地址的对应关系,根据该对应关系对服务器进行ip地址的分配,随后进行开机网络引导进行订单中的服务器的操作系统的安装,在服务器开机后,操作人员可依据订单,选择每个服务器的操作系统类型,例如,根据本发明的一个实施例,该服务器的操作系统的类型可以为centos(communityenterpriseoperatingsystem,社区企业操作系统),该系统的版本号为6.5,当然可以理解,该服务器的操作系统的类型和版本号还可根据实际需求进行选择,该服务器的操作系统还可为redhat(红帽)操作系统,本发明对此不做限定,并且在每个服务器的操作系统安装时,可以快速部署无人值守安装环境,客户端启动pxe(prebootexecuteenvironment,预启动执行环境)网络后,无需再进行其他操作。

通过本发明的上述方案,通过接收hpc集群的订单信息,随后根据订单信息,搭建多个服务器的硬件环境,并编写测试规划,最后根据预先配置的脚本、测试规划和配置信息,对多个服务器进行操作系统的安装和测试,从而基于脚本,将现有的一系列命令通过脚本的方式运行,在测试过程中无需过多的操作,其可以极大的将集群订单测试工作自动化,从而提升工作效率,而且,在整个过程中,减少了人工干预,极大的降低了人为操作失误的风险。

根据本发明的一个实施例,根据预先配置的脚本、测试规划和配置信息,对多个服务器进行操作系统的安装包括:根据多个服务器的测试规划,对多个服务器进行ip地址的分配,以部署多个服务器的网络环境,其中,测试规划包括多个服务器和ip地址的对应关系。

根据本发明的一个实施例,将测试规划保存至上传文件夹(ftp文件件)。

根据本发明的一个实施例,根据预先配置的脚本、测试规划和配置信息,对多个服务器进行操作系统的安装和测试还包括:根据预先配置的脚本和配置信息,对多个服务器的操作系统和网卡驱动进行安装,其中,配置信息包括每个服务器的操作系统的类型信息和版本号;以及根据预先配置的脚本,安装测试软件,并通过测试软件,对操作系统进行测试。

在该实施例中,继续参见图3,该测试环境自动部署包括:自动部署操作系统、自动安装网卡驱动、自动部署网络环境,自动部署操作系统是依据订单进行的,由于客户需求不同,每个订单需要安装的操作系统也不尽相同,需要根据用户要求选择相应的操作系统类型及其版本,在操作系统安装完毕后,安装网卡驱动,并自动部署网络环境,即为每个服务器分配ip地址。此外,在服务器的操作系统安装完毕后,还可在服务器上安装测试软件,以测试服务器的操作系统,并且在测试过程中,记录故障信息等。

根据本发明的一个实施例,预先设置的脚本为shell脚本,其中,该shell脚本是用各类命令预先放到一个文件,方便一次性执行的一个程序文件,该shell文件具体如下:

当然可以理解,该脚本的类型也可根据实际需求进行选择,例如,根据本发明的一个实施例,该脚本可为php脚本。

下面将现有的测试方法和本发明的自动测试方法进行比较。

假设:机器数量=n,操作系统安装时间=t,操作系统选择时间=m,部署单点网络环境=a,安装infiniband(简称ib,无限带宽)驱动时间=s,现有技术通常集群订单测试使用的时间为:(a+m)*n+t+s,而使用本装置的时间为:m*n+t+s,比较上述两个公式可以确定,其可节省的时间约为:a*n,因此,订单规模越大,通过本发明的自动测试方法所节省的时间越多。

为了更好的描述本发明下面以60节点规模的订单为例进行说明,通过现有的测试方法所使用的时间时间为:(a+m+s)*n+t+s,针对该60节点规模的订单的时间具体为(0.017+0.017)*60+0.5+0.3=2.84(单位:小时),而通过本发明的自动测试方法使用本装置时间为:m*n+t+s,针对该60节点规模的订单的时间具体为,0.017*60+0.5+0.3=1.82(单位:小时),因此,本发明的自动测试方法,其可以极大的将集群订单测试工作自动化,从而提升工作效率,而且,在整个过程中,减少了人工干预,极大的降低了人为操作失误的风险。

根据本发明的实施例,还提供了一种用于hpc集群的自动测试装置。

如图4所示,根据本发明实施例的用于hpc集群的自动测试装置包括:

接收模块41,用于接收hpc集群的订单信息,其中,订单信息包括多个服务器的配置信息;

搭建编写模块42,用于根据订单信息,搭建多个服务器的硬件环境,并编写测试规划;

安装测试模块43,用于根据预先配置的脚本、测试规划和配置信息,对多个服务器进行操作系统的安装和测试。

根据本发明的一个实施例,安装测试模块43包括:部署模块(未示出),用于根据多个服务器的测试规划,对多个服务器进行ip地址的分配,以部署多个服务器的网络环境,其中,测试规划包括多个服务器和ip地址的对应关系。

根据本发明的一个实施例,还包括:保存模块(未示出),用于将测试规划保存至上传文件夹。

根据本发明的一个实施例,安装测试模块还包括:第一安装模块(未示出),用于根据预先配置的脚本和配置信息,对多个服务器的操作系统和网卡驱动进行安装,其中,配置信息包括每个服务器的操作系统的类型信息和版本号;以及第二安装模块(未示出),用于根据预先配置的脚本,安装测试软件,并通过测试软件,对操作系统进行测试。

根据本发明的一个实施例,预先设置的脚本为shell脚本。

综上所述,借助于本发明的上述技术方案,通过接收hpc集群的订单信息,随后根据订单信息,搭建多个服务器的硬件环境,并编写测试规划,最后根据预先配置的脚本、测试规划和配置信息,对多个服务器进行操作系统的安装和测试,从而基于脚本,将现有的一系列命令通过脚本的方式运行,在测试过程中无需过多的操作,其可以极大的将集群订单测试工作自动化,从而提升工作效率,而且,在整个过程中,减少了人工干预,极大的降低了人为操作失误的风险。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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