CN112965869B - 一种用于非标准化应用系统的自动化运维方法及系统 - Google Patents
一种用于非标准化应用系统的自动化运维方法及系统 Download PDFInfo
- Publication number
- CN112965869B CN112965869B CN202011630809.4A CN202011630809A CN112965869B CN 112965869 B CN112965869 B CN 112965869B CN 202011630809 A CN202011630809 A CN 202011630809A CN 112965869 B CN112965869 B CN 112965869B
- Authority
- CN
- China
- Prior art keywords
- maintenance
- entity
- virtual
- execution
- task
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3006—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3051—Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3089—Monitoring arrangements determined by the means or processing involved in sensing the monitored data, e.g. interfaces, connectors, sensors, probes, agents
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Quality & Reliability (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Stored Programmes (AREA)
Abstract
本发明涉及一种用于非标准化应用系统的自动化运维方法及系统,方法包括以下步骤:获取非标准化应用系统中的实体运维对象;将实体运维对象映射为虚拟运维对象;自动化运维系统获取执行流程;根据执行流程执行运维任务,执行运维任务具体为:根据运维任务获取自动化运维系统中预配置的脚本模板,根据脚本模板、虚拟运维对象与实体运维对象的映射关系生成可执行脚本,调用可执行脚本,对非标准化应用系统中的实体运维对象进行操作。与现有技术相比,本发明通过将实体运维对象映射为虚拟运维对象,在自动化运维系统中对虚拟运维对象进行运维管理,从而实现了对非标准化的应用系统中的实体运维对象的运维管理。
Description
技术领域
本发明涉及自动化运维领域,尤其是涉及一种用于非标准化应用系统的自动化运维方法及系统。
背景技术
传统的主动运维方法是,针对具体的应用系统,技术岗位的操作员依据运维手册中的流程步骤来进行操作,包括定期检查、系统更新、执行任务或者其他的日常维护工作,包含了大量重复性的劳动。特别是随着信息化的发展和建设,数据中心的规模越来越大,运维人员管理的服务器和系统越来越多,纯手工方式已不能满足对数据中心的运维效率要求。中国专利CN202010033042.0公开了一种自动化智能运维系统及运维方法,针对日常维护作业存在周期性、重复性的特点,推出了自动化运维系统,帮助解决此类工作的自动执行问题,以降低人员的重复性工作。
标准化的应用系统中运维对象具有统一标准的配置,配置信息是标准的,可以使用自动化运维系统对标准化的应用系统进行自动化运维,但是,很多数据中心的应用系统是非标准化的。比如在企业的信息化建设过程中,建设初期没有配置标准约束,或是难以设计出适用不同阶段的应用系统配置标准,导致应用系统的配置多样化,如数据库的关键配置信息不一致、Web容器的部署目录不一致等。而且,对当前的应用系统进行标准化改造,存在巨大的困难和风险,可能会导致应用系统不能正常工作、丢失数据等。因此,现有的自动化系统不能应用于非标准化应用系统。
因此,有必要提供一种用于非标准化应用系统的自动化运维系统,能够对非标准化的应用系统进行自动化运维。
发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种用于非标准化应用系统的自动化运维方法及系统,通过将实体运维对象映射为虚拟运维对象,在自动化运维系统中对虚拟运维对象进行运维管理,从而实现了对非标准化的应用系统中的实体运维对象的运维管理。
本发明的目的可以通过以下技术方案来实现:
一种用于非标准化应用系统的自动化运维方法,包括以下步骤:
S1:获取非标准化应用系统中的实体运维对象,并分别记录各个实体运维对象的关键配置信息;
S2:将各个实体运维对象分别映射为虚拟运维对象,实体运维对象的关键配置信息抽象为虚拟运维对象的属性,将虚拟运维对象添加到自动化运维系统中;
S3:自动化运维系统获取多个运维任务和运维任务之间的执行流程;
S4:自动化运维系统根据执行流程执行运维任务,执行运维任务具体为:
根据运维任务获取自动化运维系统中预配置的脚本模板,根据脚本模板、虚拟运维对象与实体运维对象的映射关系生成可执行脚本,调用可执行脚本,对非标准化应用系统中的实体运维对象进行操作。
进一步的,所述实体运维对象包括web容器、java程序、数据库实例。
进一步的,所述步骤S2之后,还包括对自动化运维系统中的虚拟运维对象进行删除操作、修改操作、查看操作。
进一步的,所述步骤S4之前,还包括在自动化运维系统中增加、删除、修改、查看脚本模板。
进一步的,所述步骤S4中,根据脚本模板、虚拟运维对象与实体运维对象的映射关系生成可执行脚本具体为:
结合脚本模板中的运维对象属性占位符、虚拟运维对象的属性,得到虚拟运维对象脚本,根据实体运维对象的关键配置信息与虚拟运维对象的属性之间的映射关系,由虚拟运维对象脚本得到可执行脚本,所述可执行脚本用于对非标准化应用系统中的实体运维对象进行操作。
进一步的,所述步骤S4还包括:对各个运维任务的执行状态进行监控,并将监控结果返回自动化运维系统,自动化运维系统根据监控结果调整运维流程。
更进一步的,对各个运维任务的执行状态进行监控具体为:
分别获取各个运维任务所涉及的任务实体运维对象,在一个运维任务的执行过程中和执行完成后监控该运维任务的任务实体运维对象的状态。
一种用于非标准化应用系统的自动化运维系统,基于如上所述的自动化运维方法,包括映射单元、虚拟运维对象管理单元、脚本模板管理单元、流程管理单元、调度单元、执行单元;
所述映射单元用于管理实体运维对象与虚拟运维对象之间的映射关系;
所述虚拟运维对象管理单元用于增加、删除、修改、查看虚拟运维对象;
所述脚本模板管理单元用于增加、删除、修改、查看脚本模板;
所述流程管理单元用于增加、删除、修改、查看执行流程中的运维任务;
所述调度单元用于根据执行流程调度运维任务;
所述执行单元用于执行运维任务。
进一步的,还包括执行状态监控单元,用于对运维任务的执行状态进行监控,调度单元根据执行流程和运维任务的执行状态调度运维任务。
进一步的,还包括人机交互单元,用于提供自动化运维系统的交互界面和第三方接口。
与现有技术相比,本发明具有以下有益效果:
(1)通过将实体运维对象映射为虚拟运维对象,在自动化运维系统中对虚拟运维对象进行运维管理,从而实现了对非标准化的应用系统中的实体运维对象的运维管理。
(2)不需要对非标准化应用系统进行标准化处理,直接将实体运维对象映射为虚拟运维对象,避免了应用系统标准化改造所带来的困难和风险。
(3)通过脚本模板,根据实体运维对象与虚拟运维对象之间的应用关系,生成可执行脚本,自动化程度高,减轻了运维人员的工作压力。
附图说明
图1为实施例中自动化运维系统的结构图。
具体实施方式
下面结合附图和具体实施例对本发明进行详细说明。本实施例以本发明技术方案为前提进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。
实施例1:
一种用于非标准化应用系统的自动化运维方法,包括以下步骤:
S1:获取非标准化应用系统中的实体运维对象,并分别记录各个实体运维对象的关键配置信息。实体运维对象包括web容器、java程序、数据库实例等等。
S2:将各个实体运维对象分别映射为虚拟运维对象,实体运维对象的关键配置信息抽象为虚拟运维对象的属性,将虚拟运维对象添加到自动化运维系统中。
还可以对自动化运维系统中的虚拟运维对象进行删除操作、修改操作、查看操作,对虚拟运维对象的可用性、虚拟运维对象的状态进行监控。
本实施例中,实体运维对象为服务器中部署的一组tomcat中间件,该tomcat中间件记为为实体运维对象r_obj,tomcat的部署目录、web程序包的部署目录、tomcat的容器的设置等内容即为该r_obj的关键配置信息。
将r_obj映射为虚拟运维对象v_obj,放入自动化运维系统,tomcat的部署目录、web程序包的部署目录、tomcat的容器的设置等内容分别映射为v_obj的属性。
同理,可以将多个实体运维对象映射为虚拟运维对象,并在自动化运维系统中管理。实体运维对象和虚拟运维对象之间存在映射关系,因此,对虚拟运维对象执行相应的操作时,通过映射关系,操作被解析为对实体运维对象的操作。
例如:现需要对多个实体运维对象进行更新操作,由于实体运维对象分别部署在不同的目录下,现有技术中只能依次单独对实体运维对象进行更新。通过本申请,将多个实体运维对象分别映射为虚拟运维对象,它们的部署目录被抽象为虚拟运维对象的属性,就可以对虚拟运维对象进行批处理更新,之后,各个虚拟运维对象再通过与实体运维对象的映射关系,分别进行各个实体运维对象的更新。
S3:自动化运维系统获取多个运维任务和运维任务之间的执行流程。
在运维过程中,包括多个运维任务,运维任务之间存在前后依赖关系,如前序任务完成后才能进行后续任务。用户将需要执行的运维任务进行编排,得到执行流程。也可以预先设置执行流程模板,直接在执行流程模板里增加、修改、删除运维任务,得到执行流程。
S4:自动化运维系统根据执行流程执行运维任务,执行运维任务具体为:
根据运维任务获取自动化运维系统中预配置的脚本模板,根据脚本模板、虚拟运维对象与实体运维对象的映射关系生成可执行脚本,调用可执行脚本,对非标准化应用系统中的实体运维对象进行操作。
可以在自动化运维系统中增加、删除、修改、查看脚本模板,在需要使用时,直接调用相关的脚本模板即可,如果在使用时,找不到所需的脚本模板,也可以直接添加脚本模板。
一个脚本模板中包括执行命令和运维对象属性占位符,如当运维对象是数据库是,执行命令为SQL命令,运维对象属性为数据库的关键配置信息,如表名、列名等。
生成可执行脚本具体为:结合脚本模板中的运维对象属性占位符、虚拟运维对象的属性,得到虚拟运维对象脚本,根据实体运维对象的关键配置信息与虚拟运维对象的属性之间的映射关系,由虚拟运维对象脚本得到可执行脚本,可执行脚本用于对非标准化应用系统中的实体运维对象进行操作。
将脚本模板中的运维对象属性占位符替换为虚拟运维对象的属性,就得到了虚拟运维对象脚本,为了能直接对实体运维对象进行操作,根据实体运维对象的关键配置信息与虚拟运维对象的属性之间的映射关系,将脚本模板中的运维对象属性占位符再次替换为实体运维对象的关键配置信息,得到可执行脚本。
为了保证运维过程的可靠性,步骤S4中还包括对各个运维任务的执行状态进行监控,并将监控结果返回自动化运维系统,自动化运维系统根据监控结果调整运维流程。对各个运维任务的执行状态进行监控具体为:
分别获取各个运维任务所涉及的任务实体运维对象,在一个运维任务的执行过程中和执行完成后监控该运维任务的任务实体运维对象的状态。
一种用于非标准化应用系统的自动化运维系统,如图1所示,包括映射单元、虚拟运维对象管理单元、脚本模板管理单元、流程管理单元、调度单元、执行单元;
映射单元用于管理实体运维对象与虚拟运维对象之间的映射关系;映射单元中存储:实体运维对象与虚拟运维对象的映射表、实体运维对象关键配置信息与虚拟运维对象属性的映射表,通过映射表,可以将实体运维对象映射为虚拟运维对象,也可以将对虚拟运维对象执行的操作解析为对实体运维对象执行的操作。
虚拟运维对象管理单元用于增加、删除、修改、查看虚拟运维对象;虚拟运维对象管理单元也可以根据虚拟运维对象与实体运维对象间的映射关系,查看实体运维对象的状态。
脚本模板管理单元用于增加、删除、修改、查看脚本模板;脚本模板实际上是用户运维操作的抽象,一个脚本模板可以执行一类操作。
流程管理单元用于增加、删除、修改、查看执行流程中的运维任务;可以配置运维任务之间的依赖关系,从而决定运维任务的执行顺序,并根据预设置的规则检测执行流程是否合规。
调度单元用于根据执行流程调度运维任务;
执行单元用于执行运维任务;也就是选择所需的脚本模板,生成可执行脚本并执行,从而对实体运维单元进行操作,完成运维任务。
执行状态监控单元,用于对运维任务的执行状态进行监控,调度单元根据执行流程和运维任务的执行状态调度运维任务。
人机交互单元,用于提供自动化运维系统的交互界面和第三方接口。本实施例中,人机交互单元使用Web形式的图形交互界面,便于用户操作,提供了API接口,供第三方系统调用,使用VUE框架开发,由java spring开发的后台提供接口。
本实施例中,需要完成的工作是对应用进行更新,用户在脚本模板管理单元中添加所需的脚本模板,在流程管理单元设置执行流程,执行流程包括依次执行的4个运维任务:关闭应用、更新数据库、更新应用、启动应用。调度单元根据执行流程调度运维任务,执行单元执行每个运维任务时选择不同的脚本模板,生成所需的可执行脚本,对实体运维对象进行管理,完成运维任务。
同时,执行状态监控单元监控运维任务的执行状态,如监控结果为成功执行,则执行下一个运维任务,如果监控结构为执行失败或其他异常情况,则调度单元根据异常处理方式进行处理。
得到可执行脚本后,然后根据虚拟运维对象与实体运维对象的映射关系,通过ssh协议或者非标准化应用系统上部署的agent,把可执行脚本分发到非标准化应用系统上的实体运维对象并执行。
以上详细描述了本发明的较佳具体实施例。应当理解,本领域的普通技术人员无需创造性劳动就可以根据本发明的构思作出诸多修改和变化。因此,凡本技术领域中技术人员依本发明的构思在现有技术的基础上通过逻辑分析、推理或者有限的实验可以得到的技术方案,皆应在由权利要求书所确定的保护范围内。
Claims (10)
1.一种用于非标准化应用系统的自动化运维方法,其特征在于,包括以下步骤:
S1:获取非标准化应用系统中的实体运维对象,并分别记录各个实体运维对象的关键配置信息;
S2:将各个实体运维对象分别映射为虚拟运维对象,实体运维对象的关键配置信息抽象为虚拟运维对象的属性,将虚拟运维对象添加到自动化运维系统中;
S3:自动化运维系统获取多个运维任务和运维任务之间的执行流程;
S4:自动化运维系统根据执行流程执行运维任务,执行运维任务具体为:
根据运维任务获取自动化运维系统中预配置的脚本模板,根据脚本模板、虚拟运维对象与实体运维对象的映射关系生成可执行脚本,调用可执行脚本,对非标准化应用系统中的实体运维对象进行操作。
2.根据权利要求1所述的一种用于非标准化应用系统的自动化运维方法,其特征在于,所述实体运维对象包括web容器、java程序、数据库实例。
3.根据权利要求1所述的一种用于非标准化应用系统的自动化运维方法,其特征在于,所述步骤S2之后,还包括对自动化运维系统中的虚拟运维对象进行删除操作、修改操作、查看操作。
4.根据权利要求1所述的一种用于非标准化应用系统的自动化运维方法,其特征在于,所述步骤S4之前,还包括在自动化运维系统中增加、删除、修改、查看脚本模板。
5.根据权利要求1所述的一种用于非标准化应用系统的自动化运维方法,其特征在于,所述步骤S4中,根据脚本模板、虚拟运维对象与实体运维对象的映射关系生成可执行脚本具体为:
结合脚本模板中的运维对象属性占位符、虚拟运维对象的属性,得到虚拟运维对象脚本,根据实体运维对象的关键配置信息与虚拟运维对象的属性之间的映射关系,由虚拟运维对象脚本得到可执行脚本,所述可执行脚本用于对非标准化应用系统中的实体运维对象进行操作。
6.根据权利要求1所述的一种用于非标准化应用系统的自动化运维方法,其特征在于,所述步骤S4还包括:对各个运维任务的执行状态进行监控,并将监控结果返回自动化运维系统,自动化运维系统根据监控结果调整运维流程。
7.根据权利要求6所述的一种用于非标准化应用系统的自动化运维方法,其特征在于,对各个运维任务的执行状态进行监控具体为:
分别获取各个运维任务所涉及的任务实体运维对象,在一个运维任务的执行过程中和执行完成后监控该运维任务的任务实体运维对象的状态。
8.一种用于非标准化应用系统的自动化运维系统,其特征在于,基于如权利要求1-7中任一所述的自动化运维方法,包括映射单元、虚拟运维对象管理单元、脚本模板管理单元、流程管理单元、调度单元、执行单元;
所述映射单元用于管理实体运维对象与虚拟运维对象之间的映射关系;
所述虚拟运维对象管理单元用于增加、删除、修改、查看虚拟运维对象;
所述脚本模板管理单元用于增加、删除、修改、查看脚本模板;
所述流程管理单元用于增加、删除、修改、查看执行流程中的运维任务;
所述调度单元用于根据执行流程调度运维任务;
所述执行单元用于执行运维任务。
9.根据权利要求8所述的一种用于非标准化应用系统的自动化运维系统,其特征在于,还包括执行状态监控单元,用于对运维任务的执行状态进行监控,调度单元根据执行流程和运维任务的执行状态调度运维任务。
10.根据权利要求8所述的一种用于非标准化应用系统的自动化运维系统,其特征在于,还包括人机交互单元,用于提供自动化运维系统的交互界面和第三方接口。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011630809.4A CN112965869B (zh) | 2020-12-31 | 2020-12-31 | 一种用于非标准化应用系统的自动化运维方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011630809.4A CN112965869B (zh) | 2020-12-31 | 2020-12-31 | 一种用于非标准化应用系统的自动化运维方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112965869A CN112965869A (zh) | 2021-06-15 |
CN112965869B true CN112965869B (zh) | 2022-09-16 |
Family
ID=76271235
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011630809.4A Active CN112965869B (zh) | 2020-12-31 | 2020-12-31 | 一种用于非标准化应用系统的自动化运维方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112965869B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106777764A (zh) * | 2016-12-31 | 2017-05-31 | 佛山市幻云科技有限公司 | 存储仿真方法、系统及虚拟现实服务器 |
CN110569140A (zh) * | 2019-08-29 | 2019-12-13 | 网宿科技股份有限公司 | 一种运维方法及装置 |
CN110705724A (zh) * | 2019-09-26 | 2020-01-17 | 浙江九州云信息科技有限公司 | 一种可重用自动化运维管理系统 |
CN111176707A (zh) * | 2019-12-06 | 2020-05-19 | 上海上讯信息技术股份有限公司 | 模板化的自动化运维方法、装置及电子设备 |
-
2020
- 2020-12-31 CN CN202011630809.4A patent/CN112965869B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106777764A (zh) * | 2016-12-31 | 2017-05-31 | 佛山市幻云科技有限公司 | 存储仿真方法、系统及虚拟现实服务器 |
CN110569140A (zh) * | 2019-08-29 | 2019-12-13 | 网宿科技股份有限公司 | 一种运维方法及装置 |
CN110705724A (zh) * | 2019-09-26 | 2020-01-17 | 浙江九州云信息科技有限公司 | 一种可重用自动化运维管理系统 |
CN111176707A (zh) * | 2019-12-06 | 2020-05-19 | 上海上讯信息技术股份有限公司 | 模板化的自动化运维方法、装置及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN112965869A (zh) | 2021-06-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108108297B (zh) | 自动化测试的方法和装置 | |
CN109933522B (zh) | 一种自动化用例的测试方法、测试系统及存储介质 | |
US8762929B2 (en) | System and method for exclusion of inconsistent objects from lifecycle management processes | |
CN108388445B (zh) | 一种基于“平台+应用”模式的持续集成方法 | |
JPH07146844A (ja) | 製造装置の制御および調整を行う統合オートメーション開発システムおよび方法 | |
CN114327678B (zh) | 一种支持多引擎的实时数据处理系统及方法 | |
CN113553238B (zh) | 云平台资源异常自动处理系统及方法 | |
CN113434158B (zh) | 一种大数据组件的自定义管理方法、装置、设备及介质 | |
WO2020015191A1 (zh) | 业务规则的发布管理方法、电子装置及可读存储介质 | |
CN110543328A (zh) | 基于Ambari的跨平台组件管理方法、系统、终端及存储介质 | |
CN111726257A (zh) | Rpa机器人管理方法、平台及存储介质 | |
CN112000350B (zh) | 一种动态规则更新方法、装置及存储介质 | |
CN112699055A (zh) | 一种维护成本较低的软件自动化测试方法及系统 | |
CN114064213A (zh) | 基于Kubernets容器环境的快速编排服务方法及系统 | |
CN113934832A (zh) | 基于会话的交互处理方法、装置、设备、介质及程序产品 | |
CN112596779A (zh) | 兼容双版本的依赖包生成方法、装置、设备及存储介质 | |
CN114443294B (zh) | 大数据服务组件部署方法、系统、终端及存储介质 | |
US9665416B1 (en) | Asynchronous execution of computer operations | |
CN112965869B (zh) | 一种用于非标准化应用系统的自动化运维方法及系统 | |
CN113297081A (zh) | 一种持续集成流水线的执行方法和装置 | |
CN111813633A (zh) | 性能监控方法、装置、设备及可读存储介质 | |
US11366642B1 (en) | Change migration: processes for ensuring successful deployment of design changes | |
CN112131022B (zh) | 开放api管理方法、装置、系统与计算机可读存储介质 | |
CN110442331B (zh) | 一种自动化搭建代码框架的方法及系统 | |
CN113010189A (zh) | 一种数据库安装方法、装置、设备及存储介质 |
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 |