CN112187574A - 使用虚拟机进行网络压力测试的方法、系统和存储介质 - Google Patents
使用虚拟机进行网络压力测试的方法、系统和存储介质 Download PDFInfo
- Publication number
- CN112187574A CN112187574A CN202011015593.0A CN202011015593A CN112187574A CN 112187574 A CN112187574 A CN 112187574A CN 202011015593 A CN202011015593 A CN 202011015593A CN 112187574 A CN112187574 A CN 112187574A
- Authority
- CN
- China
- Prior art keywords
- test
- network
- virtual machines
- tested server
- testing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
- 238000000034 method Methods 0.000 title claims abstract description 53
- 238000003860 storage Methods 0.000 title claims abstract description 18
- 238000009662 stress testing Methods 0.000 title claims description 12
- 238000012360 testing method Methods 0.000 claims abstract description 473
- 230000006870 function Effects 0.000 claims description 16
- 238000004891 communication Methods 0.000 claims description 13
- 238000013031 physical testing Methods 0.000 claims description 2
- 230000008569 process Effects 0.000 abstract description 7
- 238000010586 diagram Methods 0.000 description 21
- 238000004590 computer program Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 238000002474 experimental method Methods 0.000 description 4
- 238000004519 manufacturing process Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000009434 installation Methods 0.000 description 3
- 206010033799 Paralysis Diseases 0.000 description 2
- 238000004378 air conditioning Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 230000017525 heat dissipation Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000013112 stability test Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/50—Testing arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0805—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
- H04L43/0817—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开使用虚拟机进行网络压力测试的方法、系统和存储介质,其中,上述使用虚拟机进行网络压力测试的方法用于网络压力测试系统,网络压力测试系统包括依次相连的测试客户端、网路交换机和被测服务器;其中,测试客户端具有模拟多台测试虚拟机的功能;使用虚拟机进行网络压力测试的方法包括:根据被测服务器的网口数量,设置测试客户端需要模拟的多台测试虚拟机的数量;建立被测服务器与多台测试虚拟机之间的连接;使用多台测试虚拟机模拟对应数量的实体测试机器,对被测服务器进行网络压力测试。本发明的技术方案能解决现有技术中网络压力测试方式需要架设实验机房并部署大量实体机器,导致的成本高昂,测试过程繁琐耗时的问题。
Description
技术领域
本发明涉及服务器技术领域,尤其涉及一种使用虚拟机进行网络压力测试的方法、系统和存储介质。
背景技术
随着网络技术的发展,服务器在生产生活中扮演的角色越来越重要。服务器通常以网络作为传输介质,既能够通过内部网对服务器集群内部提供服务,也能够通过互联网对外部提供服务。互联网普及的同时也改变了电脑用户的习惯,更极大普及了网络联系传讯的方式。服务器所能完成的工作越来越复杂;而云端计算、数据链以及大数据时代造就了各种新型行业。正因如此,服务器需要面对大量网络客户端的应用存取,在大量用户上线后提供特定服务,甚至服务器需要连续工作7×24小时,因此,保持服务器网路稳定的重要性不言可喻。
为保证服务器网路的稳定,服务器生产制造商在研发制造服务器的过程中,会不断地针对服务器系统的整体网络做压力测试;在服务器上线前,数据中心的IT人员也会针对服务器进行稳定性测试,以避免服务器在大量应用客户端用户进行网路存取的情况下机器宕机或系统停摆,影响整体用户权益。参见图1,图1为传统的网络压力测试环境。图1中,被测服务器101透过第一网路102连接交换机103,交换机103之间彼此以第一网路102做串连;被测服务器101需要为大量实体测试机器106提供服务,为放置大量实体测试机器106,必须有一机房105作为管理,实体测试机器106再透过第二网路104连接交换机103,从而仿真大量用户端网路存取的测试环境。
然而,相关操作需要仿真大量用户端,以进行网络存取压力测试。在传统的测试环境中,必须架设实验机房并部署大量实体机器。具体地,首先,必须取得一范围至少三十平方米以上之空间,作为机房之设置地点;然后,进行电力及网路走线的部署,空调散热系统的规划,购买用户端电脑设备、交换机和萤幕等,这些都是建置机房的固定设备支出成本。另外,大量客户端的测试设备仿真完成后,需要连接待测服务器网路,在跑网络压力测试之前,又必须逐一对用户端软体与受测端系统进行设定,如此不但繁琐且耗时,更可能因为人工设定上的出错,造成整体测试环境的瘫痪。
发明内容
本发明提供了一种使用虚拟机进行网络压力测试的方法、系统和存储介质,旨在解决现有技术中网络压力测试的方法,需要架设实验机房并部署大量实体机器,导致成本高昂,且测试过程繁琐耗时的问题。
为实现上述目的,根据本发明的第一方面,本发明提供了一种使用虚拟机进行网络压力测试的方法,用于网络压力测试系统,网络压力测试系统包括依次相连的测试客户端、网路交换机和被测服务器;其中,测试客户端具有模拟多台测试虚拟机的功能;使用虚拟机进行网络压力测试的方法包括:
根据被测服务器的网口数量,设置测试客户端需要模拟的多台测试虚拟机的数量;
建立被测服务器与多台测试虚拟机之间的连接;
使用多台测试虚拟机模拟对应数量的实体测试机器,对被测服务器进行网络压力测试。
优选地,上述根据被测服务器的网口数量,设置测试客户端需要模拟的多台测试虚拟机的数量的步骤包括:
向被测服务器发送网口数量获取指令,获取被测服务器的网口数量;
按照同一虚拟机群组内测试虚拟机数量与被测服务器的网口数量,计算得到测试客户端需要模拟的多台测试虚拟机的数量。
优选地,上述建立被测服务器与多台测试虚拟机之间的连接的步骤,包括:
设置测试客户端上测试虚拟机的固定IP地址;
启动测试客户端需要模拟的多台测试虚拟机;
使用多台测试虚拟机的固定IP地址,连接多台测试虚拟机与被测服务器的网口。
优选地,上述启动测试客户端需要模拟的多台测试虚拟机的步骤,包括:
控制被测服务器登录测试客户端;
通过被测服务器控制需要模拟的多台测试虚拟机开机启动。
优选地,在启动所述测试客户端需要模拟的多台测试虚拟机的步骤之后,本申请提供的使用虚拟机进行网络压力测试的方法还包括:
使用网络诊断工具,侦测所述多台测试虚拟机的固定IP地址;
当侦测到所述固定IP地址时,确定所述测试虚拟机进入作业状态,执行所述连接多台测试虚拟机与所述被测服务器的网口的步骤。
优选地,上述使用所述多台测试虚拟机的固定IP地址,连接所述多台测试虚拟机与所述被测服务器的网口的步骤,包括:
设置所述被测服务器中所有网卡上各个网口的固定IP地址;
匹配所述网口的固定IP地址与所述多台测试虚拟机的固定IP地址;
根据所述固定IP地址的匹配结果,建立所述多台测试虚拟机与所述被测服务器的网口之间的连接。
优选地,上述使用多台测试虚拟机模拟对应数量的实体测试机器,对被测服务器进行网络压力测试的步骤,包括:
将多台测试虚拟机的网络磁盘挂载到被测服务器上;
使用压力测试工具在预定测试时间内,控制多台测试虚拟机对被测服务器的网络磁盘进行网络压力测试;
收集多台测试虚拟机对网络磁盘进行网络压力测试的测试结果。
优选地,上述将多台测试虚拟机的网络磁盘挂载到所述被测服务器上的步骤包括:将每台所述测试虚拟机的网络磁盘挂载到所述测试虚拟机的预设磁盘目录中;
使用预设磁盘挂载指令,控制所述被测服务器共享每台测试虚拟机的预设磁盘目录,以挂载所述网络磁盘。
根据本发明的第二方面,本发明还提供了一种使用虚拟机进行网络压力测试的系统,用于网络压力测试系统,网络压力测试系统包括依次相连的测试客户端、网路交换机和被测服务器;其中,测试客户端具有模拟多台测试虚拟机的功能;使用虚拟机进行网络压力测试的系统包括:
数量设置模块,用于根据被测服务器的网口数量,设置测试客户端需要模拟的多台测试虚拟机的数量;
连接建立模块,用于建立被测服务器与多台测试虚拟机之间的连接;
压力测试模块,用于使用多台测试虚拟机模拟对应数量的实体测试机器,对被测服务器进行网络压力测试。
优选地,上述数量设置模块,包括:
指令发送子模块,用于向被测服务器发送网口数量获取指令,获取被测服务器的网口数量;
数量计算子模块,用于按照同一虚拟机群组内测试虚拟机数量与被测服务器的网口数量,计算得到测试客户端需要模拟的多台测试虚拟机的数量。
优选地,上述连接建立模块,包括:
地址设置子模块,用于设置测试客户端上测试虚拟机的固定IP地址;
虚拟机启动子模块,用于启动测试客户端需要模拟的多台测试虚拟机;
网络连接子模块,用于使用多台测试虚拟机的固定IP地址,连接多台测试虚拟机与被测服务器的网口。
优选地,上述压力测试模块,包括:
磁盘挂载子模块,用于将多台测试虚拟机的网络磁盘挂载到被测服务器上;
测试控制子模块,用于使用压力测试工具在预定测试时间内,控制多台测试虚拟机对被测服务器的网络磁盘进行网络压力测试;
结果收集子模块,用于收集多台测试虚拟机对网络磁盘进行网络压力测试的测试结果。
优选地,上述虚拟机启动子模块,包括:
登录控制子模块,用于控制被测服务器登录测试客户端;
开机控制子模块,用于通过被测服务器控制需要模拟的多台测试虚拟机开机启动。
根据本发明的第三方面,本发明还提供了一种计算机存储介质,包括:存储器。处理器、通信总线以及存储在所述存储器上的使用虚拟机进行网络压力测试的程序;
所述通信总线用于实现处理器和存储器之间的连接通信;
所述处理器用于执行所述使用虚拟机进行网络压力测试的程序,以实现上述任一项技术方案所述的使用虚拟机进行网络压力测试方法的步骤。
本申请上述技术方案提供的使用虚拟机进行网络压力测试的方案,通过设置具有模拟多台测试虚拟机功能的测试客户端,能够使用该测试客户端模拟多台测试虚拟机,每台测试虚拟机均能够模拟实体测试机器对被测服务器进行网络压力测试,这样根据被测服务器的网络数量,就能够设置对应数量的多台测试虚拟机,仿真大量客户端用户使用被测服务器上的网络资源;然后将被测服务器与多台测试虚拟机建立连接,就能够在被测服务器的网口处于满载的状态下对被测服务器自动执行网络压力测试。通过上述方法,测试人员能够以一台实体的测试客户端产生多台测试虚拟机,测试方式简单,耗费时间少,能够节省大量实体资源,节约成本、电力和人力。综上,本申请上述技术方案,能够解决现有技术中网络压力测试方法,需要架设实验机房并部署大量实体机器,导致的成本高昂,测试过程繁琐耗时的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图示出的结构获得其他的附图。
图1是现有技术提供的一种网络压力测试环境的结构示意图;
图2是本发明实施例提供的第一种网络压力测试系统的结构示意图;
图3是图2所示实施例提供的一种测试客户端的结构示意图;
图4是图2所示实施例提供的第二种网络压力测试系统的结构示意图;
图5是本发明实施例提供的第一种使用虚拟机进行网络压力测试的方法的流程示意图;
图6是图5所示实施例提供的一种测试虚拟机数量设置方法的流程示意图;
图7是图5所示实施例提供的一种网络连接建立方法的流程示意图;
图8是图5所示实施例提供的一种网络压力测试方法的流程示意图;
图9是本发明实施例提供的第二种使用虚拟机进行网络压力测试的方法的流程示意图;
图10是本发明实施例提供的一种使用虚拟机进行网络压力测试的系统的结构示意图;
图11是图10所示实施例提供的一种数量设置模块的结构示意图;
图12是图10所示实施例提供的一种连接建立模块的结构示意图;
图13是图10所示实施例提供的一种压力测试模块的结构示意图;
图14是图12所示实施例提供的一种虚拟机启动子模块的结构示意图;
图15是本发明实施例提供的一种计算机存储介质的结构示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例的主要技术问题如下:
结合图1所示,传统的网络压力测试环境中,若要对被测服务器101进行网络压力测试,需要用到大量实体测试机器106;并且为放置大量实体测试机器106,必须有一机房105作为管理,实体测试机器106再透过第二网路104连接交换机103,从而仿真大量用户端网路存取的测试环境。然而,相关操作需要仿真大量用户端以进行网络存取压力测试。在传统的测试环境中,必须架设实验机房并部署大量实体测试机器。具体地,首先,必须取得一范围至少三十平方米以上之空间,作为机房之设置地点;然后,进行电力及网路走线的部署,空调散热系统的规划,购买用户端电脑设备、交换机和萤幕等,这些都是建置机房的固定设备支出成本。另外,大量客户端的测试设备仿真完成后,需要连接待测服务器网路,在跑网络压力测试之前,又必须逐一对用户端软体与受测端系统进行设定,如此不但繁琐且耗时,更可能因为人工设定上的出错,造成整体测试环境的瘫痪。
为解决上述问题,参见图2,图2为本申请实施例提供的一种网络压力测试系统的结构示意图。如图2所示,该网络压力测试系统,通过虚拟化技术,导入网络测试环境,仿真大量客户端用户使用被测服务器上的网络资源,对被测服务器进行网路压力测试。具体地,该网络压力测试系统包括:被测服务器201、第一网路202、交换机203、第二网路204和测试客户端205;其中,被测服务器201透过第一网路202连接交换机203,测试客户端205具备较高的硬件规格,可建置多个测试虚拟机206,测试虚拟机206的建置数量取决于测试客户端205使用怎样的硬件规格,不以此图例所见之数量为限。测试客户端205透过网路204连接至交换机203,与被测服务器201位于同一网路环境中。图中之虚线方框207即为该测试客户端205的占地空间,如图2所示,仅通过设置一台测试客户端即可取代传统的网络压力测试机房。综上本申请实施例提供的网络压力测试系统相比于现有的需要设置多台实体测试机器与搭建测试机房的方案,通过利用虚拟化技术,取代传统的网络压力测试方法,将实体测试机器转换为测试虚拟机进行测试,能够极大地减小占地面积,提高对被测服务器网络压力的测试效率。
具体参见图3和图4,图3所示实施例中,在测试客户端301上,测试虚拟机303能够将测试客户端301的各种实体资源(如CPU3011、内存3012、硬盘3013和网路3014等)予以抽象和转换,并通过虚拟化层302进行虚拟,得到软件层的多个测试虚拟机303,从而分割和组合为一个或多个电脑配置环境。这样,再通过交换机304将测试客户端301与被测服务器进行连接,从而利用多台测试虚拟机303对被测服务器进行网络压力测试。其中,每台测试虚拟机303均配置有固定IP,每三台测试虚拟机303组合为一个虚拟机群,该虚拟机群对应被测服务器上的一个网口,这样就能够使得被测服务器的网口满载。
另外,如图4所示,为了建立测试客户端405与被测服务器401之间的连接,在被测服务器401上,网卡402设定固定IP为192.168.11.4/192.168.12.4,每张网卡402上网口的数量取决于网卡的规格,不以此图例所见之数量为限,被测服务器401连接网路线至交换机406,同时测试客户端405也连接网路线至该网路交换机设备406,如此完成被测服务器401与测试客户端405之间的连接。
为实现上述目的,参见图5,图5为本发明实施例提供的第一种使用虚拟机进行网络压力测试的方法的流程示意图。如图5所示,该使用虚拟机进行网络压力测试的方法用于图2所示的网络压力测试系统。如图5所示,该使用虚拟机进行网络压力测试的方法包括以下步骤:
S110:根据被测服务器的网口数量,设置测试客户端需要模拟的多台测试虚拟机的数量。被测服务器包括多个网口,通过该多个网口输入或输出数据,并且不同网口输入或输出的数据可以并行操作,这样根据被测服务器的网口数量,设置测试客户端需要模拟的多台测试虚拟机的数量,就能够对应建立被测服务器与测试虚拟机之间的连接,通过设置多台测试虚拟机,通过不同网口输入或输出不同的数据,对被测服务器进行网络压力测试。其中,如图3所示,测试虚拟机是测试客户端的仿真器,通过软件模拟具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统,能够提供物理计算机的功能。另外,测试虚拟机303能够将测试客户端301的各种实体资源(如测试客户端301的CPU3011、内存3012、硬盘3013和网路3014等)予以抽象和转换,并通过虚拟化层302进行虚拟,得到软件层的多个测试虚拟机303,从而分割和组合为一个或多个电脑配置环境。其中,每台测试虚拟机303均配置有固定IP,每三台测试虚拟机303组合为一个虚拟机群,该虚拟机群对应被测服务器上的一个网口,这样就能够使得被测服务器的网口满载。
具体地,如图6所示,该根据被测服务器的网口数量,设置测试客户端需要模拟的多台测试虚拟机的数量的步骤具体包括:
S111:向被测服务器发送网口数量获取指令,获取被测服务器的网口数量。具体地,可以通个“lspci|grep–i ethernet”指令获取被测服务器的网口数量。
S112:按照同一虚拟机群组内测试虚拟机数量与被测服务器的网口数量,计算得到测试客户端需要模拟的多台测试虚拟机的数量。
通过向被测服务器发送网口数量获取指令,能够获取被测服务器的网口数量,这样,就按照统一虚拟机群组内测试虚拟机的数量,以及被测服务器的网口数量,计算得到测试客户端需要模拟的多台测试虚拟机的数量。其中,如图3和图4所示,通常一个虚拟机群组包含三台测试虚拟机,并且一个虚拟机群组对应一个网口,从而对被测服务器的一个网口做存取;一个网口对应连接三台测试虚拟机,能够使得被测服务器的网口满载。通过被测服务器的网口数量,配置测试虚拟机的数量,能够尽可能多地使用虚拟机对被测服务器进行网络压力测试,提高测试能力。
另外,本申请实施例提供的使用虚拟机进行网络压力测试的方法还包括以下步骤:
S120:建立被测服务器与多台测试虚拟机之间的连接。通过建立被测服务器与多台测试虚拟机之间的连接,能够通过网络将被测服务器与测试客户端连接起来,进而使用多台测试虚拟机对被测服务器进行网络压力测试。其中,被测服务器首先需要安装好需要测试的网路卡,安装数量以测试所需的组态为主,不以此图例所见之数量为限,设定每张网路卡中网口的固定IP地址,参见图4所示,被测服务器401上,路卡402设定固定IP为192.168.11.4/192.168.12.4,每张网卡402上网口的数量取决于网卡的规格,不以此图例所见之数量为限,被测服务器401连接网路线至交换机406,同时测试客户端405也连接网路线至该网路交换机设备406,如此完成被测服务器401与测试客户端405之间的连接。
其中,如图7所示,该建立被测服务器与多台测试虚拟机之间的连接的步骤具体包括:
S121:设置测试客户端上测试虚拟机的固定IP地址。在测试客户端上建立虚拟机后,需要在虚拟机上安装Linux系统,并设定测试虚拟机的固定IP,例如测试虚拟机1的固定IP设置为192.168.1.1,测试虚拟机2的固定IP设定为192.168.1.2……依次类推。
S122:启动测试客户端需要模拟的多台测试虚拟机。
其中,作为一种优选的实施例,该启动测试客户端需要模拟的多台测试虚拟机的步骤,具体包括:控制被测服务器登录测试客户端;通过被测服务器控制需要模拟的多台测试虚拟机开机启动。在建立连接时,首先需要将被测服务器登录测试客户端,然后将需要的测试虚拟机开机,在登录测试客户端后,以指令“vmrun.exe-T ws start”开启所需数量的测试虚拟机。
S123:使用网络诊断工具,侦测多台测试虚拟机的固定IP地址。
S124:当侦测到固定IP地址时,确定该固定IP地址对应的测试虚拟机进入作业状态;
其中该网络诊断工具可以为ping(Packet Internet Groper,因特网包探索器),使用该网络诊断工具,能够侦测已开机进入作业的测试虚拟机,然后将该被测服务器以指令ping,侦测虚拟机的固定IP,若ping有回应,则代表测试虚拟机已经进入作业状态;当所有已启动的测试虚拟机进入作业状态后,再连接测试虚拟机和被测服务器。
S125:使用多台测试虚拟机的固定IP地址,连接多台测试虚拟机与被测服务器的网口。该方法具体包括以下步骤:设置所述被测服务器中所有网卡上各个网口的固定IP地址;匹配所述网口的固定IP地址与所述多台测试虚拟机的固定IP地址;当网口与测试虚拟机的固定IP地址匹配时,建立所述多台测试虚拟机与所述被测服务器的网口之间的连接。因为被测服务器的多个网口也存在对应的IP地址,这样在获取到多台测试虚拟机的固定IP地址后,可以根据测试虚拟机和网口的IP地址建立对应关系,从而建立多台测试虚拟机与被测服务器之间的连接。
另外,图5所示实施例提供的使用虚拟机进行网络压力测试的方法还包括:
S130:使用多台测试虚拟机模拟对应数量的实体测试机器,对被测服务器进行网络压力测试。本申请实施例中,测试虚拟机作为计算机系统的仿真器,能够通过软件模拟具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统,从而能提供物理计算机的功能,模拟实体测试机器对被测服务器进行网络压力测试。测试虚拟机通过虚拟化技术,将被测服务器的各种实体资源(例如CPU、内存、磁盘空间和网络适配器等)予以抽象和转换并呈现出来,并可供分割和组合为一个或多个电脑配置环境。
其中,如图8所示,该使用多台测试虚拟机模拟对应数量的实体测试机器,对被测服务器进行网络压力测试的步骤具体包括:
S131:将多台测试虚拟机的网络磁盘挂载到被测服务器上。
具体地,该将多台测试虚拟机的网络磁盘挂载到被测服务器上的步骤,具体包括:将每台测试虚拟机的网络磁盘挂载到测试虚拟机的预设磁盘目录中;使用预设磁盘挂载指令,控制被测服务器共享每台测试虚拟机的预设磁盘目录,以挂载网络磁盘。其中,该预测磁盘挂载指令为“mount nfs”。
S132:使用压力测试工具在预定测试时间内,控制多台测试虚拟机对被测服务器的网络磁盘进行网络压力测试。
S133:收集多台测试虚拟机对网络磁盘进行网络压力测试的测试结果。
本申请实施例提供的技术方案中,在确认测试虚拟机已开机进入作业状态后,被测服务器自动挂载测试测试虚拟机的网路磁盘,将被测服务器以”mount nfs”指令挂载测试虚拟机的网路磁盘,使其成为本地可存取的磁盘。在确认所有网路磁盘在被测服务器挂载成功后,被测服务器确定所有网路磁盘均挂载成功,即表示被测服务器与客户端服务器之间的网路连线正常,能够进行网络压力测试。
综上,本申请实施例提供的使用虚拟机进行网络压力测试的方法,通过设置具有模拟多台测试虚拟机功能的测试客户端,能够使用该测试客户端模拟多台测试虚拟机,每台测试虚拟机均能够模拟实体测试机器对被测服务器进行网络压力测试,这样根据被测服务器的网络数量,就能够设置对应数量的多台测试虚拟机,仿真大量客户端用户使用被测服务器上的网络资源;然后将被测服务器与多台测试虚拟机建立连接,就能够在被测服务器的网口处于满载的状态下对被测服务器自动执行网络压力测试。通过上述方法,测试人员能够以一台实体的测试客户端产生多台测试虚拟机,测试方式简单,耗费时间少,能够节省大量实体资源,节约成本、电力和人力。综上,本申请上述技术方案,能够解决现有技术中网络压力测试方法,需要架设实验机房并部署大量实体机器,导致的成本高昂,测试过程繁琐耗时的问题。
参见图9,图9为本发明实施例提供的第二种通过虚拟机进行网络压力测试的方法的流程示意图。该通过虚拟机进行网络压力测试的方法包括以下步骤:
S210:首先,建置测试客户端上的测试虚拟机测试环境,以一台性能较佳的服务器作为测试客户端,进行多台测试虚拟机的模拟。
S220:连接被测服务器与测试客户端的网路至同一交换机,使其为同一网路环境,以便互相存取。
S230:被测服务器判断被测服务器自身的网口数量,自动得到被测服务器的网口总数量后,决定将使用多少数量测试虚拟机;通常一个网口需要设置三个测试虚拟机做存取,以使每个网口处于满载状态。
S240:被测服务器登入测试客户端,将所需要的测试虚拟机开机,被测服务器会根据之前得到的需要进行测试的测试虚拟机数量,自动登录测试客户端,并将所需要数量的测试虚拟机开机。
S250:被测服务器侦测已开机进入作业的测试虚拟机,被测服务器会确认测试客户端上所有测试虚拟机是否已经开机完成并且进到作业状态。
S260:被测服务器通过网路挂载测试虚拟机的网路磁盘,被测服务器会透过网路挂载测试虚拟机上的分享磁盘,使其成为被测服务器本地可存取的磁盘。
S270:被测服务器执行测试脚本对网路磁盘进行网络压力测试,被测服务器在上述挂载网路磁盘的动作完成后开始执行磁盘的网络压力测试。
基于上述方法实施例的同一构思,本发明实施例还提出了使用虚拟机进行网络压力测试的系统,用于实现本发明的上述方法,由于该系统实施例解决问题的原理与方法相似,因此至少具有上述实施例的技术方案所带来的所有有益效果,在此不再一一赘述。
参见图10,图10为本发明实施例提供的一种使用虚拟机进行网络压力测试的系统的结构示意图。该使用虚拟机进行网络压力测试的系统用于网络压力测试系统,网络压力测试系统包括依次相连的测试客户端、网路交换机和被测服务器;其中,测试客户端具有模拟多台测试虚拟机的功能。如图10所示,该使用虚拟机进行网络压力测试的系统包括:
数量设置模块110,用于根据被测服务器的网口数量,设置测试客户端需要模拟的多台测试虚拟机的数量;
连接建立模块120,用于建立被测服务器与多台测试虚拟机之间的连接;
压力测试模块130,用于使用多台测试虚拟机模拟对应数量的实体测试机器,对被测服务器进行网络压力测试。
本申请实施例提供的使用虚拟机进行网络压力测试的系统,通过设置具有模拟多台测试虚拟机功能的测试客户端,能够使用该测试客户端模拟多台测试虚拟机,每台测试虚拟机均能够模拟实体测试机器对被测服务器进行网络压力测试,这样根据被测服务器的网络数量,就能够设置对应数量的多台测试虚拟机,仿真大量客户端用户使用被测服务器上的网络资源;然后将被测服务器与多台测试虚拟机建立连接,就能够在被测服务器的网口处于满载的状态下对被测服务器自动执行网络压力测试。通过上述方法,测试人员能够以一台实体的测试客户端产生多台测试虚拟机,测试方式简单,耗费时间少,能够节省大量实体资源,节约成本、电力和人力。综上,本申请上述技术方案,能够解决现有技术中网络压力测试方法,需要架设实验机房并部署大量实体机器,导致的成本高昂,测试过程繁琐耗时的问题。
作为一种优选的实施例,如图11所示,本申请实施例中,数量设置模块110具体包括:
指令发送子模块111,用于向被测服务器发送网口数量获取指令,获取被测服务器的网口数量;
数量计算子模块112,用于按照同一虚拟机群组内测试虚拟机数量与被测服务器的网口数量,计算得到测试客户端需要模拟的多台测试虚拟机的数量。
作为一种优选的实施例,如图12所示,本申请实施例中,上述连接建立模块120具体包括:
地址设置子模块121,用于设置测试客户端上测试虚拟机的固定IP地址;
虚拟机启动子模块122,用于启动测试客户端需要模拟的多台测试虚拟机;
地址侦测子模块123,用于使用网络诊断工具,侦测多台测试虚拟机的固定IP地址;
网络连接子模块124,用于使用多台测试虚拟机的固定IP地址,连接多台测试虚拟机与被测服务器的网口。
作为一种优选的实施例,如图13所示,上述压力测试模块130,具体包括:
磁盘挂载子模块131,用于将多台测试虚拟机的网络磁盘挂载到被测服务器上;
测试控制子模块132,用于使用压力测试工具在预定测试时间内,控制多台测试虚拟机对被测服务器的网络磁盘进行网络压力测试;
结果收集子模块133,用于收集多台测试虚拟机对网络磁盘进行网络压力测试的测试结果。
作为一种优选的实施例,如图14所示,上述虚拟机启动子模块122,具体包括:
登录控制子模块1221,用于控制被测服务器登录测试客户端;
开机控制子模块1222,用于通过被测服务器控制需要模拟的多台测试虚拟机开机启动。
参见图15,图15是本发明实施例提供的一种计算机可读存储介质。本发明实施例提供的计算机可读存储介质可以是PC、智能手机、平板电脑、电子书阅读器或便携式计算机等终端设备。
如图15所示,该计算机可读存储介质包括存储器1003、处理器1001、通信总线1002以及存储在存储器1003上的使用虚拟机进行网络压力测试的程序;通信总线1002用于实现处理器1001和存储器1003之间的连接通信;处理器1001用于执行使用虚拟机进行网络压力测试的程序,以实现如权上述任一项实施例所述的使用虚拟机进行网络压力测试的方法的步骤。
本领域技术人员能够了解,图15示出的可读存储介质,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图15所示,作为一种计算机存储介质的存储器1003可包括操作系统、网络通信模块以及上述使用虚拟机进行网络压力测试的程序。操作系统是管理和控制接口返回参数的校验设备硬件和软件资源的程序,支持上述资源自动检索程序以及其他软件和/或程序的运行。网络通信模块用于实现存储器1003内部各组件之间的通信,以及与该可读存储介质中其他硬件或软件之间的通信。
如图15所示,该计算机可读存储介质中,处理器1001用于执行存储器1003中存储的使用虚拟机进行网络压力测试的程序,实现以下步骤:根据被测服务器的网口数量,设置测试客户端需要模拟的多台测试虚拟机的数量;建立被测服务器与多台测试虚拟机之间的连接;使用多台测试虚拟机模拟对应数量的实体测试机器,对被测服务器进行网络压力测试。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
应当注意的是,在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的部件或步骤。位于部件之前的单词“一”或“一个”不排除存在多个这样的部件。本发明可以借助于包括有若干不同部件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (10)
1.一种使用虚拟机进行网络压力测试的方法,其特征在于,用于网络压力测试系统,所述网络压力测试系统包括依次相连的测试客户端、网路交换机和被测服务器;其中,所述测试客户端具有模拟多台测试虚拟机的功能;所述使用虚拟机进行网络压力测试的方法包括:
根据被测服务器的网口数量,设置所述测试客户端需要模拟的多台测试虚拟机的数量;
建立所述被测服务器与所述多台测试虚拟机之间的连接;
使用所述多台测试虚拟机模拟对应数量的实体测试机器,对所述被测服务器进行网络压力测试。
2.根据权利要求1所述的使用虚拟机进行网络压力测试的方法,其特征在于,所述根据被测服务器的网口数量,设置测试客户端需要模拟的多台测试虚拟机的数量的步骤,包括:
向所述被测服务器发送网口数量获取指令,获取所述被测服务器的网口数量;
按照同一虚拟机群组内测试虚拟机数量与所述被测服务器的网口数量,计算得到所述测试客户端需要模拟的多台测试虚拟机的数量。
3.根据权利要求1所述的使用虚拟机进行网络压力测试的方法,其特征在于,所述建立被测服务器与多台测试虚拟机之间的连接的步骤,包括:
设置所述测试客户端上测试虚拟机的固定IP地址;
启动所述测试客户端需要模拟的多台测试虚拟机;
使用所述多台测试虚拟机的固定IP地址,连接所述多台测试虚拟机与所述被测服务器的网口。
4.根据权利要求3所述的使用虚拟机进行网络压力测试的方法,其特征在于,所述启动测试客户端需要模拟的多台测试虚拟机的步骤,包括:
控制所述被测服务器登录所述测试客户端;
通过所述被测服务器控制所述需要模拟的多台测试虚拟机开机启动。
5.根据权利要求3所述的使用虚拟机进行网络压力测试的方法,其特征在于,在启动所述测试客户端需要模拟的多台测试虚拟机的步骤之后,所述方法还包括:
使用网络诊断工具,侦测所述多台测试虚拟机的固定IP地址;
当侦测到所述固定IP地址时,确定所述测试虚拟机进入作业状态,执行所述连接多台测试虚拟机与所述被测服务器的网口的步骤。
6.根据权利要求3所述的使用虚拟机进行网络压力测试的方法,其特征在于,所述使用多台测试虚拟机的固定IP地址,连接所述多台测试虚拟机与所述被测服务器的网口的步骤,包括:
设置所述被测服务器中所有网卡上各个网口的固定IP地址;
匹配所述网口的固定IP地址与所述多台测试虚拟机的固定IP地址;
当所述固定IP地址的匹配时,建立所述多台测试虚拟机与所述被测服务器的网口之间的连接。
7.根据权利要求3所述的使用虚拟机进行网络压力测试的方法,其特征在于,所述使用多台测试虚拟机模拟对应数量的实体测试机器,对被测服务器进行网络压力测试的步骤,包括:
将所述多台测试虚拟机的网络磁盘挂载到所述被测服务器上;
使用压力测试工具在预定测试时间内,控制所述多台测试虚拟机对所述被测服务器的网络磁盘进行网络压力测试;
收集所述多台测试虚拟机对所述网络磁盘进行网络压力测试的测试结果。
8.根据权利要求7所述的使用虚拟机进行网络压力测试的方法,其特征在于,所述将多台测试虚拟机的网络磁盘挂载到所述被测服务器上的步骤,包括:
将每台所述测试虚拟机的网络磁盘挂载到所述测试虚拟机的预设磁盘目录中;
使用预设磁盘挂载指令,控制所述被测服务器共享每台测试虚拟机的预设磁盘目录,以挂载所述网络磁盘。
9.一种使用虚拟机进行网络压力测试的系统,其特征在于,用于网络压力测试系统,所述网络压力测试系统包括依次相连的测试客户端、网路交换机和被测服务器;其中,所述测试客户端具有模拟多台测试虚拟机的功能;所述使用虚拟机进行网络压力测试的系统包括:
数量设置模块,用于根据被测服务器的网口数量,设置所述测试客户端需要模拟的多台测试虚拟机的数量;
连接建立模块,用于建立所述被测服务器与所述多台测试虚拟机之间的连接;
压力测试模块,用于使用所述多台测试虚拟机模拟对应数量的实体测试机器,对所述被测服务器进行网络压力测试。
10.一种计算机存储介质,其特征在于,包括:存储器。处理器、通信总线以及存储在所述存储器上的使用虚拟机进行网络压力测试的程序;
所述通信总线用于实现处理器和存储器之间的连接通信;
所述处理器用于执行所述使用虚拟机进行网络压力测试的程序,以实现如权利要求1-8中任一项所述的使用虚拟机进行网络压力测试方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011015593.0A CN112187574A (zh) | 2020-09-24 | 2020-09-24 | 使用虚拟机进行网络压力测试的方法、系统和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011015593.0A CN112187574A (zh) | 2020-09-24 | 2020-09-24 | 使用虚拟机进行网络压力测试的方法、系统和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112187574A true CN112187574A (zh) | 2021-01-05 |
Family
ID=73956622
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011015593.0A Withdrawn CN112187574A (zh) | 2020-09-24 | 2020-09-24 | 使用虚拟机进行网络压力测试的方法、系统和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112187574A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114205274A (zh) * | 2021-11-02 | 2022-03-18 | 北京百度网讯科技有限公司 | 网络设备的测试方法及其装置 |
CN114567578A (zh) * | 2022-03-14 | 2022-05-31 | 重庆紫光华山智安科技有限公司 | 一种压力测试方法、装置、测试平台及存储介质 |
CN114884856A (zh) * | 2022-07-11 | 2022-08-09 | 中国科学技术大学 | 基于测试功能虚拟化的可重构网络测试系统与方法 |
CN115941543A (zh) * | 2022-12-07 | 2023-04-07 | 武汉绿色网络信息服务有限责任公司 | 网关项目测试方法、装置、电子设备及存储介质 |
CN116132328A (zh) * | 2023-02-10 | 2023-05-16 | 北京安锐卓越信息技术股份有限公司 | 网络压力测试方法、装置、存储介质及电子设备 |
-
2020
- 2020-09-24 CN CN202011015593.0A patent/CN112187574A/zh not_active Withdrawn
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114205274A (zh) * | 2021-11-02 | 2022-03-18 | 北京百度网讯科技有限公司 | 网络设备的测试方法及其装置 |
CN114205274B (zh) * | 2021-11-02 | 2024-06-11 | 北京百度网讯科技有限公司 | 网络设备的测试方法及其装置 |
CN114567578A (zh) * | 2022-03-14 | 2022-05-31 | 重庆紫光华山智安科技有限公司 | 一种压力测试方法、装置、测试平台及存储介质 |
CN114567578B (zh) * | 2022-03-14 | 2023-09-26 | 重庆紫光华山智安科技有限公司 | 一种压力测试方法、装置、测试平台及存储介质 |
CN114884856A (zh) * | 2022-07-11 | 2022-08-09 | 中国科学技术大学 | 基于测试功能虚拟化的可重构网络测试系统与方法 |
CN114884856B (zh) * | 2022-07-11 | 2022-09-30 | 中国科学技术大学 | 基于测试功能虚拟化的可重构网络测试系统与方法 |
CN115941543A (zh) * | 2022-12-07 | 2023-04-07 | 武汉绿色网络信息服务有限责任公司 | 网关项目测试方法、装置、电子设备及存储介质 |
CN116132328A (zh) * | 2023-02-10 | 2023-05-16 | 北京安锐卓越信息技术股份有限公司 | 网络压力测试方法、装置、存储介质及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112187574A (zh) | 使用虚拟机进行网络压力测试的方法、系统和存储介质 | |
CN108768730B (zh) | 用于操作智能网卡的方法和装置 | |
CN111124850A (zh) | Mqtt服务器性能测试方法、系统、计算机设备及存储介质 | |
CN106919485B (zh) | 一种基于服务器上配置硬件测试工具的系统 | |
CN107277193B (zh) | 一种基板管理控制器地址管理方法、装置和系统 | |
CN112269697B (zh) | 一种设备存储性能测试方法、系统及相关装置 | |
CN101771565B (zh) | 单一服务器实现大批量或不同种基板管理控制器模拟方法 | |
CN107070752B (zh) | 一种长连接容量的测试方法及测试系统 | |
CN110362474A (zh) | 一种分布式游戏测试方法、系统、装置及存储介质 | |
CN101442448B (zh) | 刀片服务器测试系统及方法 | |
CN108833168B (zh) | 一种服务器集群环境网络系统及稳定性检测方法 | |
CN115525490A (zh) | 一种内存眼图测试方法、硬件调试设备及存储介质 | |
CN113852426A (zh) | 一种远程测试方法、装置及系统 | |
CN113849356B (zh) | 一种设备测试方法、装置、电子设备和存储介质 | |
CN109660386B (zh) | 一种半导体存储器老化测试系统软件升级方法 | |
CN114860271A (zh) | 一种pxe启动方法、系统、装置及可读存储介质 | |
CN101562532A (zh) | 一种基于网络环境自动获取计算机硬件信息的系统和方法 | |
CN113468045A (zh) | 一种服务器批量配置软件的测试系统、方法及组件 | |
CN109120433B (zh) | 用于容器化部署主机的方法和装置 | |
CN115454856A (zh) | 多应用的安全检测方法、装置、介质及电子设备 | |
CN111600751B (zh) | 一种数据中心管理方法及系统 | |
CN111221687B (zh) | 一种云存储测试系统和方法 | |
CN219916332U (zh) | 一种针对数据处理器dpu的性能测试系统 | |
CN109213487A (zh) | 一种数据获取方法及其相关设备 | |
CN117251297B (zh) | 一种设备分配方法及电子设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20210105 |
|
WW01 | Invention patent application withdrawn after publication |