GaussDB(DWS)《ROACH小课堂Ⅰ测试方法篇之故障测试》

网友投稿 687 2022-05-29

ROACH故障测试

ROACH作为备份恢复工具,在发生故障后的数据恢复能力尤为重要,这也是大多数需要用到恢复的场景。所以,对于故障的验证,不仅仅需要保证故障类型的全面,还需要保证在备份恢复过程时间段上的充分验证。

1      常见故障类型及注入方式

故障类型

注入方式

gs_roach进程故障

kill -9 强杀roach进程

CN/DN/GTM集群实例故障

mv 数据库实例二进制文件+kill -9实例进程

网络故障

ifdown/ifup 网卡闪断

文件权限不足

root用户chmod 000修改文件权限

磁盘满/资源不足

dd if=/dev/zero of=big_file bs=1M count=20000,生成一个20GB的文件

宕机/重启

reboot

GaussDB(DWS)《ROACH小课堂Ⅰ测试方法篇之故障测试》

2      ROACH故障测试方法

2.1      备份恢复过程关键点注入故障

在备份或者恢复发起后,根据备份恢复流程分析拆解出的关键流程节点,通过匹配$GAUSSLOG/roach/agent日志中打印的信息,精准注入故障。以集群级备份为例:

#1启动gs_roach进程

Creating Thread Roach Agent

#2开始准备备份文件清单

RAGENT_EXEC_PREPARING_METADATA come

#4开始备份行存文件

Copying the data files

#5开启延迟XLOG回收

start delay xlog recycle before xlog copy

#6开启延迟DDL回收

start delay ddl recycle before col file copy

#7create barrier

Setting agent state to \[AGENT_CREATING_BARRIER\]

#8开始备份XLOG

RAGENT_EXEC_BACKUP_XLOGFILES come

#9关闭延迟XLOG回收

stop delay xlog recycle after having copied all needed xlog segments

#10开始备份列存

Start backup table colfiles for physical fine grained backup

#11关闭延迟DDL回收

stop delay ddl recycle after having copied all col files

脚本实现思路:循环查询日志,匹配关键信息,当关键信息匹配成功后,立即执行故障注入。eg.

flag=0;while [[ $flag -eq 0 ]];do file_name=`ls $GAUSSLOG/roach/agent/|grep "current.log"`;if [[ -f $GAUSSLOG /roach/agent/$file_name ]];then flag=`cat $GAUSSLOG /roach/agent/$file_name|grep "enter the callback of rowstore copy"|wc -l`; fi; if [[ $flag -eq 1 ]];then cm_ctl stop &&cm_ctl start; fi; done

2.2      备份恢复过程中随机注入故障

黑盒精准注入故障,并不能保证所有流程分支都被覆盖。并且,人工分析识别也存在认知限制。因此,精准故障注入之外,还需要长时间持续验证备份恢复成功中,随机点故障注入。

脚本实现思路:设置随机的时间间隔,进行故障注入。(需要根据环境上的数据量,先摸底一次备份的时长,然后设置合理的时间间隔)。

Loop:

3      ROACH故障测试关注点

1.对于不支持断点续做的备份恢复,操作因为故障注入中断后,要能重入成功。并且恢复后数据要一致且没有core产生,集群其他的OM和业务功能不受影响;

2.对于支持断点续做的备份恢复,操作因为故障注入中断后,要能直接断点续做成功。并且恢复后数据要一致且没有core产生,集群其他的OM和业务功能不受影响;

EI企业智能 Gauss AP 数据仓库服务 GaussDB(DWS)

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:听说同学你搞不懂VMware怎样进入 bios设置 ,写在这了呢
下一篇:张小白带你体验MindSpore 1.7.0新特性——MindSpore Vision
相关文章