[发明专利]故障注入系统、方法和装置在审
申请号: | 202010291836.7 | 申请日: | 2020-04-14 |
公开(公告)号: | CN113535532A | 公开(公告)日: | 2021-10-22 |
发明(设计)人: | 王璇;史军艇;竺士杰;余建利 | 申请(专利权)人: | 中国移动通信集团浙江有限公司;中国移动通信集团有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京市浩天知识产权代理事务所(普通合伙) 11276 | 代理人: | 王广涛 |
地址: | 310016 *** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 故障 注入 系统 方法 装置 | ||
本发明实施例涉及计算机技术领域,公开了一种故障注入系统、方法和装置,包括:调度单元:用于向代理服务单元发送故障注入指令;容器单元:包括容器镜像挂载目录,容器镜像挂载目录用于接收代理服务单元发出的故障注入程序;代理服务单元:包括故障场景配置模块、故障注入引擎模块和结果监控模块;故障场景配置模块:用于根据预设的故障注入场景配置相应的故障注入程序;故障注入引擎模块:用于接收调度单元发送的故障注入指令,并根据故障注入指令从故障场景配置模块中获取相应的故障注入程序,将故障注入程序注入到容器单元的容器镜像挂载目录中;结果监控模块对故障注入结果进行监控。通过上述方式,本发明实施例提高了故障注入的效率。
技术领域
本发明实施例涉及计算机技术领域,具体涉及一种故障注入系统、方法和装置。
背景技术
随着云化、容器化的逐渐成熟和普及,大量传统型、竖井型应用被逐渐改造或直接迁移和部署到虚拟化、容器化环境当中。而容器化大规模的应用伴随而来来的是维护难度几何式的增长,容器状态在云化架构下的影响被弱化,但容器上承载的应用自身运行情况以及各个应用之间的调用关系等,仍然是决定业务稳定性的最关键因素。
在这种情况下,通过直接在生产环境对Docker容器内的应用进行故障注入,来观测应用异常带来的业务影响,是一种较有效的储备运维经验的方法。而目前针对Docker容器的故障注入存在操作繁琐以及覆盖场景有限等问题。
发明内容
鉴于上述问题,本发明实施例提供了一种故障注入系统、方法和装置,用于解决现有技术中存在的上述问题。
本发明实施例提出了一种故障注入系统,包括:调度单元、代理服务单元和容器单元;
所述调度单元:用于向代理服务单元发送故障注入指令;
所述容器单元:包括容器镜像挂载目录,所述容器镜像挂载目录用于接收所述代理服务单元发出的故障注入程序;
所述代理服务单元:包括故障场景配置模块、故障注入引擎模块和结果监控模块;
所述故障场景配置模块:用于根据预设的故障注入场景配置相应的故障注入程序;
所述故障注入引擎模块:用于接收所述调度单元发送的故障注入指令,并根据所述故障注入指令从所述故障场景配置模块中获取相应的故障注入程序,将所述故障注入程序注入到所述容器单元的容器镜像挂载目录中;
所述结果监控模块:用于接收所述容器单元根据所述故障注入程序运行的结果信息,并根据所述运行结果信息对所述故障注入程序进行监控,将监控结果上报至所述调度单元。
进一步的,所述故障注入指令包括故障场景信息;
所述故障注入引擎模块用于根据所述故障场景信息从所述故障场景配置模块中获取故障注入程序。
进一步的,所述故障场景配置模块包括:进程外场景配置模块和进程内场景配置模块;
所述进程外场景配置模块用于通过操作系统命令对设置所述故障注入指令;
所述进程内场景配置模块用于通过JDK接口和字节码设置所述故障注入指令。
进一步的,所述进程内场景配置模块还用于对所述容器内的运行函数按入口、函数体和出口进行划分;
所述进程内场景配置模块分别对所述函数的入口、函数体和出口的响应值、处理速度和处理逻辑设置故障注入指令。
进一步的,所述故障注入引擎模块还包括环境检查模块;
所述环境检查模块用于根据所述故障注入指令对所述容器单元的环境信息进行检查,如果符合所述环境信息符合所述故障注入指令的运行要求,则执行故障注入,否则向所述调度单元返回故障注入失败信息。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国移动通信集团浙江有限公司;中国移动通信集团有限公司,未经中国移动通信集团浙江有限公司;中国移动通信集团有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010291836.7/2.html,转载请声明来源钻瓜专利网。