一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于混沌理念的故障模拟应用系统的制作方法

2022-12-07 17:56:34 来源:中国专利 TAG:


1.本发明涉及故障模拟技术领域,具体涉及一种基于混沌理念的故障模拟应用系统。


背景技术:

2.科技系统运维模式目前是多基于事件发生的临时处置模式,具有突发性、未知性和处置定位难的特点,往往在实际运用使用中对运维事件的处置存在耗时长,问题处置风险大的情况,这主要是由于以下几方面原因造成的:a、处置人员水平原因。实施运维人员经验、水平各异,在处置运维事件时候往往存在经验性或操作熟练程度等各方面因素的影响,事件处置存在一定的人员风险;b、部分应急手册缺乏有效验证。系统应急手册是系统线上事件发生时的操作指导,在使用之前往往没有得到有效的环境验证,此情况在使用阶段存在一定的操作风险性,对运维事件的处置产生未知影响;c、事件的模拟复现难。
3.线上出现的偶发事件存在难以复现的情况,对问题的分析、定位、处置产生障碍,事件的产生往往不是单一因素引起的,在多因素并发出现风险事件情况下,问题的复现对定位处置就显得尤为重要,但目前缺乏机动灵活的事件复现手段。


技术实现要素:

4.线上出现的偶发事件存在难以复现的情况,对问题的分析、定位、处置产生障碍,事件的产生往往不是单一因素引起的,在多因素并发出现风险事件情况下,问题的复现对定位处置就显得尤为重要,但目前缺乏机动灵活的事件复现手段。本发明的目的就是为了解决传统运维工作中被动性的工作方法,为定位分析问题复现故障,提供一种基于混沌理念的故障模拟应用系统。
5.本发明技术方案提供一种基于混沌理念的故障模拟应用系统,包括环境管理模块、事件管理模块、演练管理模块和考核评价模块;环境管理模块,用于通过探针程序收集服务端的环境信息,并通过定时心跳检测机制实时获取服务端状态信息,用于服务端的健康状态判断,探针程序通过与服务端建立联系,实现系统的环境部署;事件管理模块,具备原子级别的故障模拟能力,基于环境管理模块,通过服务端探针程序的环境部署,对服务端可模拟的故障进行管理生成事件;演练管理模块,基于事件管理模块生成的事件进行多维度编排,通过环境管理模块中探针程序产生故障,触发演练动作,并接收演练过程的操作截图;考核评价模块,基于演练管理模块接收到的演练过程的操作截图,依据演练时长、结果判断、操作步骤、合规操作对结果进行考核评价并输出评价结果。
6.作为本发明技术方案的进一步限定,环境管理模块包括机器管理子模块、应用管理子模块和部署单元管理子模块;机器管理子模块,用于对用户应用所在机器进行管理,具体编辑机器所在的应用
系统、部署单元以及备注信息;对机器探针程序进行禁用/启用;通过应用名称、部署单元、ip地址、状态进行多维度查询管理;应用管理子模块,用于对用户不同的应用进行管理,具体包括对应用名称、应用编码、应用描述、备注进行查看、修改以及删除;部署单元管理子模块,用于对某个应用的不同部署单元进行管理;对部署单元名称、部署单元编码、部署单元描述、备注进行查看、修改以及删除。
7.作为本发明技术方案的进一步限定,事件管理模块,还用于通过事件类型、事件状态、事件名称、事件编码进行多维度事件查询;对事件类型、事件名称、事件编码、事件状态进行编辑。
8.作为本发明技术方案的进一步限定,演练管理模块包括演练库子模块、组内演练子模块、案例库子模块;演练库子模块,用于创建演练,具体用于服务端点击开始演练后,选择演练内容、选择演练人员、选择演练系统进行演练事件的编辑;组内演练子模块,用于服务端点击开始演练后,选择演练内容、选择本组成员内的演练人员、选择演练系统进行演练事件的编辑;案例库子模块,用于将在事件管理模块中生成事件进行保存,将问题故障进行归档编辑生成演练案例,形成案例库。
9.作为本发明技术方案的进一步限定,演练的属性信息包括所有演练的序号、所属组、演练类型、演练持续时间、创建人、创建时间、最近实验状态、发布状态、演练描述、演练操作的信息。
10.作为本发明技术方案的进一步限定,组内演练子模块包括随机演练单元、应急演练单元、考核评价单元;随机演练单元,基于案例库中的所有演练案例,随机抽取,生成演练任务并触发实施演练,接收演练操作过程的截图;应急演练单元,用于针对设定的特定场景生成演练任务并触发实施演练,接收演练操作过程的截图;考核评价单元,用于对演练过程的截图进行考核评价输出评价结果。
11.作为本发明技术方案的进一步限定,该系统还包括系统管理模块,用于对演练成员的管理、权限控制、群组管理以及系统菜单的权限控制。
12.作为本发明技术方案的进一步限定,系统管理模块包括用户管理子模块、权限管理子模块和任务组管理子模块;用户管理子模块,用于显示所有系统用户信息列表,支持通过用户名称、真实姓名、所属角色、状态进行查询筛选;对用户进行编辑、禁用/启用、重置密码、添加删除;权限管理子模块,用于显示所有用户角色列表,显示所有可设置权限的菜单,支持根据角色类型分配相对应的菜单权限;对菜单列表进行编辑、添加、删除;任务组管理子模块,用于显示所有系已创建任务组信息列表,支持通过任务组名称,任务组状态进行查询筛选;对任务进行查看、编辑、禁用/启用。
13.作为本发明技术方案的进一步限定,考核评价模块,具体用于以模拟生产事件的处置步骤和处置截图照片为基础,以设定的评分规则为依据,进行考核结果的判定及评分。
14.作为本发明技术方案的进一步限定,该系统的应用过程包括:在服务端通过环境管理模块确认演练的环境处于可用状态,在服务端的事件管理模块选取本次需要演练的事件创建演练场景,其中,演练事件在演练管理的案例库中进行创建;服务端通过http服务向探针程序发送指令,探针程序根据演练事件进行故障的生命周期管理,演练场景创建完毕。演练人员通过ssh登录到演练系统后,进行演练实施,将演练过程步骤截图上传至服务端的演练管理模块,演练结束后,服务端考核评价模块根据演练过程的上传截图以及耗时进行考核评价输出评价结果。
15.从以上技术方案可以看出,本发明具有以下优点:通过对应用系统快速注入单一或全链路故障方式来解决事件的模拟复现难问题。主要应用于银行企业级应用系统中,用于模拟故障场景,提升系统的可用性水平。
16.此外,本发明设计原理可靠,结构简单,具有非常广泛的应用前景。
17.由此可见,本发明与现有技术相比,具有突出的实质性特点和显著地进步,其实施的有益效果也是显而易见的。
附图说明
18.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
19.图1是本发明一个实施例的系统的示意性框图。
20.图2是本发明一个实施例的系统的环境管理模块示意性框图。
21.图3是本发明一个实施例的系统的演练管理模块示意性框图。
22.图4是本发明一个实施例的系统管理模块示意性框图。
具体实施方式
23.本发明的目的就是为了解决传统运维工作中被动性的工作方法,为定位分析问题复现故障,提供一种在运维工作中故障灵活复现、事件有效验证的应用系统,系统包含用户管理、权限管理、演练、考评及合规性等多个模块功能。为了使本技术领域的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
24.如图1所示,本发明实施例提供一种基于混沌理念的故障模拟应用系统,包括环境管理模块、事件管理模块、演练管理模块和考核评价模块;环境管理模块,用于通过探针程序收集服务端的环境信息,并通过定时心跳检测机制实时获取服务端状态信息,用于服务端的健康状态判断,探针程序通过与服务端建立联系,实现系统的环境部署;环境管理模块用于管理与平台系统相关的系统环境信息,包含系统名称、部署单元、部署实例等;通过探针程序收集目标服务器的环境信息,如ip、服务器名称、cpu、内存配置、磁盘空间,并通过定时心跳检测机制实时获取服务器状态信息,用于服务器的健康状态
判断,探针程序通过与服务端建立管理联系,实现系统的环境管理功能,支持事件管理模块、故障演练模块的功能实现。
25.事件管理模块,具备原子级别的故障模拟能力,基于环境管理模块,通过服务端探针程序的环境部署,对服务端可模拟的故障进行管理生成事件;事件管理模块具备系统常见的200多种原子级别的故障模拟能力,基于环境管理模块,通过目标服务器探针程序的环境部署,可实现对服务器可模拟的故障进行管理及后续演练使用。故障模拟能力由探针程序完成,探针程序部署在演练系统中与服务端通过http发送心跳进行保活。探针程序安装时获取演练系统最高权限,可以篡改系统内核,更改硬件驱动,实现网络设备、cpu、内存、磁盘故障,模拟真实场景。比如宕网卡故障,服务端向探针程序发送指令宕网卡故障事件(包含故障产生时间、故障结束时间、故障类型),探针程序收到指令,将演练系统的网卡驱动隔离,演练系统网卡处于脱机状态,与其他系统保持隔离,到达故障结束时间时,探针程序解除网卡驱动隔离,达到故障解除效果。
26.演练管理模块,基于事件管理模块生成的事件进行多维度编排,通过环境管理模块中探针程序产生故障,触发演练动作,并接收演练过程的操作截图;考核评价模块,基于演练管理模块接收到的演练过程的操作截图,依据演练时长、结果判断、操作步骤、合规操作对结果进行考核评价并输出评价结果。
27.系统主要实现环境故障模拟生成,辅助系统问题的分析定位、方案确定、实施解决及辅助运维人员能力提升。演练管理模块基于环境管理模块内的系统信息,编排事件管理模块产生的事件场景,通过演练实施模拟动作,基于考核评价模块生成考核结果。
28.如图2所示,环境管理模块包括机器管理子模块、应用管理子模块和部署单元管理子模块;机器管理子模块,用于对用户应用所在机器进行管理,具体编辑机器所在的应用系统、部署单元以及备注信息;对机器探针程序进行禁用/启用;通过应用名称、部署单元、ip地址、状态进行多维度查询管理;应用管理子模块,用于对用户不同的应用进行管理,具体包括对应用名称、应用编码、应用描述、备注进行查看、修改以及删除;部署单元管理子模块,用于对某个应用的不同部署单元进行管理;对部署单元名称、部署单元编码、部署单元描述、备注进行查看、修改以及删除。
29.机器管理子模块包含机器查询,添加机器,查看机器,编辑机器,启用机器,禁用机器的功能,负责管理用户应用所在机器;应用管理子模块包括应用查询,添加应用,查看应用,编辑应用,删除应用的功能,负责管理用户不同的应用;一个应用往往根据提供的服务不同,分为不同的部署单元,如联机部署单元、批量部署单元、数据库部署单元等,部署单元管理子模块主要负责管理某个应用的不同部署单元。
30.事件管理模块,还用于通过事件类型、事件状态、事件名称、事件编码进行多维度事件查询;对事件类型、事件名称、事件编码、事件状态进行编辑。
31.目前分布式技术的应用使得基础设施相比传统行业更为复杂,尤其金融行业涉及大量的资金交易,涵盖了多数据中心、多活、灾备、容器、虚拟机等复杂基础设施。生产事件的复现及处理往往需要协调不同部门不同专业的人员相互配合,即耗时又耗资源。可以实现了218个基础故障,涵盖了k8s、cpu、磁盘、网络、dns、共享存储、内存、io、jvm、消息队列、
缓存、数据库等数十个专业。具体到每种故障类型,又包含了常见的磁盘读写、磁盘填充、杀死进程、cpu打满、网络延迟、网络丢包等典型故障。本系统通过与安装在目标机器的探针程序进行交互,通过发送不同的指令,一键注入指定故障到目标机器,如杀进程故障,是发送kill命令到目标机器;网络延迟为发送tc命令到目标机器造成网络延迟;jvm类故障为注入目标机器自定义的java异常类来复现内存异常等。以上常见故障均可通过本系统一键注入,而无需再搭建基础实施或协调多部门配合复现。另外可通过在程序执行方法中注入自定义异常故障、延迟执行及编排基础故障能力来模拟复杂交易场景或全链路交易场景的事件。银行交易中时序异常是较为经典的业务场景,在发送账务交易时,由于网络超时或其他原因导致交易未全部成功时,需要对原始交易发起冲正,以防止用户发生转账后成功,但实际对方未收到的情况。复现这样的场景就需要编排多个故障的能力。在本系统中的步骤如下,

发起转账交易中注入jvm类延迟异常;

冲正交易中注入jvm自定义异常

恢复步骤

中的故障

转账交易注入jvm类自定义异常

恢复步骤

故障。通过上述方法及多种编排,能够更加细粒度的进行代码层次的故障来复现复杂的业务场景。
32.如图3所示,演练管理模块包括演练库子模块、组内演练子模块、案例库子模块;演练库子模块,用于创建演练,具体用于服务端点击开始演练后,选择演练内容、选择演练人员、选择演练系统进行演练事件的编辑;组内演练子模块,用于服务端点击开始演练后,选择演练内容、选择本组成员内的演练人员、选择演练系统进行演练事件的编辑;案例库子模块,用于将在事件管理模块中生成事件进行保存,将问题故障进行归档编辑生成演练案例,形成案例库。可以对案例库进行查看、编辑、删除以及基于案例快速生成演练。案例库子模块一般用于大规模演练后进行总结,将常见的经常出现的问题故障进行归档编辑,形成案例库。在事件管理模块中生成事件后保存至案例库中以备后续查看与快速实施演练。快速实施演练只需要选择人员与演练系统环境即可。
33.其演练库子模块可以创建快速演练,创建全链路演练,重置组内演练,重置随机演练,显示所有演练的序号,所属组,演练类型,演练持续时间,创建人,创建时间,最近实验状态,发布状态,演练描述,操作的信息。可根据不同条件筛选查询列表显示,可对演练进行查看,编辑,删除,发布,撤销发布,开始演练,演练结果等操作;组内演练子模块是为特殊应用及人群模拟演练实现的功能,主要包括随机演练、应急演练、考核评价三个子功能模块;案例库子模块通过组合基础故障可以快速形成一个贴近真实场景的故障。包括增加、修改和删除事件案例功能、快速演练功能、全链路演练功能。
34.如图4所示,系统管理模块包括用户管理子模块、权限管理子模块和任务组管理子模块;用户管理子模块,用于显示所有系统用户信息列表,支持通过用户名称、真实姓名、所属角色、状态进行查询筛选;权限管理子模块,用于显示所有用户角色列表,显示所有可设置权限的菜单,支持根据角色类型分配相对应的菜单权限;任务组管理子模块,用于显示所有系已创建任务组信息列表,支持通过任务组名称,任务组状态进行查询筛选。
35.系统管理模块主要管理演练成员、分配权限等,用户管理子模块显示所有系统用
户信息列表,支持通过用户名称,真实姓名,所属角色,状态进行查询筛选。可对用户进行新增,编辑,编辑用户角色,启用,禁用,删除和重置密码等操作;权限管理子模块显示所有用户角色列表,显示所有可设置权限的菜单,支持根据角色类型分配相对应的菜单权限;任务组管理子模块显示所有系已创建任务组信息列表,支持通过任务组名称,任务组状态进行查询筛选。可对任务组进行新增,编辑,查看,禁用等操作。
36.考核评价模块,具体用于以模拟生产事件的处置步骤和处置截图照片为基础,以相关评分规则为依据,进行考核结果的判定及评分,同时对相关处置案例进行评价。
37.考核评价模块针对不同的演练过程和模式,对模拟生产事件的解决过程及方案结果给予公正的评价与反馈。本模块以模拟生产事件的处置步骤和处置截图照片为基础,以相关评分规则为依据,进行考核结果的判定及评分,同时可对相关处置案例进行评价和相关知识库关联。考核评价团队可录入相关关联知识库,并对运维过程中产生的常用生产事件进行归纳整合,关联进相关知识库。处置人员可在演练完成后,点击相关知识库进行查看标准应急处置方法及案例进行进一步学习回顾,从而达到模拟生产事件
‑‑
应急处置演练
‑‑
演练结果评价、回顾的闭环过程,达到对日常运维工作的正向激励作用。
38.演练管理模块还包括合规管理子模块,用于对演练管理模块的操作进行合规性判定。环境管理模块还包括合规管理子模块,用于对应用的部署进行合规性管理。该模块主要提供合规性试题对用户处理生产问题的流程是否合规进行考核。系统从监管要求、制度、事件处置等方面事先录入合规性试题,用户在处理模拟事件前,需要对问题进行做答后再处理具体事件。
39.演练实施过程包含创建演练场景、实施演练任务、考核三个部分:在服务端通过环境管理模块确认演练的环境处于可用状态(探针程序定时发送心跳包,如果5分钟内收到心跳包即可判定可用),然后在服务端的事件管理模块选取本次需要演练的事件(随机演练不需要选取,是随机选取),比如cpu异常,网卡异常等故障。演练事件在演练管理的案例库中进行创建,需要编辑案例名称、持续时间、故障时间、故障系统、ip地址以及具体的故障类型,故障类型参考权利要求3事件管理模块生成。演练场景创建完毕后,服务端通过http服务向探针程序发送指令,探针程序根据演练事件进行故障的生命周期管理,比如在特定时间进行演练机器网络丢包,在演练机器上运行网络丢包命令,至此演练场景创建完毕。演练人员通过ssh登录到演练系统后,进行演练实施,主要工作为故障的排查与修复,故障排查依赖于第三方监控系统,比如机器重启故障会表现为机器监控信息丢失,演练人员需通过ssh登录演练系统机器,执行程序相关启动命令,进行技术验证通过后,将演练过程关键步骤截图上传至服务端。演练结束后,在服务端根据演练过程的上传截图以及耗时进行考核。
40.尽管通过参考附图并结合优选实施例的方式对本发明进行了详细描述,但本发明并不限于此。在不脱离本发明的精神和实质的前提下,本领域普通技术人员可以对本发明的实施例进行各种等效的修改或替换,而这些修改或替换都应在本发明的涵盖范围内/任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献