CN116610497A - 容灾策略编排方法、系统及电子设备 - Google Patents
容灾策略编排方法、系统及电子设备 Download PDFInfo
- Publication number
- CN116610497A CN116610497A CN202310859041.5A CN202310859041A CN116610497A CN 116610497 A CN116610497 A CN 116610497A CN 202310859041 A CN202310859041 A CN 202310859041A CN 116610497 A CN116610497 A CN 116610497A
- Authority
- CN
- China
- Prior art keywords
- disaster recovery
- application
- description information
- strategy
- execution
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000011084 recovery Methods 0.000 title claims abstract description 338
- 238000000034 method Methods 0.000 title claims abstract description 52
- 238000004519 manufacturing process Methods 0.000 claims abstract description 65
- 238000013515 script Methods 0.000 claims abstract description 37
- 238000004422 calculation algorithm Methods 0.000 claims description 71
- 238000012544 monitoring process Methods 0.000 claims description 16
- 230000002068 genetic effect Effects 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 7
- 238000013528 artificial neural network Methods 0.000 claims description 5
- 239000002245 particle Substances 0.000 claims description 5
- 230000001419 dependent effect Effects 0.000 claims description 4
- 230000002452 interceptive effect Effects 0.000 claims description 3
- 230000008859 change Effects 0.000 claims description 2
- 230000008901 benefit Effects 0.000 abstract description 3
- 210000000349 chromosome Anatomy 0.000 description 15
- 238000010586 diagram Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 10
- 230000000694 effects Effects 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 6
- 230000003993 interaction Effects 0.000 description 6
- 238000005457 optimization Methods 0.000 description 6
- 238000012423 maintenance Methods 0.000 description 5
- 238000013508 migration Methods 0.000 description 5
- 230000005012 migration Effects 0.000 description 5
- 108090000623 proteins and genes Proteins 0.000 description 5
- 238000003860 storage Methods 0.000 description 5
- 238000010276 construction Methods 0.000 description 4
- 238000010801 machine learning Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 230000035772 mutation Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000009396 hybridization Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000010076 replication Effects 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1448—Management of the data involved in backup or backup restore
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1464—Management of the backup or restore process for networked environments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1469—Backup restoration techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02A—TECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
- Y02A10/00—TECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE at coastal zones; at river basins
- Y02A10/40—Controlling or monitoring, e.g. of flood or hurricane; Forecasting, e.g. risk assessment or mapping
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Software Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请公开了一种容灾策略编排方法、系统及电子设备,本申请提供一种容灾策略编排方法,包括:获取应用描述信息;根据所述应用描述信息,生成容灾任务以输出容灾任务执行路径;根据所述容灾任务执行路径,匹配与所述容灾任务执行路径相对应的执行脚本,以形成容灾执行策略;输出所述容灾执行策略。通过获取容灾场景下的应用描述信息,对应生成特定场景下的容灾执行策略并输出,基于第一性原理,从问题本质出发,可以适配多种、复杂生产环境及业务场景,不限制生产环境内的业务应用数量,特别是在大型复杂的生产环境下愈能突出容灾策略自动编排的优势。
Description
技术领域
本申请涉及通信技术领域,尤其涉及一种容灾策略编排方法、系统及电子设备。
背景技术
随着信息技术日新月异的发展,用户的业务系统也越来越依赖数据中心的服务支持,信息数据甚至已经成为了企业进一步发展的关键,因此,数据安全非常重要。
为了保证用户的数据安全,相应地发展形成了云容灾技术。云容灾技术基于数据复制技术,结合云原生资源特性,利用云上编排能力,满足数据安全性和业务连续性。
然而,随着用户的数据系统结构不断升级以及数据量不断增加,容灾策略编排的复杂度随之提高,现有技术中通过人工编排容灾策略的方法已经无法满足用户需求。
中国专利CN111813605A公开了一种容灾方法、平台、电子设备以及介质,通过基于当前服务的故障场景,确定与故障场景相关的容灾预案,其中容灾预案预存储于ETCD中,并且容灾预案对应于一个或多个用于实现相应容灾功能的容灾脚本;获取关于容灾预案的信息,其中,关于容灾预案的信息包括一个或多个容灾脚本的脚本基础信息和执行顺序;以及根据关于容灾预案的信息,执行容灾预案。其本质在于将故障场景、容灾预案以及对应的容灾脚本机械地一一对应,然而在实际复杂的场景下,其并不能进行识别场景,并优化容灾策略以执行,容灾效率无法显著地提高。
中国专利CN114780301A公开了一种支持多云生产环境的容灾方法及系统,在接收到容灾指令之后,基于业务规则和所获取的生产对象描述信息,进行容灾策略编排,生成容灾策略,其中,所述生产对象描述信息用于描述待容灾的云应用的生产环境;根据所述容灾策略,执行容灾操作,其中,所述容灾操作包括以下至少之一:数据的备份和/或恢复、生产环境迁移和重建,DNS切换和/或回切以及生产环境的状态采集和监控。其虽然提及对编排的容灾策略自动迭代优化,但是并未公开具体的实现路径和对应的基础结构。
发明内容
本申请提供了一种容灾策略编排方法、系统及电子设备,以解决现有容灾策略编排无法适应复杂的数据业务应用场景的问题。
第一方面,本申请提供一种容灾策略编排方法,包括:
获取应用描述信息;
根据所述应用描述信息,生成容灾任务以输出容灾任务执行路径;
根据所述容灾任务执行路径,匹配与所述容灾任务执行路径相对应的执行脚本,以形成容灾执行策略;
输出所述容灾执行策略。
在其中一个实施例中,在所述获取应用描述信息之前,还包括:
周期性扫描生产环境,以采集所述应用描述信息;
保存并更新所述应用描述信息至应用信息库,所述应用信息库用于提供所述应用描述信息;
其中,所述应用描述信息包括应用的构成情况及所述应用的构成情况的变化。
在其中一个实施例中,所述根据所述应用描述信息,生成容灾任务以输出容灾任务执行路径,具体包括:
根据所述应用描述信息,从业务规则库中匹配对应的业务规则;
根据所述应用描述信息及所述业务规则,从编排算法库中选择编排算法;
根据所述编排算法及所述业务规则,生成所述容灾任务,以输出所述容灾任务执行路径。
在其中一个实施例中,在所述输出所述容灾任务执行路径之前,还包括:
根据所述编排算法,迭代优化所述容灾任务执行路径;
其中,所述编排算法包括遗传算法、粒子群算法、神经网络算法中的至少一种。
在其中一个实施例中,所述根据所述编排算法,迭代优化所述容灾任务执行路径,具体包括:
根据所述应用描述信息及所述业务规则,生成初始容灾执行路径;
从所述应用描述信息中选择多个基础依赖且相互互斥的组件,作为所述初始容灾执行路径的求解起点;
根据所述业务规则,遍历所述初始容灾执行路径的求解起点进行求解,直至满足停止条件;
计算并输出每一所述初始容灾执行路径的求解起点对应的所述容灾执行路径。
第二方面,本申请还提供一种容灾策略编排系统,包括:
监控单元,被配置为能够获取应用描述信息;及
编排单元,被配置为能够根据所述应用描述信息,生成容灾任务以输出容灾任务执行路径以及根据所述容灾任务执行路径,匹配与所述容灾任务执行路径相对应的执行脚本,以形成并输出容灾执行策略。
在其中一个实施例中,所述系统还包括输入支撑库,所述输入支撑库包括:
应用信息库,被配置为能够存储并提供所述应用描述信息;
业务规则库,被配置为能够存储并提供业务规则;
编排算法库,被配置为能够存储并提供编排算法;及
执行脚本库,被配置为能够存储并提供执行脚本。
在其中一个实施例中,所述编排单元包括:
规划引擎,被配置为能够从所述业务规则库中匹配对应的所述业务规则并且从所述编排算法库中选择所述编排算法,并计算生成所述容灾任务,以输出所述容灾任务执行路径;及
策略引擎,被配置为能够从所述执行脚本库中匹配与所述容灾任务执行路径相对应的执行脚本,以形成容灾执行策略。
在其中一个实施例中,所述系统还包括主控单元,所述主控单元被配置为能够提供用户与所述容灾策略编排系统之间的交互功能。
第三方面,本申请还提供一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面所述的方法。
上述容灾策略编排方法,至少具有以下有益技术效果:
1.通过获取容灾场景下的应用描述信息,对应生成特定场景下的容灾执行策略并输出,基于第一性原理,从问题本质出发,可以适配多种、复杂生产环境及业务场景,不限制生产环境内的业务应用数量,特别是在大型复杂的生产环境下愈能突出容灾策略自动编排的优势。
2.通过借助遗传算法、粒子群算法以及神经网络算法等机器学习算法,在设定的时间复杂度及求解空间内获取最优近似解,使得整个容灾编排更加合理化、最优化。
3.通过周期性地扫描并获取应用的构成情况及其变化,使得容灾策略编排系统能够根据生产环境的业务应用变化自动调整,自动修改容灾策略,具有自维护、自适应能力。
4.通过选择多个基础依赖且相互互斥的组件作为初始容灾执行路径的求解起点,并对应输出容灾执行路径,从而能够计算得到多条互斥容灾执行路径,在容灾活动中达到并行的处理能力,从而提高容灾效率。
5.通过自动获取应用描述信息并自动生产输出容灾执行策略,在需要进行容灾操作时,只需要输入容灾指令便可直接输出可执行的容灾执行策略,无需用户额外操作进行配置,从而具有良好的使用便捷性。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请一实施例中容灾策略编排方法的应用场景图;
图2为本申请一实施例提供的容灾策略编排方法的流程示意图;
图3为本申请一实施例提供的容灾策略编排方法中S230步骤的具体流程示意图;
图4为本申请一实施例提供的容灾策略编排方法中S340步骤的具体流程示意图;
图5为本申请一实施例提供的容灾策略编排系统的架构示意图;
图6为本申请一实施例提供的编排单元的架构示意图;
图7为本申请一实施例中容灾策略编排系统内部各单元执行容灾策略编排的交互流程图;
图8为本申请一实施例提供的容灾策略编排系统提供的人机交互界面图;
图9为本申请一实施例提供的电子设备的架构示意图。
附图标记说明:
10、容灾策略编排系统;110、主控单元;120、监控单元;130、编排单元;131、规划引擎;132、策略引擎;140、接口单元;150、输入支撑库;151、应用信息库;152、业务规则库;153、编排算法库;154、执行脚本库;
20、第一生产环境;21、业务系统;
30、第二生产环境;
40、容灾环境;
50、网络环境。
实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
首先,为介绍本申请的容灾策略编排方法,对下文中涉及的部分缩略语及关键术语进行定义。
恢复时间目标:Recovery Time Objective,RTO。指当发生灾难或紧急事件时,业务系统所能容忍的停止服务的最长时间,也就是从灾难发生到业务系统恢复服务功能所需要的最短时间周期。RTO是反映系统业务恢复的及时性指标,表示业务从中断到恢复正常所需的时间,RTO数值越小,代表容灾系统的数据恢复能力越强。
恢复点目标:Recovery Point Objective, RPO。指一个过去的时间点,当灾难或紧急事件发生时,数据可以恢复到的时间点,是业务系统所能容忍的数据丢失量。RPO指标主要反映了业务连续性管理体系下备用数据的有效性,即RPO取值越小,表示系统对数据完整性的保证能力越强。
容灾:容灾是指为保障业务的连续性,在主生产环境及其业务应用发生短时间内无法修复的故障时,将业务流量导入到备用生产环境中的一次业务活动。其中,备用生产环境及其业务应用是预先准备好的,或根据业务需要按需、动态迁移或创建。
容灾策略:为提高应用的容灾活效率,满足给定的RTO、RPO等容灾指标,在发生容灾活动前需要做好容灾规划,形成容灾策略。容灾策略包括容灾备份策略、恢复策略、生产环境迁移策略及重建等策略;
策略编排:应用内部、应用之间及相关中间件(包括缓存、消息队列等)、应用服务器、容器及运行时、数据库(关系及非关系型数据库)、操作系统、集群管理软件等都存在着依赖和制约,给定的RTO及RPO等容灾目标。在容灾活动中,需要预先处理好这些相互的依赖与制约关系,同时也要满足容灾效果指标,即要做好各应用各部分的备份、恢复、迁移及重建路径等编排、并形成对应的容灾策略,从而达到最优的容灾效果。
下面介绍本申请实施例提供的容灾策略编排方法的应用环境。
请参阅图1,图1为本申请一实施例提供的容灾策略编排方法的应用场景图。本申请实施例提供的容灾策略编排方法,可应用在如图1的应用环境中,该容灾策略编排方法应用在云容灾系统中,该云容灾系统包括容灾策略编排系统10、多个第一生产环境20、第二生产环境30、容灾环境40以及网络环境50。
其中,第一生产环境20包括多个业务系统21以及云平台,多个业务系统21部署于云平台上,云平台可以由独立的服务器或者是多个服务器组成的服务器集群来实现。不同的第一生产环境20可以是使用相同的云服务商供应的云平台服务,也可以是不同的云服务商供应的不同云平台服务。第一生产环境20之间可以是部署于同城,也可以是异地部署的。
多个业务系统21可以是彼此独立的,也可以是和同一云平台上其他业务系统21彼此互联的,还可以是和不同云平台上的其他业务系统21彼此互联的,以执行各自对应业务需求进行划分。业务系统21可以按照对应业务的不同需求分配不同的接口及云资源等。
第二生产环境30为第一生产环境20的上级管理,同样包括多个业务系统21及云平台,在此不做赘述。第二生产环境30与多个第一生产环境20之间通过网络环境50实现内部逻辑互联以完成各项业务。
容灾环境40分别与多个第一生产环境20及第二生产环境30相互连通,以实现将各项数据远程复制至容灾环境40。
容灾策略编排系统10与第一生产环境20、第二生产环境30以及容灾环境40连接。当第一生产环境20、第二生产环境30或者网络环境50发生故障时,容灾策略编排中心获取故障情况后,自动生成容灾执行策略,并调动需要进行容灾的第一生产环境20或第二生产环境30以及需要配合的其他资源按照该容灾执行策略进行容灾。容灾策略编排中心可以部署于客户端上,包括但不限于个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备等计算机设备。
具体到实施例中,该云容灾系统为某省云政务系统,第一生产环境20为市级政务云,第二生产环境30为省级政务云省会主中心,容灾环境40为省级政务云灾备中心,网络环境50为政务专网、政务内网、政务外网、互联网等。省级政务云省会主中心下辖14个市级政务云,每个市级政务云上部署有最多22个政务民生等业务系统21,每个业务系统21对应有不同类型的数据,不同类型的数据按照一般数据、重要数据以及关键数据需要对应不同的容灾策略,且需要RTO参数在30分钟以内。
当该省云政务系统某处发生数据灾难时,容灾策略编排系统10使用容灾策略编排方法自动检测数据灾难来源并通过客户端通知用户。在接收到用户的容灾指令时,根据检测获取的应用描述信息,按照对应的业务规则选择编排算法生成并规划容灾任务,然后在一定时间内自动对容灾任务包括的容灾执行路径进行迭代优化,最后将该容灾执行路径与具体可执行的容灾脚本结合,形成并输出容灾执行策略,与该容灾执行策略相关的市级政务云、业务系统21、省级政务云灾备中心及省级政务云灾备中心根据容灾执行策略执行对应的操作,实现整体的容灾操作,从而解决业务容灾中由于应用的复杂性高、应用的规模庞大以及业务应用之间相互关联制约产生的问题,对于不同的复杂业务系统21具有普遍适用性,并且能够有效提高容灾效率。
需要说明的是,容灾策略编排系统10的应用不局限于本实施例中的政务云系统,还可以适用于金融云系统、电信运营商系统、能源系统以及制造系统等。
以下对本申请实施例提供的容灾策略编排方法的具体实现方式进行详细描述。具体的,请参阅图2,图2为本申请一实施例提供的容灾策略编排方法的流程示意图,本申请实施例提供的容灾策略编排方法可以包括:
S210、获取应用描述信息。
具体到本申请实施例中,容灾策略编排系统10通过周期性地扫描生产环境,采集并监控业务系统21中各应用的构成情况及发生的变化。其中,应用的构成情况包括构成应用的各种组件、组件的运行环境、应用服务器、应用容器、虚拟机、关系型数据库、非关系型数据库、涵盖缓存及消息队列等的相关中间件、操作系统以及集群管理软件等。
容灾策略编排系统10将采集的各项应用描述信息保存至一应用信息库151中,应用信息库151用于存储应用描述信息。除了应用的构成情况,应用描述信息还记录应用构成情况的变化,当应用构成情况发生变化时,变化本身以及最新的应用构成情况被更新保存至应用信息库151中,以取代原有的应用构成情况。
进一步地,容灾策略编排系统10能够根据变化的应用构成情况,调整监控逻辑,以采集、替代或删除部分应用构成情况信息,保证获取的应用描述信息的准确性。
应用描述信息常态化地更新并保存在应用信息库151中,当容灾策略编排系统10接收到容灾指令时,容灾策略编排系统10能够直接从应用信息库151中获取更新后的最新的应用描述信息,从而快速地为容灾策略的编排提供有效信息。
S220、根据所述应用描述信息,生成容灾任务以输出容灾任务执行路径。
具体的,容灾策略编排系统10根据前一步获取的应用描述信息,从业务规则库152中匹配与应用描述信息相对应的业务规则,并根据应用描述信息及业务规则开始计算初始容灾执行路径,然后从编排算法库153中选择合适的编排算法对初始容灾执行路径进行迭代优化,以得到接近最优解的容灾任务执行路径。更具体的步骤容后文详述。
S230、根据容灾任务执行路径,匹配与所述容灾任务执行路径相对应的执行脚本,以形成容灾执行策略。
具体的,容灾策略编排系统10根据获得容灾任务执行路径,从执行脚本库154中选择与容灾任务执行路径相对应的若干执行脚本,并将容灾任务执行路径与该若干执行脚本相结合,以形成可执行的容灾执行策略。
需要说明的是,容灾执行策略可能包括多条,具体数量取决于上一步骤提供的容灾任务执行路径的数量。
S240、输出所述容灾执行策略。
具体的,在容灾执行策略编排计算结束后,输出容灾执行策略。
可以理解的是,如果输出多条容灾策略,策略之间是相互独立的,这样为容灾活动提供了并行处理能力,从而有效减少了RTO。
请参阅图3,图3为本申请一实施例提供的容灾策略编排方法中S230步骤的具体流程示意图。以下结合图说明步骤。
S310、根据应用描述信息及业务规则,生成初始容灾执行路径。
容灾策略编排系统10读入业务规则库152以及应用信息库151,容灾策略编排系统10根据前一步获取的应用描述信息,从业务规则库152中匹配与应用描述信息相对应的业务规则,并根据应用描述信息及业务规则开始计算初始容灾执行路径。
S320、从应用描述信息中选择多个基础依赖且相互互斥的组件,作为初始容灾执行路径的求解起点。
容灾策略编排系统10选择多个相互独立的组件,能够根据不同的组件同步生成对应的多个容灾策略,以提高容灾策略编排的整体效率。
S330、根据业务规则,遍历初始容灾执行路径的求解起点进行求解,直至满足停止条件。
容灾策略编排系统10根据应用描述信息以及业务规则,从编排算法库153中选择合适的编排算法生成及规划容灾任务。容灾任务包括初始容灾执行路径,初始容灾执行路径为一般的通解,在具体的容灾场景下,与最优解具有较大差距,不适宜直接输出形成容灾执行策略。
S340、计算并输出每一初始容灾执行路径的求解起点对应的容灾执行路径。
容灾策略编排系统10使用编排算法对容灾任务进一步地迭代优化,最后输出在限定时间内最为接近最优解的容灾任务执行路径。编排算法包括多种机器学习算法,例如粒子群算法、遗传算法及神经网络算法等。
具体到本申请实施例中,采用遗传算法作为问题求解方法。遗传算法是进化算法的一种,进化算法最初是借鉴了进化生物学中的一些现象而发展起来的,这些现象包括遗传、突变、自然选择以及杂交等。遗传算法适合解决全局最优化问题,遗传算法能够在全解空间得到近似最优解,而且允许使用非常复杂的适应度函数(Fitness Function, 或称作目标函数),并可以对变量的取值范围加以约束。
请参阅图4,图4为本申请一实施例提供的容灾策略编排方法中S340步骤的具体流程示意图。以下就以遗传算法为例进行说明编排算法的工作流程。
S410、初始化。
定义初始种群,初始种群为随机生成或预设的可能解的集合。种群中包含多条染色体,染色体为该约束条件下的问题的初始解,该初始解可以是可行解,也可以是不可行解。染色体包括多个基因序列,分别对应于不同的变量。
S420、适应度评估。
初始化完成后,当前种群中每条染色体的适应度函数值都根据适应度函数求出,适应度函数值根据问题的不同代表与该问题的最优解的接近程度。
S430、选择操作。
从所有染色体中选择适应度函数值较好的染色体,并提高其参与后续步骤的概率,使得这些染色体有更多机会作为父辈来繁殖下一代,能够更快地接近该问题的最优解。
S440、交叉操作。
以基因为最小交叉单位,随机或固定位置的将两个染色体的某一基因互换,从而产生新的染色体,交叉单位可以根据实际情况进行设定。
S450、变异操作。
对染色体上的某一基因事假随机的扰动值,以形成新的基因,使得染色体发生随机变化得到新的染色体。
S460、迭代操作。
当执行完变异步骤后,重新回到Sx适应度评估步骤,并用其中适应度较好的部分染色体代替适应度较差的部分染色体,以使得算法收敛。重复迭代,直至满足遗传算法的终止条件,在本实施例中,终止条件为满足制定的迭代次数。
S470、输出计算结果。
输出最佳的适应度的染色体作为计算结果。
需要说明的是,本申请的容灾编排方法不局限于本实施例中使用的遗传算法,具体编排算法的选择不影响本发明涉及到的核心思想、方法和实现。
下面介绍本申请实施例的容灾策略编排系统10。
请参阅图5,图5为本申请一实施例提供的容灾策略编排系统的架构示意图。容灾策略编排系统10主要包括主控单元110、监控单元120、编排单元130、接口单元140以及输入支撑库150。其中,输入支撑库150至少包括应用信息库151、业务规则库152、编排算法库153以及执行脚本库154。
应用信息库151包含了一个或多个独立或相互关联的业务应用的构成信息以及业务应用的网络环境50、操作系统、中间件、数据库等。同时,应用信息库151具有维护入口,可按需完成对库内数据进行增加、修改或删除等操作。
业务规则库152包含了备份规则、恢复规则,启顺序规则、生产环境重建规则、迁移规则等业务规则,也包含了应用及其保存的数据的重要性及敏感性标识,同时还包含了应用内部、各应用之间以及各应用的运行环境各组成部分间的依赖与制约关系。业务规则库152主要描述各应用要遵守的业务规则和相互之间的依赖和约束,应用规模越大,结构越复杂,越能体现自动编排容灾策略的优势。
可以理解,业务规则库152也具有维护入口,可按需完成对规则库内数据进行增加、修改或删除等操作。
编排算法库153内包含多种最优求解算法,包括遗传算法、粒子群、神经网络等多种优化算法。容灾策略编排系统10能够根据编排策略的不同类型及复杂度、求解策空间的特点,选择不同的算法作为问题求解方法。编排算法库153同样具有维护入口,可按需完成对算法库内算法进行增加、修改或删除等操作。
执行脚本库154内包括各种可具体执行对应功能的执行脚本,执行脚本用于与容灾执行路径相结合,以将对应的容灾执行路径具体形成可执行的容灾执行策略。
容灾策略编排系统10受主控单元110管理控制,编排单元130接收主控单元110发起的编排指令及容灾目标要求,从应用信息库151中获取应用描述信息及从业务规则库152中获取业务规则,并根据从编排算法库153中选择的编排算法计算输出一条或多条容灾执行路径,结合执行脚本库154提供的执行脚本后形成容灾执行策略并输出。
具体的,主控单元110主要由全局管理入口组件构成,用于提供系统用户与系统之间的交互能力,对容灾策略编排过程进行管理,包括过程监控,错误处理,查看结果等交互逻辑。
监控单元120主要由生产环境监控引擎等组件构成。监控引擎加载并读入应用信息库151后,对生产环境做周期性扫描,与应用信息库151内的各应用信息进行比对,判断生产环境内的应用构成是否发生变化。如果应用结构发生变化,监控引擎根据生产环境内当前应用的实际构成情况调整应用信息库151的内容,使描述信息库内容始终与实际生产环境的应用构成情况始终保持一致。
应用信息库151内初始内容在系统创建时,根据应用实际构成情况人工初始化到系统或该库初始内容为空,监控引擎运行过程中结合机器学习技术,通过训练实现应用结构的自动识别,从而达到应用信息库151自维护能力。具体的自动识别及其使用的机器学习算法在此不展开叙述。
请参阅图6,图6为本申请一实施例提供的编排单元的架构示意图。编排单元130主要由规划引擎131及策略引擎132等组件构成。规划引擎131耦合于应用信息库151、业务规则库152以及编排算法库153,规划引擎131从应用信息库151中读入应用描述信息,并根据应用描述信息从业务规则库152中读入匹配的业务规则,然后规划引擎131从编排算法库153中选择编排算法以计算输出容灾任务执行路径。
策略引擎132与容灾脚本库及规划引擎131相耦合,策略引擎132接收规划引擎131输出的容灾任务执行路径,并从执行脚本库154中选择相对应的执行脚本,将若干执行脚本与容灾任务执行路径相结合以形成容灾执行策略并进行输出。
接口单元140用于与待容灾的生产环境以及容灾环境40相连接,并作为对外开放服务接口,供用户使用。
容灾策略编排系统10能够提供软件运营服务(Software as a Service,简称SaaS)、平台运营服务(Platform as a Service,简称PaaS)以及基础设施运营服务(Infrastructure as a Service,简称IaaS)。具体到本实施例中,容灾策略编排系统10作为SaaS服务提供,用户通过接口单元140提供的应用程序接口(Application ProgrammingInterface,简称API)及远程通讯协议与容灾策略编排系统10进行交互以获取容灾执行策略,用户获取文件形式的容灾执行策略后,按照实际需求导入至容灾环境40的容灾系统中即可使用。
进一步地,用户在获取容灾执行策略后,也可以不需要输出文件形式的容灾执行策略,而通过容灾策略编排系统10直接将容灾执行策略应用至容灾环境40的容灾系统中,从而提高用户使用的便捷性。
请参阅图7,图7为本申请一实施例提供的容灾策略编排系统内部各单元执行容灾策略编排的交互流程图。具体包括以下步骤:
S701、监控单元120周期性扫描生产环境,以获取生产环境中的各应用描述信息;
S702、监控单元120将最新的应用描述信息存储至输入支撑库150中的应用信息库151,应用信息库151对应用描述信息进行更新,并反馈新的监控逻辑至监控单元120。
当生产环境发生数据灾难时,用户从客户端发送容灾指令给容灾策略编排系统10,以期获得容灾执行策略。
S703、主控单元110接收来自客户端的容灾指令,并对容灾指令进行初步分析处理,生成容灾策略编排指令并给出编排目标。
S704、编排单元130接收来自主控单元110的容灾策略编排指令,并启动规划引擎131。
S705、规划引擎131加载应用信息库151,并从应用信息库151中读入与编排目标相关的应用描述信息。
S706、规划引擎131根据应用描述信息及容灾策略编排指令,生成容灾任务并准备计算容灾执行策略。
S707、规划引擎131加载业务信息库,并从业务信息库中读入与编排目标相关的业务规则。
S708、规划引擎131加载编排算法库153,并根据编排目标的应用描述信息、相关业务规则以及容灾策略编排指令包含的要求从编排算法库153中选择相应的编排算法。
S709、规划引擎131根据编排算法计算初始的优化容灾任务执行路径,并对其进行迭代优化已获得接近最优解的容灾任务执行路径。
S710、规划引擎131输出容灾任务执行路径至策略引擎132。
S711、策略引擎132加载执行脚本库154,并根据容灾任务执行路径从执行脚本库154中选择对应的执行脚本。
S712、策略引擎132将容灾任务执行路径及对应的执行脚本相结合,以形成可执行的容灾执行策略。
S713、策略引擎132将容灾执行策略输出至主控单元110。
S714、主控单元110将容灾执行策略输出至客户端,用户根据容灾执行策略应用相应的容灾操作。
容灾策略编排系统10根据不同的业务规则、应用描述信息,输出不同的容灾执行策略以执行应用,实现容灾。根据不同的容灾执行效果,容灾策略编排系统10将容灾编排策略按以下类别进行划分。
备份相关编排策略,具体包括:
1)将生产环境内的关联的一种或多种数据库数备份复至指定位置的备份编排策略,其中,备份位置包括异地私有云、多有云或多云。
2)将生产环境内已备份的文件、目录和/或包括运行环境中的业务应用本身及关联文件备份复至指定位置的备份编排策略。其中,备份位置包括异地私有云、多有云或多云。
3)将生产环境内已备份的虚拟机本身及关联文件备份复至指定位置的备份编排策略,其中,备份位置包括异地私有云、多有云或多云。
4)将已备份的全部生产环境镜像备份复至指定位置的备份策略编排,其中备份位置包括异地私有云、多有云或多云。
恢复相关策略编排,具体包括:
5)将生产环境内已备份的一种或多种数据库数据恢复至容灾环境40的编排策略,其中,容灾环境40包括异地私有云、多有云或多云。
6)将生产环境内已备份的文件、目录和/或包括运行环境中的业务应用本身及关联文件恢复至容灾环境40的编排策略,其中,容灾环境40包括异地私有云、多有云或多云。
7)将生产环境内已备份的虚拟机本身及关联文件恢复至容灾环境40的编排策略,其中,容灾环境40包括异地私有云、多有云或多云。
8)将已备份的全部生产环境镜像恢复至容灾环境40的编排策略。容灾环境40包括异地私有云、多有云或多云。
迁移/重建相关策略编排,具体包括:
9)将生产环境内的运行环境、包括的业务应用本身及关联文件、或整个生产环境镜像迁移至容灾环境40的编排策略,其中,容灾环境40包括异地私有云、多有云或多云。
10)将生产环境内的运行环境、包括的业务应用本身及关联文件、或整个生产环境镜像,在容灾环境40上进行重建的编排策略,其中,容灾环境40包括异地私有云、多有云或多云。
请参阅图8,图8为本申请一实施例提供的容灾策略编排系统提供的人机交互界面图。具体到实施例中,虽然容灾策略编排系统10提供了多种容灾执行策略,在人机交互界面中,用户无需选择具体的容灾执行策略并进行配置,只需要点击开始按键,容灾策略编排系统10即可自动检测生产环境并生成容灾执行策略,并将该容灾执行策略同步应用至容灾系统中进行容灾操作。用户通过人机交互界面能够实时监控容灾过程,查看容灾结果。
上述容灾策略编排系统10中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
请参阅图9,图9为本申请一实施例提供的电子设备的架构示意图。本申请还提供一种电子设备,该电子设备可以是服务器,其内部结构图可以如图9所示。该电子设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该电子设备的处理器用于提供计算和控制能力。该电子设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该电子设备的数据库用于存储容灾策略编排方法中需保存的数据。该电子设备的网络接口用于与外部的终端通过网络连接通信。该电子程序被处理器执行时以实现一种容灾策略编排方法。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink) DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。
以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (10)
1.一种容灾策略编排方法,其特征在于,包括:
获取应用描述信息;
根据所述应用描述信息,生成容灾任务以输出容灾任务执行路径;
根据所述容灾任务执行路径,匹配与所述容灾任务执行路径相对应的执行脚本,以形成容灾执行策略;
输出所述容灾执行策略。
2.如权利要求1所述的方法,其特征在于,在所述获取应用描述信息之前,还包括:
周期性扫描生产环境,以采集所述应用描述信息;
保存并更新所述应用描述信息至应用信息库,所述应用信息库用于提供所述应用描述信息;
其中,所述应用描述信息包括应用的构成情况及所述应用的构成情况的变化。
3.如权利要求1所述的方法,其特征在于,所述根据所述应用描述信息,生成容灾任务以输出容灾任务执行路径,具体包括:
根据所述应用描述信息,从业务规则库中匹配对应的业务规则;
根据所述应用描述信息及所述业务规则,从编排算法库中选择编排算法;
根据所述编排算法及所述业务规则,生成所述容灾任务,以输出所述容灾任务执行路径。
4.如权利要求3所述的方法,其特征在于,在所述输出所述容灾任务执行路径之前,还包括:
根据所述编排算法,迭代优化所述容灾任务执行路径;
其中,所述编排算法包括遗传算法、粒子群算法、神经网络算法中的至少一种。
5.如权利要求4所述的方法,其特征在于,所述根据所述编排算法,迭代优化所述容灾任务执行路径,具体包括:
根据所述应用描述信息及所述业务规则,生成初始容灾执行路径;
从所述应用描述信息中选择多个基础依赖且相互互斥的组件,作为所述初始容灾执行路径的求解起点;
根据所述业务规则,遍历所述初始容灾执行路径的求解起点进行求解,直至满足停止条件;
计算并输出每一所述初始容灾执行路径的求解起点对应的所述容灾执行路径。
6.一种容灾策略编排系统,其特征在于,包括:
监控单元,被配置为能够获取应用描述信息;及
编排单元,被配置为能够根据所述应用描述信息,生成容灾任务以输出容灾任务执行路径以及根据所述容灾任务执行路径,匹配与所述容灾任务执行路径相对应的执行脚本,以形成并输出容灾执行策略。
7.如权利要求6所述的系统,其特征在于,还包括输入支撑库,所述输入支撑库包括:
应用信息库,被配置为能够存储并提供所述应用描述信息;
业务规则库,被配置为能够存储并提供业务规则;
编排算法库,被配置为能够存储并提供编排算法;及
执行脚本库,被配置为能够存储并提供执行脚本。
8.如权利要求7所述的系统,其特征在于,所述编排单元包括:
规划引擎,被配置为能够从所述业务规则库中匹配对应的所述业务规则并且从所述编排算法库中选择所述编排算法,并计算生成所述容灾任务,以输出所述容灾任务执行路径;及
策略引擎,被配置为能够从所述执行脚本库中匹配与所述容灾任务执行路径相对应的执行脚本,以形成容灾执行策略。
9.如权利要求6所述的系统,其特征在于,还包括主控单元,所述主控单元被配置为能够提供用户与所述容灾策略编排系统之间的交互功能。
10.一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至5任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310859041.5A CN116610497B (zh) | 2023-07-13 | 2023-07-13 | 容灾策略编排方法、系统及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310859041.5A CN116610497B (zh) | 2023-07-13 | 2023-07-13 | 容灾策略编排方法、系统及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116610497A true CN116610497A (zh) | 2023-08-18 |
CN116610497B CN116610497B (zh) | 2024-04-09 |
Family
ID=87678529
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310859041.5A Active CN116610497B (zh) | 2023-07-13 | 2023-07-13 | 容灾策略编排方法、系统及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116610497B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117389692A (zh) * | 2023-12-12 | 2024-01-12 | 苏州元脑智能科技有限公司 | 虚拟机容灾保护方法、装置、电子设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104461789A (zh) * | 2014-12-30 | 2015-03-25 | 华夏银行股份有限公司 | 一种实现灾备系统主备切换的控制方法和系统 |
CN110674966A (zh) * | 2019-06-05 | 2020-01-10 | 国网江苏省电力有限公司苏州供电分公司 | 一种电力电缆巡检路径优化方法及装置 |
CN111813605A (zh) * | 2020-07-20 | 2020-10-23 | 北京百度网讯科技有限公司 | 容灾方法、平台、电子设备以及介质 |
CN112839045A (zh) * | 2021-01-14 | 2021-05-25 | 中盈优创资讯科技有限公司 | 对策略进行编排的实现方法及装置 |
CN113220597A (zh) * | 2021-06-18 | 2021-08-06 | 中国农业银行股份有限公司 | 测试方法、测试装置、电子设备及存储介质 |
CN114780301A (zh) * | 2022-06-22 | 2022-07-22 | 深圳市木浪云科技有限公司 | 支持多云生产环境的容灾方法及系统 |
-
2023
- 2023-07-13 CN CN202310859041.5A patent/CN116610497B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104461789A (zh) * | 2014-12-30 | 2015-03-25 | 华夏银行股份有限公司 | 一种实现灾备系统主备切换的控制方法和系统 |
CN110674966A (zh) * | 2019-06-05 | 2020-01-10 | 国网江苏省电力有限公司苏州供电分公司 | 一种电力电缆巡检路径优化方法及装置 |
CN111813605A (zh) * | 2020-07-20 | 2020-10-23 | 北京百度网讯科技有限公司 | 容灾方法、平台、电子设备以及介质 |
CN112839045A (zh) * | 2021-01-14 | 2021-05-25 | 中盈优创资讯科技有限公司 | 对策略进行编排的实现方法及装置 |
CN113220597A (zh) * | 2021-06-18 | 2021-08-06 | 中国农业银行股份有限公司 | 测试方法、测试装置、电子设备及存储介质 |
CN114780301A (zh) * | 2022-06-22 | 2022-07-22 | 深圳市木浪云科技有限公司 | 支持多云生产环境的容灾方法及系统 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117389692A (zh) * | 2023-12-12 | 2024-01-12 | 苏州元脑智能科技有限公司 | 虚拟机容灾保护方法、装置、电子设备及存储介质 |
CN117389692B (zh) * | 2023-12-12 | 2024-03-12 | 苏州元脑智能科技有限公司 | 虚拟机容灾保护方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN116610497B (zh) | 2024-04-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8504517B2 (en) | Systems and methods for selective data replication | |
Mohammed et al. | Failover strategy for fault tolerance in cloud computing environment | |
US9948711B2 (en) | Allocating and managing cloud computing resources for disaster recovery | |
US11997018B2 (en) | Systems, methods, computing platforms, and storage media for administering a distributed edge computing system utilizing an adaptive edge engine | |
CN116610497B (zh) | 容灾策略编排方法、系统及电子设备 | |
US11483211B2 (en) | Infrastructure discovery and analysis | |
CN114780301B (zh) | 支持多云生产环境的容灾方法及系统 | |
CN115812298A (zh) | 供应故障的区块链管理 | |
US20230244687A1 (en) | Optimization of Virtual Warehouse Computing Resource Allocation | |
US20210041991A1 (en) | System and method for implementing a self service machine learning framework | |
CN112102099B (zh) | 保单数据处理方法、装置、电子设备及存储介质 | |
US11227323B2 (en) | Smart software recommendation using an application network | |
WO2022242334A1 (en) | Computer modeling to analyze electrical usage in an electrical grid for facilitating management of electrical transmission | |
CN114756224A (zh) | 一种活动执行方法及装置 | |
CN111737319B (zh) | 用户集群的预测方法、装置、计算机设备和存储介质 | |
US20210049074A1 (en) | Cognitive data backup | |
Selvi | Geo-Distance Based 2-Replica Maintaining Algorithm for Ensuring the Reliability forever Even During the Natural Disaster on Cloud Storage System | |
Ren et al. | Application massive data processing platform for smart manufacturing based on optimization of data storage | |
US20230401077A1 (en) | Modular decomposition and composition of container software management clusters in hybrid cloud | |
US20230393909A1 (en) | Automatically managing event-related communication data using machine learning techniques | |
US20230393860A1 (en) | Automatic application configuration synchronization based on data analytics | |
Wang et al. | Service Deployment Strategy for Customer Experience and Cost Optimization under Hybrid Network Computing Environment. | |
CN114679468B (zh) | 文件传输方法、装置、电子设备及计算机可读存储介质 | |
US20230135794A1 (en) | Synchronizing item recommendations across applications using machine learning | |
US20230280982A1 (en) | Real-time computing resource deployment and integration |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |