The invention discloses a fault injection method for a resilient cloud environment based on heuristic reinforcement learning, which includes setting up fault injection types for a resilient cloud environment, constructing training nodes for fault injection effect learning, selecting multiple fault injection objects and fault injection types for dynamic combination, forming a multi-step fault injection sequence, and implementing fault injection sequentially to the set objects at different time points. In addition, the cumulative reward value is calculated by the cumulative reward function of fault injection in the tough cloud environment. The cumulative reward value is compared, and the fault injection sequence with the highest cumulative reward value is iterated. This method can inject the fault into the IaaS layer, PaaS layer and SaaS layer of the tough information cloud environment, simulate the mixed fault events of different cross-layers, and generate the optimal fault injection strategy for the selected fault injection objects, so as to achieve the best fault injection effect.
【技术实现步骤摘要】
基于启发式强化学习的韧性云环境故障注入方法
本专利技术涉及一种故障注入方法,特别是涉及一种基于启发式强化学习的韧性云环境故障注入方法。
技术介绍
韧性云环境是在继承和发展共用信息基础设施的基础上,引入新的理念、模式和技术手段等,使其更具灵活、适变、抗毁等韧性能力特征,能够更好地实现各类基础资源的汇聚,根据不同任务背景动态组建任务系统、获取相关保障信息等,支撑快速形成遂行海空联合作战等多样化战场任务的能力。同时,在遭受部分节点失效、瘫痪、毁伤的情况能够降级运行,可识别和预测影响任务执行的各种异常,快速采取主动响应控制措施与策略,保障核心任务的完成。因此,为了充分验证韧性云环境在复杂赛博威胁环境下的自适应调整、自重构与任务持续保障等能力,亟需在试验环境下模拟云环境实际运行过程中可能出现的内部故障和外部威胁场景,按照一定时间顺序,依次向韧性云环境注入物理基础设施、平台、服务、数据等混合式故障,致使云环境资源出现失效、过载、流量等异常,旨在验证韧性云环境在遭受物理毁伤、节点失效等条件下韧性能力。现有的故障注入方法大多面向云计算平台和虚拟化系统方面,提出了面向虚拟机、虚拟化管理层等对象的故障注入工具和集成架构,用于实现分散的故障注入工具统一管理,提供给测试人员,达到以多样化的手段模拟注入目标系统不同层次的故障,提高自动化测试程度。现有故障注入方法存在以下问题:1)故障注入对象主要针对的是服务器、虚拟机、虚拟机管理器与网络等,缺乏针对云平台数据层、服务层以及部署于云平台上应用系统的故障注入;2)缺乏考虑故障注入对象以及故障类别如何优选,如何对多种故障注入的时序进行编排 ...
【技术保护点】
1.一种基于启发式强化学习的韧性云环境故障注入方法,其特征在于包括以下步骤:(1)设置韧性云环境故障注入类型;(2)构建故障注入效果学习的训练节点,训练节点包括韧性云环境中虚拟机、虚拟机上部署的服务、数据库、网络节点,在训练节点上分别部署故障注入工具、监控工具和数据收集工具;(3)根据当前韧性云环境需保障的核心任务,选取多个故障注入对象和故障注入类型进行动态组合,形成多步故障注入序列;(4)依据所述的多步故障注入序列,向设定的对象在不同时间点依次实施故障注入;(5)执行完每步故障注入后,通过部署于训练节点上的数据收集工具,实时采集韧性云环境试验数据,通过韧性云环境故障注入的累积奖赏函数计算累积奖赏值,对累积奖赏值进行比较,将累积奖赏值最高的故障注入序列,作为故障注入的启发式规则;(6)将故障注入的启发式规则应用到下一轮故障注入序列中去,选择相应的故障类别、故障注入对象、故障注入手段,进行故障注入时序编排,生成故障注入序列,重复上述过程,循环迭代。
【技术特征摘要】
1.一种基于启发式强化学习的韧性云环境故障注入方法,其特征在于包括以下步骤:(1)设置韧性云环境故障注入类型;(2)构建故障注入效果学习的训练节点,训练节点包括韧性云环境中虚拟机、虚拟机上部署的服务、数据库、网络节点,在训练节点上分别部署故障注入工具、监控工具和数据收集工具;(3)根据当前韧性云环境需保障的核心任务,选取多个故障注入对象和故障注入类型进行动态组合,形成多步故障注入序列;(4)依据所述的多步故障注入序列,向设定的对象在不同时间点依次实施故障注入;(5)执行完每步故障注入后,通过部署于训练节点上的数据收集工具,实时采集韧性云环境试验数据,通过韧性云环境故障注入的累积奖赏函数计算累积奖赏值,对累积奖赏值进行比较,将累积奖赏值最高的故障注入序列,作为故障注入的启发式规则;(6)将故障注入的启发式规则应用到下一轮故障注入序列中去,选择相应的故障类别、故障注入对象、故障注入手段,进行故障注入时序编排,生成故障注入序列,重复上述过程,循环迭代。2.根据权利要求1所述的基于启发式强化学习的韧性云环境故障注入方法,其特征在于,步骤(1)所述的故障注入类型包括以下5层18类故障:第1层是计算资源故障,包括5类故障:服务器/虚拟机宕机、服务器/虚拟机高CPU负载、服务器/虚拟机高内存负载、服务器/虚拟机高IO负载和服务器/虚拟机恶意失效;第2层是通信网络故障,包括5类故障:网络节点毁伤、网络链路毁伤、网络区域毁伤、网络持续丢包和网络高延迟;第3层是平台故障,包括3类故障:服务容器过载、服务容器宕机失效和服务容器恶意失效;第4层是数据故障,包括2类故障:数据库访问过载和数据库异常关闭;第5层是服务故障,包括3类故障:非预期服务请求过载、服务无响应和服务失效。3.根据权利要求1所述的基于启发式强化学习的韧性云环境故障注入方法,其特征在于,步骤(3)中所述的多步故障注入序列为韧性云环境所处状态ai时可选取的故障注入操作集合,描述如下:A={a1,a2,a3,....an},A(x)=a1→a3→...→aj,其中,ai(i...
【专利技术属性】
技术研发人员:周芳,丁峰,郭成昊,丁冉,程文迪,俞杰,李玉萍,
申请(专利权)人:中国电子科技集团公司第二十八研究所,
类型:发明
国别省市:江苏,32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。