CN110750445A - 一种yarn组件高可用性功能的测试方法、系统及设备 - Google Patents

一种yarn组件高可用性功能的测试方法、系统及设备 Download PDF

Info

Publication number
CN110750445A
CN110750445A CN201910862287.1A CN201910862287A CN110750445A CN 110750445 A CN110750445 A CN 110750445A CN 201910862287 A CN201910862287 A CN 201910862287A CN 110750445 A CN110750445 A CN 110750445A
Authority
CN
China
Prior art keywords
yarn
node
resourcemenager
command
switching
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
Application number
CN201910862287.1A
Other languages
English (en)
Inventor
赵明伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Wave Intelligent Technology Co Ltd
Original Assignee
Suzhou Wave Intelligent Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Suzhou Wave Intelligent Technology Co Ltd filed Critical Suzhou Wave Intelligent Technology Co Ltd
Priority to CN201910862287.1A priority Critical patent/CN110750445A/zh
Publication of CN110750445A publication Critical patent/CN110750445A/zh
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

本发明提出的一种YARN组件高可用性功能的测试方法、系统及设备,实现YARN主备ResourceManager切换的自动化测试,采用HA强制切换、模拟进程故障等操作命令来验证组件YARN的高可用性,同时选用Hadoop自带的基准测试工具TestDFSIO验证集群在发生主备切换后,YARN功能不受影响,并且保留测试过程中的日志,可对执行记录进行追溯分析。

Description

一种YARN组件高可用性功能的测试方法、系统及设备
技术领域
本发明涉及大数据技术领域,更具体的说是涉及一种YARN组件高可用性功能的测试方法、系统及设备。
背景技术
Apache Hadoop YARN(Yet Another Resource Negotiator,另一种资源协调者)是一种新的Hadoop资源管理器,它是一个通用资源管理系统,可为上层应用提供统一的资源管理和调度,它的引入为集群在利用率、资源统一管理和数据共享等方面带来了巨大好处。
YARN组件的高可用性功能是大数据集群的重要功能,承载着大数据平台资源管理和调度,是集群高可靠性的保障,因此YARN组件的HA功能测试是非常重要的环节。但是YARN组件在高可用性功能测试时,执行结果没有记录,只能采用手工测试,并且操作复杂耗时耗力。
发明内容
针对以上问题,本发明的目的在于提供一种YARN组件高可用性功能的测试方法、系统及设备。实现YARN主备ResourceManager切换的自动化测试,并且保留测试过程中的日志,可对执行记录进行追溯分析。
本发明为实现上述目的,通过以下技术方案实现:一种YARN组件高可用性功能的测试方法,包括:
通过YARN命令进行集群基础环境检查;
强制切换主备ResourceManager节点;
对强制切换后的ResourceManager节点进行集群功能验证;
模拟YARN的ResourceManager节点故障,并自动切换ResourceManager节点;
对自动切换后的ResourceManager节点进行集群功能验证;
生成测试日志。
进一步,所述ResourceManager节点的主备节点包括:主节点
ResourceManager1和备用节点ResourceManager2。
进一步,所述通过YARN命令进行集群基础环境检查包括:
在yarn用户下,执行预设的自动化shell脚本AutoTest_YarnHA.sh,通过yarn命令获取ResourceManager1、ResourceManager2的主备节点状态,并进行记录。
进一步,所述强制切换主备ResourceManager节点包括:
根据获取的ResourceManager1和ResourceManager2的主备状态,执行YARN强制切换ResourceManager的命令将ResourceManager2的状态切换为Active;
检查ResourceManager1的状态是否为Standy,如果是,再执行YARN强制切换ResourceManager的命令将ResourceManager1切换为Active;
检查ResourceManager1的状态是否为Active,若是,强制切换成功,若否,退出测试。
进一步,所述对强制切换后的ResourceManager节点进行集群功能验证包括:
ResourceManager的状态发生强制切换后,通过执行TestDFSIO工具的命令,运行MR的Job作业进行集群功能正常验证。
进一步,所述模拟YARN的ResourceManager节点故障,并自动切换
ResourceManager节点包括:
获取ResourceManager1的resourcemanager的进程号,通过kill-9命令杀死该进程;
查验YARN的ResourceManager2的状态是否进行了自动切换,若是,自动切换成功,若否,退出测试。
进一步,所述对自动切换后的ResourceManager节点进行集群功能验证包括:
ResourceManager节点自动切换成功后,通过执行TestDFSIO工具的命令,运行MR的Job作业进行集群功能正常验证。
进一步,所述生成测试日志包括:
通过执行命令./AutoTest_YarnHA.sh>日志.log,
将整个自动化测试执行过程记录到日志.log文件中。
相应的,本发明还公开了一种YARN组件高可用性功能的测试系统,包括:集群环境检查单元,用于通过YARN命令进行集群基础环境检查;
节点强制切换单元,用于强制切换主备ResourceManager节点;
集群功能验证单元,用于ResourceManager节点进行集群功能验证;
节点故障模拟单元,用于模拟YARN的ResourceManager节点故障,并自动切换ResourceManager节点;
日志生成单元,用于生成测试日志。
相应的,本发明还公开了一种YARN组件高可用性功能的测试设备,包括:存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上文任一项所述YARN组件高可用性功能的测试方法步骤。
对比现有技术,本发明有益效果在于:本发明提供了一种YARN组件高可用性功能的测试方法、系统及设备,通过自动化脚本的运用,不仅验证YARN组件具有高可用性,而且保留了执行日志,也提高了测试效率,节约人力资源,为集群的YARN高可用性测试提供了保证和依据。
本发明脚本以Shell脚本为开发语言,实现YARN主备ResourceManager切换的自动化测试,该方法主要采用HA强制切换、模拟进程故障等操作命令来验证组件YARN的高可用性,同时选用Hadoop自带的基准测试工具TestDFSIO验证集群在发生主备切换后,YARN功能不受影响,并且保留测试过程中的日志,可对执行记录进行追溯分析。
由此可见,本发明与现有技术相比,具有突出的实质性特点和显著的进步,其实施的有益效果也是显而易见的。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
附图1是本发明的方法流程图。
附图2是本发明的系统结构图。
具体实施方式
下面结合附图对本发明的具体实施方式做出说明。
实施例一:
如图1所示,本发明提供了一种YARN组件高可用性功能的测试方法,包括:
通过YARN命令进行集群基础环境检查。在yarn用户下,执行预设的自动化shell脚本AutoTest_YarnHA.sh,通过yarn命令获取ResourceManager1、ResourceManager2的主备节点状态,并进行记录。
强制切换主备ResourceManager节点。其中,ResourceManager节点的主备节点包括:主节点ResourceManager1和备用节点ResourceManager2。首先,根据获取的ResourceManager1和ResourceManager2的主备状态,执行YARN强制切换ResourceManager的命令将ResourceManager2的状态切换为Active;然后,检查ResourceManager1的状态是否为Standy,如果是,再执行YARN强制切换ResourceManager的命令将ResourceManager1切换为Active;最后,检查ResourceManager1的状态是否为Active,若是,强制切换成功,若否,退出测试。
对强制切换后的ResourceManager节点进行集群功能验证。ResourceManager的状态发生强制切换后,通过执行TestDFSIO工具的命令,运行MR的Job作业进行集群功能正常验证。
模拟YARN的ResourceManager节点故障,并自动切换ResourceManager节点。首先,获取ResourceManager1的resourcemanager的进程号,通过kill-9命令杀死该进程;然后,查验YARN的ResourceManager2的状态是否进行了自动切换,若是,自动切换成功,若否,退出测试。
对自动切换后的ResourceManager节点进行集群功能验证。
ResourceManager节点自动切换成功后,通过执行TestDFSIO工具的命令,运行MR的Job作业进行集群功能正常验证。
生成测试日志。通过执行命令./AutoTest_YarnHA.sh>日志.log,
将整个自动化测试执行过程记录到日志.log文件中。
实施例二:
本发明提供了一种YARN组件高可用性功能的测试方法,包括如下步骤:
步骤一:集群基础环境检查。
在YARN用户下,执行自动化shell脚本AutoTest_YarnHA.sh,通过YARN命令获取ResourceManager1、ResourceManager2的主备节点状态,并进行记录,其中,ResourceManager1、ResourceManager2初始状态分别为Active、Standy。
脚本内容为:
#获取rm1节点的主备状态
rm1_Status=$(yarn rmadmin–getServiceState rm1)
#获取rm2节点的主备状态
rm2_Status=$(yarn rmadmin–getServiceState rm2)
步骤二:强制切换主备ResourceManager。
根据集群环境检查时,获取的ResourceManager1和ResourceManager2的主备状态,执行YARN强制切换ResourceManager的命令将ResourceManager2切换为Active;检查ResourceManager1节点切换是否成功;检查无误后,再执行YARN强制切换ResourceManager的命令将ResourceManager1切换为Active;检查ResourceManager1节点切换是否成功。
脚本内容为:
#执行强制rm1强制切换到rm2
ForceChange=$(yarn rmadmin-transitionToActive rm2–forcemanual)
步骤三:强制切换后集群功能验证。
对ResourceManager状态发生强制切换后,通过执行TestDFSIO工具的命令,运行MR的Job作业进行集群功能正常验证。
脚本内容为:
#寻找测试JAR包位置,返回给Path
Path=$(find/-namehadoop-mapreduce-client-jobclient-2.7.3.2.6.4.0-91-tests.jar)
#运行基准测试
hadoop jar$Path TestDFSIO-D mapreduce.job.queuename="default"-write-nrFiles 10-size 128KB
步骤四:模拟YARN的ResourceManager节点故障。
获取ResourceManager1节点的resourcemanager的进程号,通过kill-9命令杀死该进程。再查验YARN的ResourceManager2的状态是否进行了自动切换。
脚本内容为:
#强制杀死ResourceManager的进程
ps-ef|grep ResourceManager|grep-v grep|awk'{print$2}'|xargskill-9
步骤五:自动切换后集群功能验证。
对ResourceManager状态发生自动切换后,通过执行TestDFSIO工具的命令,运行MR的Job作业进行集群功能正常验证。
脚本内容为:
#运行基准测试
hadoop jar$Path TestDFSIO-D mapreduce.job.queuename="default"-write-nrFiles 10-size 128KB
步骤六:生成日志。
将整个自动化测试执行过程记录到日志.log。
#执行脚本
./AutoTest_YarnHA.sh>日志.log
相应的,如图2所示,在上述实施例的基础上,本发明还公开了一种YARN组件高可用性功能的测试系统,包括:
集群环境检查单元,用于通过YARN命令进行集群基础环境检查;
节点强制切换单元,用于强制切换主备ResourceManager节点;
集群功能验证单元,用于ResourceManager节点进行集群功能验证;
节点故障模拟单元,用于模拟YARN的ResourceManager节点故障,并自动切换ResourceManager节点;
日志生成单元,用于生成测试日志。
相应的,本发明还公开了一种YARN组件高可用性功能的测试设备,包括:存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上文任一项所述YARN组件高可用性功能的测试方法步骤。
本领域的技术人员可以清楚地了解到本发明实施例中的技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中如U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质,包括若干指令用以使得一台计算机终端(可以是个人计算机,服务器,或者第二终端、网络终端等)执行本发明各个实施例所述方法的全部或部分步骤。本说明书中各个实施例之间相同相似的部分互相参见即可。尤其,对于终端实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例中的说明即可。
在本发明所提供的实施例中,应该理解到,所揭露的系统、系统和方法,可以通过其它的方式实现。例如,以上所描述的系统实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,系统或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个单元中。
同理,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
结合附图和具体实施例,对本发明作进一步说明。应理解,这些实施例仅用于说明本发明而不用于限制本发明的范围。此外应理解,在阅读了本发明讲授的内容之后,本领域技术人员可以对本发明作各种改动或修改,这些等价形式同样落于本申请所限定的范围。

Claims (10)

1.一种YARN组件高可用性功能的测试方法,其特征在于,包括:
通过YARN命令进行集群基础环境检查;
强制切换主备ResourceManager节点;
对强制切换后的ResourceManager节点进行集群功能验证;
模拟YARN的ResourceManager节点故障,并自动切换ResourceManager节点;
对自动切换后的ResourceManager节点进行集群功能验证;
生成测试日志。
2.根据权利要求1所述的YARN组件高可用性功能的测试方法,其特征在于:所述ResourceManager节点的主备节点包括:主节点ResourceManager1和备用节点ResourceManager2。
3.根据权利要求2所述的YARN组件高可用性功能的测试方法,其特征在于:所述通过YARN命令进行集群基础环境检查包括:
在yarn用户下,执行预设的自动化shell脚本AutoTest_YarnHA.sh,通过yarn命令获取ResourceManager1、ResourceManager2的主备节点状态,并进行记录。
4.根据权利要求3所述的YARN组件高可用性功能的测试方法,其特征在于:所述强制切换主备ResourceManager节点包括:
根据获取的ResourceManager1和ResourceManager2的主备状态,执行YARN强制切换ResourceManager的命令将ResourceManager2的状态切换为Active;
检查ResourceManager1的状态是否为Standy,如果是,再执行YARN强制切换ResourceManager的命令将ResourceManager1切换为Active;
检查ResourceManager1的状态是否为Active,若是,强制切换成功,若否,退出测试。
5.根据权利要求1所述的YARN组件高可用性功能的测试方法,其特征在于:所述对强制切换后的ResourceManager节点进行集群功能验证包括:
ResourceManager的状态发生强制切换后,通过执行TestDFSIO工具的命令,运行MR的Job作业进行集群功能正常验证。
6.根据权利要求2所述的YARN组件高可用性功能的测试方法,其特征在于:所述模拟YARN的ResourceManager节点故障,并自动切换ResourceManager节点包括:
获取ResourceManager1的resourcemanager的进程号,通过kill-9命令杀死该进程;
查验YARN的ResourceManager2的状态是否进行了自动切换,若是,自动切换成功,若否,退出测试。
7.根据权利要求1所述的YARN组件高可用性功能的测试方法,其特征在于:所述对自动切换后的ResourceManager节点进行集群功能验证包括:
ResourceManager节点自动切换成功后,通过执行TestDFSIO工具的命令,运行MR的Job作业进行集群功能正常验证。
8.根据权利要求1所述的YARN组件高可用性功能的测试方法,其特征在于:所述生成测试日志包括:
通过执行命令./AutoTest_YarnHA.sh>日志.log,
将整个自动化测试执行过程记录到日志.log文件中。
9.一种YARN组件高可用性功能的测试系统,其特征在于,包括:
集群环境检查单元,用于通过YARN命令进行集群基础环境检查;
节点强制切换单元,用于强制切换主备ResourceManager节点;
集群功能验证单元,用于ResourceManager节点进行集群功能验证;
节点故障模拟单元,用于模拟YARN的ResourceManager节点故障,并自动切换ResourceManager节点;
日志生成单元,用于生成测试日志。
10.一种YARN组件高可用性功能的测试设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至8任一项所述YARN组件高可用性功能的测试方法步骤。
CN201910862287.1A 2019-09-12 2019-09-12 一种yarn组件高可用性功能的测试方法、系统及设备 Withdrawn CN110750445A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910862287.1A CN110750445A (zh) 2019-09-12 2019-09-12 一种yarn组件高可用性功能的测试方法、系统及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910862287.1A CN110750445A (zh) 2019-09-12 2019-09-12 一种yarn组件高可用性功能的测试方法、系统及设备

Publications (1)

Publication Number Publication Date
CN110750445A true CN110750445A (zh) 2020-02-04

Family

ID=69276369

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910862287.1A Withdrawn CN110750445A (zh) 2019-09-12 2019-09-12 一种yarn组件高可用性功能的测试方法、系统及设备

Country Status (1)

Country Link
CN (1) CN110750445A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111338871A (zh) * 2020-02-27 2020-06-26 苏州浪潮智能科技有限公司 分布式文件系统Qzone高可用性测试方法、系统、设备及存储介质
CN111880934A (zh) * 2020-07-29 2020-11-03 北京浪潮数据技术有限公司 一种资源管理方法、装置、设备及可读存储介质
CN113590420A (zh) * 2021-07-28 2021-11-02 杭州玳数科技有限公司 集群状态监管方法及装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111338871A (zh) * 2020-02-27 2020-06-26 苏州浪潮智能科技有限公司 分布式文件系统Qzone高可用性测试方法、系统、设备及存储介质
CN111880934A (zh) * 2020-07-29 2020-11-03 北京浪潮数据技术有限公司 一种资源管理方法、装置、设备及可读存储介质
CN113590420A (zh) * 2021-07-28 2021-11-02 杭州玳数科技有限公司 集群状态监管方法及装置
CN113590420B (zh) * 2021-07-28 2024-04-12 杭州玳数科技有限公司 集群状态监管方法及装置

Similar Documents

Publication Publication Date Title
US10872034B2 (en) Method, device and computer program product for executing test cases
CN110309071B (zh) 测试代码的生成方法及模块、测试方法及系统
US9465718B2 (en) Filter generation for load testing managed environments
US9569325B2 (en) Method and system for automated test and result comparison
CN111124850A (zh) Mqtt服务器性能测试方法、系统、计算机设备及存储介质
CN107590075B (zh) 一种软件测试方法及装置
CN110750445A (zh) 一种yarn组件高可用性功能的测试方法、系统及设备
CN110750458A (zh) 大数据平台测试方法、装置、可读存储介质及电子设备
CN103235756A (zh) 一种面向嵌入式系统分区应用程序软件的仿真测试方法
CN112241360A (zh) 一种测试用例生成方法、装置、设备及存储介质
CN111813495A (zh) 节点测试方法和装置、存储介质和电子装置
CN110286852A (zh) 双控构架分布式存储系统、数据读取方法、装置和存储介质
CN114064465A (zh) 一种基于Linux云平台的稳定性测试方法
CN103176903B (zh) MapReduce分布式系统程序的测试方法及设备
CN109344059B (zh) 一种服务器压力测试方法及装置
CN114143235A (zh) Nfv自动测试方法、装置、设备及存储介质
CN111338871A (zh) 分布式文件系统Qzone高可用性测试方法、系统、设备及存储介质
CN114238091A (zh) 一种常驻型交互式服务集群测试方法及系统
CN111045923A (zh) 一种hbase组件高可用性的测试方法、系统及设备
CN111177001A (zh) 一种Flink组件高可用性的自动测试方法、系统及设备
CN110851348A (zh) 一种hdfs组件高可用性的自动测试方法及系统
CN111309297A (zh) 脚本开发系统及方法
CN111241437B (zh) 数据处理方法、装置、服务端以及存储介质
CN116089200A (zh) 基于ceph的存储系统健壮性测试方法、装置、设备及介质
CN111209172B (zh) 一种hl-100推理卡的压力测试方法、系统及设备

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: 20200204

WW01 Invention patent application withdrawn after publication