多节点beegfs文件系统自动化异常测试方法及装置
技术领域
1.本发明属于自动化测试技术领域,具体涉及一种多节点beegfs文件系统自动化异常测试方法及装置。
背景技术:
2.iops,是input output per second的简称,每秒的输入输出量,又称吞吐量。buddy mirror,是一种镜像名称。
3.beegfs,是一种并行群集文件系统,将用户数据透明地分布到多个服务器上,通过增加系统中的服务器和磁盘数量,可以简单地将文件系统的性能和容量扩展到所需要的级别。
4.随着信息化的高速发展,云计算、大数据随着计算规模的增加,存储逐渐成为系统的瓶颈,而并行文件系统beegfs可提供高带宽和iops,并且集群中元数据和存储节点可通过buddy mirror实现数据备份冗余,beegfs产品除了功能和性能外,产品的数据安全性也至关重要,因此在出厂前需要对产品做各种异常测试并检测确保数据不丢失。
5.beegfs文系统正在写数据时需要人工对服务器做关机、重启、停止网口、停止元数据服务,待环境恢复正常后再检查数据是否有丢失。人工对服务器做关机、重启、停止网口和停止元数据服务需要投入大量的人力,且效率不高。
6.此为现有技术的不足,因此,针对现有技术中的上述缺陷,提供一种多节点beegfs文件系统自动化异常测试方法及装置,是非常有必要的。
技术实现要素:
7.针对现有技术的上述beegfs文系统正在写数据时需要人工对服务器进行繁琐的操作,需要投入大量的人力,效率不高的缺陷,本发明提供一种多节点beegfs文件系统自动化异常测试方法及装置,以解决上述技术问题。
8.第一方面,本发明提供一种多节点beegfs文件系统自动化异常测试方法,包括如下步骤:
9.s1.设定beegfs文件系统所在集群为目标集群,配置目标集群的测试环境,对目标集群中各节点进行环境检查,并当环境检查异常时记录操作结果至日志文件中;
10.s2.当环境检查正常时,在目标集群客户端执行自动化异常测试,在向客户端beegfs挂载点写入数据持续设定时间段后,执行异常操作步骤,并记录异常操作步骤至日志文件中;
11.s3.自动化异常测试结束后,恢复beegfs文件系统,对目标集群中各节点进行二次测试环境检查,并将检查结果记录至日志文件中。
12.进一步地,步骤s1具体步骤如下:
13.s11.设定beegfs文件系统所在集群为目标集群,设置目标集群中客户端可免密登录各节点;所述节点包括元数据节点和存储节点;
14.s12.对目标集群中各节点启动测试前的环境检查;
15.s13.检查beegfs挂载点是否正常,检查目标集群客户端与各节点的通信状态是否正常,检查各元数据节点是否正常;
16.s14.判断测试前的环境检查结果是否正常;
17.若是,进入步骤s2;
18.若否,进入步骤s15;
19.s15.在日志文件中记录环境检查异常的操作结果,退出异常测试。设置客户端可免密登录各节点,保证自动化异常测试的顺利进行,避免人工输入密码的繁琐和时间,提高自动化测试效率,测试前的环境检查保障自动化异常测试的顺利进行。
20.进一步地,步骤s13具体步骤如下:
21.s131.在目标集群客户端获取异常测试循环次数;
22.s132.目标集群客户端检查beegfs挂载点是否正常;
23.s133.目标集群客户端查询与集群中各节点的通信状态;
24.s134.目标集群客户端查询元数据节点的元数据是否正常;
25.s135.目标集群客户端检查主备元数据在线状态;
26.步骤s14中,当beegfs挂载点不正常,存在节点与客户端无法通信,存在某存储节点的元数据异常,主备元数据在线状态异常中出现任一种状况时,判定测试前的环境检查结果不正常,进入步骤s15。测试前的环境检查通过测试脚本实现,异常测试循环次数可通过客户端获取用户的输入,也可提前设定在测试脚本中。
27.进一步地,步骤s132中目标集群客户端检查beegfs挂载点是否正常;具体如下:
28.目标集群客户端检查beegfs挂载点是否状态正常,检查beegfs挂载点是否可正常访问,并在beegfs挂载点为正常挂载点,且beegfs挂载点可正常访问时,判定beegfs挂载点正常,以及在beegfs挂载点为非正常挂载点,或beegfs挂载点不可正常访问时,判定beegfs挂载点异常。beegfs挂载点正常首先beegfs挂载点需要状态正常,即挂载成功,还需要可以正常访问。
29.进一步地,步骤s12中,对目标集群中各节点启动测试前的环境检查之前还包括如下步骤:
30.在目标集群客户端获取异常测试循环次数;
31.目标集群客户端检查是否有正在运行的vdbench脚本;
32.若是,获取正在运行的vdbench脚本的进程号,并关闭该vdbench脚本对应vdbench进程,并记录操作结果到日志文件;
33.若否,进入步骤s12。保证自动化异常测试的循环次数准确,防止有正在进行的vdbench脚本对当前的自动化异常测试进行干扰。
34.进一步地,步骤s2具体步骤如下:
35.s21.当环境检查正常时,目标集群客户端执行异常自动化测试;
36.s22.目标集群客户端运行vdbench脚本向客户端beegfs挂载点写入数据;
37.s23.目标集群客户端判断写入数据持续时间是否达到设定时间段;
38.若是,进入步骤s24;
39.若否,返回步骤s23;
40.s24.执行异常操作步骤,并记录异常操作步骤至日志文件。向客户端beegfs挂载点写入数据达到设定时间段后,在仍然向向客户端beegfs挂载点写入数据的同时,执行异常操作步骤。
41.进一步地,所述异常操作步骤包对各节点进行关机、重启、关闭网口或停止元数据服务。异常操作步骤包括但不限于上述种类,执行异常操作步骤可对多节点beegfs文件系统安全性进行验证。
42.进一步地,步骤s24中,目标集群客户端对任一元数据节点执行异常操作步骤,或者对所有元数据节点同时执行异常操作步骤;
43.或者,目标集群客户端对任一存储节点执行异常操作步骤,或者对所有存储节点同时执行异常操作步骤。通过执行异常操作步骤,可对元数据节点及存储节点安全性进行分别验证。
44.进一步地,步骤s3具体步骤如下:
45.s31.执行异常操作步骤时间达到时间阈值时,执行异常操作步骤的相反操作,恢复beegfs文件系统;
46.s32.对目标集群中各节点启动二次测试环境检查;
47.s33.检查beegfs挂载点是否正常,检查目标集群客户端与各节点的通信状态是否正常,检查各元数据节点是否正常;
48.s34.判断二次测试环境检查结果是否正常;
49.若是,进入步骤s35;
50.若否,进入步骤s36;
51.s35.判断异常测试循环次数是否已完成;
52.若是,测试结束,输出日志文件;
53.若否,返回步骤s22;
54.s36.在日志文件中记录二次测试环境检查异常的操作结果,结束。异常操作步骤的相反操作,如步骤s24中执行的异常操作步骤为关机,则此时,步骤s31中,执行关机的相反操作即开机操作;若异常操作步骤为关闭网卡,则执行关闭网卡的相反操作及开启网卡操作;若异常操作步骤为停止元数据服务,则执行停止元数据服务的相反操作即开启元数据服务。
55.第二方面,本发明提供一种多节点beegfs文件系统自动化异常测试装置,包括:
56.测试环境检查模块,用于设定beegfs文件系统所在集群为目标集群,配置目标集群的测试环境,对目标集群中各节点进行环境检查,并当环境检查异常时记录操作结果至日志文件中;
57.异常测试模块,用于当环境检查正常时,在目标集群客户端执行自动化异常测试,在向客户端beegfs挂载点写入数据持续设定时间段后,执行异常操作步骤,并记录异常操作步骤至日志文件中;
58.二次测试环境检查模块,用于自动化异常测试结束后,恢复beegfs文件系统,对目标集群中各节点进行二次测试环境检查,并将检查结果记录至日志文件中。
59.进一步地,测试环境检查模块包括:
60.免密登录设置单元,用于设定beegfs文件系统所在集群为目标集群,设置目标集
群中客户端可免密登录各节点;所述节点包括元数据节点和存储节点;
61.环境检查启动单元,用于对目标集群中各节点启动测试前的环境检查;
62.环境检查单元,用于检查beegfs挂载点是否正常,检查目标集群客户端与各节点的通信状态是否正常,检查各元数据节点是否正常;
63.环境检查判断单元,用于判断测试前的环境检查结果是否正常;
64.环境检查异常记录单元,用于当测试前环境检查结果不正常时,在日志文件中记录环境检查异常的操作结果,退出异常测试。
65.进一步地,环境检查单元包括:
66.循环测试获取子单元,用于在目标集群客户端获取异常测试循环次数;
67.挂载点检查子单元,用于目标集群客户端检查beegfs挂载点是否正常;
68.通信状态检查子单元,用于目标集群客户端查询与集群中各节点的通信状态;
69.元数据查询子单元,用于目标集群客户端查询元数据节点的元数据是否正常;
70.元数据主备在线状态检查子单元,用于目标集群客户端检查主备元数据在线状态。
71.进一步地,异常测试模块包括:
72.异常自动化测试启动单元,用于当环境检查正常时,目标集群客户端执行异常自动化测试;
73.挂载点数据写入单元,用于目标集群客户端运行vdbench脚本向客户端beegfs挂载点写入数据;
74.写入时间判断单元,用于目标集群客户端判断写入数据持续时间是否达到设定时间段;
75.异常操作步骤执行单元,用于当写入持续时间达到设定时间段时,执行异常操作步骤,并记录异常操作步骤至日志文件。
76.进一步地,二次测试环境检查模块包括:
77.beegfs文件系统恢复单元,用于执行异常操作步骤时间达到时间阈值时,执行异常操作步骤的相反操作,恢复beegfs文件系统;
78.二次环境检查启动单元,用于对目标集群中各节点启动二次测试环境检查;
79.二次环境检查单元,用于检查beegfs挂载点是否正常,检查目标集群客户端与各节点的通信状态是否正常,检查各元数据节点是否正常;
80.二次环境检查判断单元,用于判断二次测试环境检查结果是否正常;
81.循环次数判断单元,用于在二次环境检查结果正常时,判断异常测试循环次数是否已完成;
82.结果输出单元,用于在异常测试循环次数完成时,结束测试,输出日志文件;
83.二次环境检查异常记录单元,用于当二次环境检查结果不正常时,在日志文件中记录二次测试环境检查异常的操作结果。
84.本发明的有益效果在于,
85.本发明提供的多节点beegfs文件系统自动化异常测试方法及装置,实现beegfs文件系统自动化异常测试,测试效率高,降低人工成本,并避免了人为测试出现判断失误的问题。
86.此外,本发明设计原理可靠,结构简单,具有非常广泛的应用前景。
87.由此可见,本发明与现有技术相比,具有突出的实质性特点和显著的进步,其实施的有益效果也是显而易见的。
附图说明
88.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
89.图1是本发明多节点beegfs文件系统自动化异常测试方法流程示意图一。
90.图2是本发明多节点beegfs文件系统自动化异常测试方法流程示意图二。
91.图3为本发明多节点beegfs文件系统自动化异常测试装置示意图。
92.图中,1
‑
测试环境检查模块;1.1
‑
免密登录设置单元;1.2
‑
环境检查启动单元;1.3
‑
环境检查单元;1.4
‑
环境检查判断单元;1.5
‑
环境检查异常记录单元;2
‑
异常测试模块;2.1
‑
异常自动化测试启动单元;2.2
‑
挂载点数据写入单元;2.3
‑
写入时间判断单元;2.4
‑
异常操作步骤执行单元;3
‑
二次测试环境检查模块;3.1
‑
beegfs文件系统恢复单元;3.2
‑
二次环境检查启动单元;3.3
‑
二次环境检查单元;3.4
‑
二次环境检查判断单元;3.5
‑
循环次数判断单元;3.6
‑
结果输出单元;3.7
‑
二次环境检查异常记录单元。
具体实施方式
93.为了使本技术领域的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
94.vdbench是一个i/o工作负载生成器,用于验证数据完整性和度量直接附加和网络连接的存储的性能。它是一个免费的工具,容易使用,而且常常用于测试和基准测试。可以使用vdbench测试磁盘和文件系统的读写性能。
95.实施例1:
96.如图1所示,本发明提供一种多节点beegfs文件系统自动化异常测试方法,包括如下步骤:
97.s1.设定beegfs文件系统所在集群为目标集群,配置目标集群的测试环境,对目标集群中各节点进行环境检查,并当环境检查异常时记录操作结果至日志文件中;
98.s2.当环境检查正常时,在目标集群客户端执行自动化异常测试,在向客户端beegfs挂载点写入数据持续设定时间段后,执行异常操作步骤,并记录异常操作步骤至日志文件中;
99.s3.自动化异常测试结束后,恢复beegfs文件系统,对目标集群中各节点进行二次测试环境检查,并将检查结果记录至日志文件中。
100.实施例2:
101.如图2所示,本发明提供一种多节点beegfs文件系统自动化异常测试方法,包括如
下步骤:
102.s1.设定beegfs文件系统所在集群为目标集群,配置目标集群的测试环境,对目标集群中各节点进行环境检查,并当环境检查异常时记录操作结果至日志文件中;具体步骤如下:
103.s11.设定beegfs文件系统所在集群为目标集群,设置目标集群中客户端可免密登录各节点;所述节点包括元数据节点和存储节点;
104.s12.对目标集群中各节点启动测试前的环境检查;
105.s13.检查beegfs挂载点是否正常,检查目标集群客户端与各节点的通信状态是否正常,检查各元数据节点是否正常;
106.s14.判断测试前的环境检查结果是否正常;
107.若是,进入步骤s2;
108.若否,进入步骤s15;
109.s15.在日志文件中记录环境检查异常的操作结果,退出异常测试;
110.s2.当环境检查正常时,在目标集群客户端执行自动化异常测试,在向客户端beegfs挂载点写入数据持续设定时间段后,执行异常操作步骤,并记录异常操作步骤至日志文件中;具体步骤如下:
111.s21.当环境检查正常时,目标集群客户端执行异常自动化测试;
112.s22.目标集群客户端运行vdbench脚本向客户端beegfs挂载点写入数据;
113.s23.目标集群客户端判断写入数据持续时间是否达到设定时间段;
114.若是,进入步骤s24;
115.若否,返回步骤s23;
116.s24.执行异常操作步骤,并记录异常操作步骤至日志文件;
117.s3.自动化异常测试结束后,恢复beegfs文件系统,对目标集群中各节点进行二次测试环境检查,并将检查结果记录至日志文件中;具体步骤如下:
118.s31.执行异常操作步骤时间达到时间阈值时,执行异常操作步骤的相反操作,恢复beegfs文件系统;
119.s32.对目标集群中各节点启动二次测试环境检查;
120.s33.检查beegfs挂载点是否正常,检查目标集群客户端与各节点的通信状态是否正常,检查各元数据节点是否正常;
121.s34.判断二次测试环境检查结果是否正常;
122.若是,进入步骤s35;
123.若否,进入步骤s36;
124.s35.判断异常测试循环次数是否已完成;
125.若是,测试结束,输出日志文件;
126.若否,返回步骤s22;
127.s36.在日志文件中记录二次测试环境检查异常的操作结果,结束。
128.实施例3:
129.如图2所示,本发明提供一种多节点beegfs文件系统自动化异常测试方法,包括如下步骤:
130.s1.设定beegfs文件系统所在集群为目标集群,配置目标集群的测试环境,对目标集群中各节点进行环境检查,并当环境检查异常时记录操作结果至日志文件中;具体步骤如下:
131.s11.设定beegfs文件系统所在集群为目标集群,设置目标集群中客户端可免密登录各节点;所述节点包括元数据节点和存储节点;
132.在目标集群客户端获取异常测试循环次数;
133.目标集群客户端检查是否有正在运行的vdbench脚本;
134.若是,获取正在运行的vdbench脚本的进程号,并关闭该vdbench脚本对应vdbench进程,并记录操作结果到日志文件;
135.若否,进入步骤s12;
136.s12.对目标集群中各节点启动测试前的环境检查;
137.s13.检查beegfs挂载点是否正常,检查目标集群客户端与各节点的通信状态是否正常,检查各元数据节点是否正常;具体步骤如下:
138.s131.在目标集群客户端获取异常测试循环次数;如可设定异常测试循环次数为n;
139.s132.目标集群客户端检查beegfs挂载点是否正常;目标集群客户端检查beegfs挂载点是否正常;具体如下:
140.目标集群客户端检查beegfs挂载点是否状态正常,检查beegfs挂载点是否可正常访问,并在beegfs挂载点为正常挂载点,且beegfs挂载点可正常访问时,判定beegfs挂载点正常,以及在beegfs挂载点为非正常挂载点,或beegfs挂载点不可正常访问时,判定beegfs挂载点异常;通过mountpoint命令可检查beegfs挂载点是否正常;
141.s133.目标集群客户端查询与集群中各节点的通信状态;通过beegfs
‑
check
‑
servers命令查询客户端与集群中各个节点的通信状态;
142.s134.目标集群客户端查询元数据节点的元数据是否正常;通过beegfs
‑
fsck
‑‑
checkfs
–
readonly命令查询元数据节点数据是否正常;
143.s135.目标集群客户端检查主备元数据在线状态;通过beegfs
‑
ctl
‑‑
listtargets
‑‑
nodetype=meta
‑‑
state
‑‑
mirrorgroups检查元数据buddy mirror主备节点在线状态是否正常;
144.s14.判断测试前的环境检查结果是否正常;当beegfs挂载点不正常,存在节点与客户端无法通信,存在某存储节点的元数据异常,主备元数据在线状态异常中出现任一种状况时,判定测试前的环境检查结果不正常,进入步骤s15;
145.若是,进入步骤s2;
146.若否,进入步骤s15;
147.s15.在日志文件中记录环境检查异常的操作结果,退出异常测试;
148.s2.当环境检查正常时,在目标集群客户端执行自动化异常测试,在向客户端beegfs挂载点写入数据持续设定时间段后,执行异常操作步骤,并记录异常操作步骤至日志文件中;具体步骤如下:
149.s21.当环境检查正常时,目标集群客户端执行异常自动化测试;
150.s22.目标集群客户端运行vdbench脚本向客户端beegfs挂载点写入数据;
151.s23.目标集群客户端判断写入数据持续时间是否达到设定时间段;
152.若是,进入步骤s24;
153.若否,返回步骤s23;
154.s24.执行异常操作步骤,并记录异常操作步骤至日志文件;所述异常操作步骤包对各节点进行关机、重启、关闭网口或停止元数据服务;目标集群客户端对任一元数据节点执行异常操作步骤,或者对所有元数据节点同时执行异常操作步骤;
155.或者,目标集群客户端对任一存储节点执行异常操作步骤,或者对所有存储节点同时执行异常操作步骤;
156.s3.自动化异常测试结束后,恢复beegfs文件系统,对目标集群中各节点进行二次测试环境检查,并将检查结果记录至日志文件中;具体步骤如下:
157.s31.执行异常操作步骤时间达到时间阈值时,执行异常操作步骤的相反操作,恢复beegfs文件系统;
158.s32.对目标集群中各节点启动二次测试环境检查;
159.s33.检查beegfs挂载点是否正常,检查目标集群客户端与各节点的通信状态是否正常,检查各元数据节点是否正常;
160.s34.判断二次测试环境检查结果是否正常;
161.若是,进入步骤s35;
162.若否,进入步骤s36;
163.s35.判断异常测试循环次数是否已完成;
164.若是,测试结束,输出日志文件;
165.若否,返回步骤s22;
166.s36.在日志文件中记录二次测试环境检查异常的操作结果,结束。
167.在上述实施例3中,以两个元数据节点通过buddy mirror做镜像,两个存储节点通过buddy mirror做镜像,目标集群客户端与元数据节点和存储节点配置免密登录,对存储节点和元数据节点进行自动化异常测试,测试存储节点及元数据节点的数据安全性;
168.步骤s24中,目标集群客户端对一个元数据节点,或者两个元数据节点执行关机、重启、停止管理服务监测心跳的网口、停止元数据服务;
169.或者,目标集群客户端对一个存储节点,或者两个存储节点执行关机、重启、停止管理服务监测心跳的网口、停止元数据服务。
170.实施例4:
171.如图3所示,本发明提供一种多节点beegfs文件系统自动化异常测试装置,包括:
172.测试环境检查模块1,用于设定beegfs文件系统所在集群为目标集群,配置目标集群的测试环境,对目标集群中各节点进行环境检查,并当环境检查异常时记录操作结果至日志文件中;测试环境检查模块1包括:
173.免密登录设置单元1.1,用于设定beegfs文件系统所在集群为目标集群,设置目标集群中客户端可免密登录各节点;所述节点包括元数据节点和存储节点;
174.环境检查启动单元1.2,用于对目标集群中各节点启动测试前的环境检查;
175.环境检查单元1.3,用于检查beegfs挂载点是否正常,检查目标集群客户端与各节点的通信状态是否正常,检查各元数据节点是否正常;环境检查单元1.3包括:
176.循环测试获取子单元,用于在目标集群客户端获取异常测试循环次数;
177.挂载点检查子单元,用于目标集群客户端检查beegfs挂载点是否正常;
178.通信状态检查子单元,用于目标集群客户端查询与集群中各节点的通信状态;
179.元数据查询子单元,用于目标集群客户端查询元数据节点的元数据是否正常;
180.元数据主备在线状态检查子单元,用于目标集群客户端检查主备元数据在线状态;
181.环境检查判断单元1.4,用于判断测试前的环境检查结果是否正常;
182.环境检查异常记录单元1.5,用于当测试前环境检查结果不正常时,在日志文件中记录环境检查异常的操作结果;
183.异常测试模块2包括:
184.异常自动化测试启动单元2.1,用于当环境检查正常时,目标集群客户端执行异常自动化测试;
185.挂载点数据写入单元2.2,用于目标集群客户端运行vdbench脚本向客户端beegfs挂载点写入数据;
186.写入时间判断单元2.3,用于目标集群客户端判断写入数据持续时间是否达到设定时间段;
187.异常操作步骤执行单元2.4,用于当写入持续时间达到设定时间段时,执行异常操作步骤,并记录异常操作步骤至日志文件;
188.二次测试环境检查模块3,用于自动化异常测试结束后,恢复beegfs文件系统,对目标集群中各节点进行二次测试环境检查,并将检查结果记录至日志文件中;二次测试环境检查模块3包括:
189.beegfs文件系统恢复单元3.1,用于执行异常操作步骤时间达到时间阈值时,执行异常操作步骤的相反操作,恢复beegfs文件系统;
190.二次环境检查启动单元3.2,用于对目标集群中各节点启动二次测试环境检查;
191.二次环境检查单元3.3,用于检查beegfs挂载点是否正常,检查目标集群客户端与各节点的通信状态是否正常,检查各元数据节点是否正常;
192.二次环境检查判断单元3.4,用于判断二次测试环境检查结果是否正常;
193.循环次数判断单元3.5,用于在二次环境检查结果正常时,判断异常测试循环次数是否已完成;
194.结果输出单元3.6,用于在异常测试循环次数完成时,结束测试,输出日志文件;
195.二次环境检查异常记录单元3.7,用于当二次环境检查结果不正常时,在日志文件中记录二次测试环境检查异常的操作结果。
196.尽管通过参考附图并结合优选实施例的方式对本发明进行了详细描述,但本发明并不限于此。在不脱离本发明的精神和实质的前提下,本领域普通技术人员可以对本发明的实施例进行各种等效的修改或替换,而这些修改或替换都应在本发明的涵盖范围内/任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
转载请注明原文地址:https://win.8miu.com/read-150332.html