CN109656680A - 一种虚拟机创建方法 - Google Patents
一种虚拟机创建方法 Download PDFInfo
- Publication number
- CN109656680A CN109656680A CN201811443765.7A CN201811443765A CN109656680A CN 109656680 A CN109656680 A CN 109656680A CN 201811443765 A CN201811443765 A CN 201811443765A CN 109656680 A CN109656680 A CN 109656680A
- Authority
- CN
- China
- Prior art keywords
- workflow
- task
- virtual machine
- template
- nested
- 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.)
- Withdrawn
Links
Classifications
-
- 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45562—Creating, deleting, cloning virtual machine instances
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明涉及虚拟机管理技术领域,特别是一种虚拟机创建方法。本发明的方法是将创建虚拟机功能拆分为若干个子步骤;定义并行、嵌套和单工作流模板,基于模板设置镜像、块设备、网卡等操作;通过执行工作流创建虚拟机。本发明解决了传统创建虚拟机时无法拆分子步骤并监控操作结果的问题,方便在创建虚拟机的过程中了解每个步骤的执行情况及结果。
Description
技术领域
本发明涉及虚拟机管理技术领域,特别是一种虚拟机创建方法。
背景技术
随着科技的发展,使用虚拟机的人越来越多。要为有需要的人提供虚拟机,创建虚拟机就成了一个必要的过程。而创建虚拟机涉及存储、计算、网络等方方面面,过程复杂、步骤繁多。一般的创建虚拟机存在以下不足:
一是传统的创建虚拟机一般都呈现顺序执行的流程,可并行执行的操作往往要等待其他没有先后顺序关系的任务执行完才能执行,造成不必要的耗时;
二是修改风险大,如果创建虚拟机的流程有改动,必须阅读并理解整个创建过程的代码,并针对特定位置修改,如果修改位置有误可能影响后面流程;
三是不够灵活,无法快速实现增删一个子操作而不修改原有代码;
四是无法监控和了解每个步骤的执行情况及结果。
为了便捷灵活高效地实现创建虚拟机,了解在创建过程中的执行情况及结果,本发明提供了一种基于可并行多嵌套工作流创建虚拟机的方法。
发明内容
本发明解决的技术问题在于提供一种基于可并行多嵌套工作流创建虚拟机的方法,可以更便捷、灵活地通过配置实现创建虚拟机。
本发明解决上述技术问题的技术方案是:
所述的方法是将创建虚拟机功能拆分为若干个子步骤;定义并行、嵌套和单工作流模板,基于模板设置镜像、块设备、网卡;通过执行工作流创建虚拟机。
所述的方法包括以下步骤:
步骤1:把创建虚拟机功能拆分为若干个子步骤;
步骤2:根据并行工作流模板设置镜像、块设备、网卡的并行点;
步骤3:根据嵌套工作流模板设置镜像、块设备、网卡的嵌套流;
步骤4:根据单工作流模板设置镜像、块设备、网卡的单工作流;
步骤5:执行工作流创建虚拟机。
所述创建虚拟机功能拆分后的子步骤包括文件系统检测、镜像操作及子操作步骤、块设备操作及子操作步骤、网卡操作及子操作步骤;子步骤可以配置为并行工作流、嵌套工作流或者单工作流。
所述并行工作流模板是一套配置并行操作的模板,需要配置任务名称、操作实现类、任务id,有子操作的需要配置子任务;子任务的父任务id为此前所述的任务id,子任务可以是嵌套工作流,也可以是单工作流;根据配置好的并行工作流,指定可以并行执行的镜像、块设备、网卡操作。
所述的并行点包括开始标识点和结束标识点;开始标志点是一个任务的开始标识,开始标识条件成立任务开始执行;结束标志点是一个任务的结束标识,结束标识条件成立时结束任务;根据配置的并行点决定镜像、块设备、网卡的工作流走向。
所述嵌套工作流模板是一套配置嵌套操作的模板,需要配置任务名称、操作实现类、任务id及父任务id,有子操作的需要配置子任务;子任务的父任务id为此前所述的任务id;嵌套工作流中的父任务可以有子任务,子任务可以是嵌套工作流,也可以是单工作流;有子任务的嵌套工作流需等子任务完成后,才能执行父任务;根据配置好的嵌套工作流,指定可以嵌套执行的镜像、块设备、网卡操作。
所述单工作流模板是一套配置单操作的模板,需要配置任务名称、操作实现类、任务id,没有子操作,无需配置子任务;单工作流是顺序执行的工作流,根据配置好的单工作流,指定可以单独顺序执行的镜像、块设备、网卡操作。
本发明通过定义并行、嵌套、单工作流模板,可以灵活地定义在创建虚拟机时各子操作的关系,并记录操作情况和结果。当需要增删子操作时,只需要修改对应的模板表的关系即可实现功能的扩展或者变更。本发明的实现方法灵活且具有一定的通用性,通过配置就能扩展创建虚拟机的原有步骤。
附图说明
下面结合附图对本发明进一步说明:
图1为本发明的方法流程图。
具体实施方式
见图1所示,本发明的流程如下:
1、把创建虚拟机功能拆分为若干个子步骤的实现:
把创建虚拟机拆分为如下子步骤:1)生成虚拟机路径、2)文件系统检测、3)镜像操作及子操作步骤、4)块设备操作及子操作步骤、5)网卡操作及子操作步骤等。
2、根据并行工作流模板设置镜像、块设备、网卡等操作的并行点实现如下:
例如根据并行工作流模板设置激活镜像操作并行的并行点,新增一个镜像并行模板文件image_paralle_template,设置任务名称paralle_flow_name为active_image,任务id task_id为cc8aeac2-2c53-4772-aa1b-af1772808fa7,开始标识点start_flag为image.active=false,结束标识点end_flag为image.active=true,操作实现类operate_class=com.gcloud.vm.create.image.ImageActiveCommand,并行步骤parallel_step=1,就可以与其他并行步骤为1的操作并行执行,实现激活镜像操作。
3、根据嵌套工作流模板设置镜像、块设备、网卡等操作的嵌套流实现如下:
例如根据嵌套工作流模板设置块设备创建嵌套流,新增一个创建块设备嵌套流模板文件volume_nest_template,设置任务名称nest_flow_name为create_volume,任务idtask_id为b0501022-9dbd-4a23-80f3-c872dad8959e,嵌套子任务模板children_templates=create_block_nest_template,format_block_nest_template,操作实现类operate_class=com.gcloud.vm.create.volume.VolumeCreateCommand,父任务idparent_task_id=fc88e6be-2d0a-43ba-981a-a589c32ce79e(此id为创建系统盘任务id),就可实现创建并格式化块设备。
4、根据单工作流模板设置镜像、块设备、网卡等操作的单工作流实现如下:
例如根据单工作流模板设置网络检测单工作流,创建一个网络检测单工作流模板文件check_network_simple_template,设置任务名称simple_flow_name为check_network,任务id task_id为ce9d83d0-0bba-4aeb-85a7-17f573c896aa,操作实现类operate_class=com.gcloud.vm.create.network.CheckNetworkCommand,父任务idparent_task_id=e7d00399-e715-4bbe-ae5a-d0b90b579bd0(此id为挂载网卡任务id),就可实现检测网络。
5、执行工作流创建虚拟机实现如下:
运行服务,加载工作流配置模板,根据优先级和设定的工作流程,执行对应的任务流,记录各个子流程的操作情况及结果。
Claims (7)
1.一种虚拟机创建方法,其特征在于:所述的方法是将创建虚拟机功能拆分为若干个子步骤;定义并行、嵌套和单工作流模板,基于模板设置镜像、块设备、网卡;通过执行工作流创建虚拟机。
2.根据权利要求1所述的方法,其特征在于:所述的方法包括以下步骤:
步骤1:把创建虚拟机功能拆分为若干个子步骤;
步骤2:根据并行工作流模板设置镜像、块设备、网卡的并行点;
步骤3:根据嵌套工作流模板设置镜像、块设备、网卡的嵌套流;
步骤4:根据单工作流模板设置镜像、块设备、网卡的单工作流;
步骤5:执行工作流创建虚拟机。
3.根据权利要求2所述的方法,其特征在于:所述创建虚拟机功能拆分后的子步骤包括文件系统检测、镜像操作及子操作步骤、块设备操作及子操作步骤、网卡操作及子操作步骤;子步骤可以配置为并行工作流、嵌套工作流或者单工作流。
4.根据权利要求2所述的方法,其特征在于:
所述并行工作流模板是一套配置并行操作的模板,需要配置任务名称、操作实现类、任务id,有子操作的需要配置子任务;子任务的父任务id为此前所述的任务id,子任务可以是嵌套工作流,也可以是单工作流;根据配置好的并行工作流,指定可以并行执行的镜像、块设备、网卡操作。
5.根据权利要求2所述的方法,其特征在于:所述的并行点包括开始标识点和结束标识点;开始标志点是一个任务的开始标识,开始标识条件成立任务开始执行;结束标志点是一个任务的结束标识,结束标识条件成立时结束任务;根据配置的并行点决定镜像、块设备、网卡的工作流走向。
6.根据权利要求2所述的方法,其特征在于:所述嵌套工作流模板是一套配置嵌套操作的模板,需要配置任务名称、操作实现类、任务id及父任务id,有子操作的需要配置子任务;子任务的父任务id为此前所述的任务id;嵌套工作流中的父任务可以有子任务,子任务可以是嵌套工作流,也可以是单工作流;有子任务的嵌套工作流需等子任务完成后,才能执行父任务;根据配置好的嵌套工作流,指定可以嵌套执行的镜像、块设备、网卡操作。
7.根据权利要求2所述的方法,其特征在于:所述单工作流模板是一套配置单操作的模板,需要配置任务名称、操作实现类、任务id,没有子操作,无需配置子任务;单工作流是顺序执行的工作流,根据配置好的单工作流,指定可以单独顺序执行的镜像、块设备、网卡操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811443765.7A CN109656680A (zh) | 2018-11-29 | 2018-11-29 | 一种虚拟机创建方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811443765.7A CN109656680A (zh) | 2018-11-29 | 2018-11-29 | 一种虚拟机创建方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109656680A true CN109656680A (zh) | 2019-04-19 |
Family
ID=66112221
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811443765.7A Withdrawn CN109656680A (zh) | 2018-11-29 | 2018-11-29 | 一种虚拟机创建方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109656680A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110442431A (zh) * | 2019-08-12 | 2019-11-12 | 安徽赛福贝特信息技术有限公司 | 一种云计算系统中虚拟机的创建方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102981889A (zh) * | 2012-11-02 | 2013-03-20 | 曙光云计算技术有限公司 | 虚拟机创建方法和装置 |
CN103238136A (zh) * | 2010-12-10 | 2013-08-07 | 亚马逊技术股份有限公司 | 对于异构迁移环境的虚拟机变化 |
US20150178107A1 (en) * | 2013-12-20 | 2015-06-25 | Vmware, Inc. | Elastic Compute Fabric Using Virtual Machine Templates |
CN105761007A (zh) * | 2016-02-23 | 2016-07-13 | 湖南新邦软件开发有限责任公司 | 信息管理软件设计的辅助方法及系统 |
CN107423117A (zh) * | 2017-08-04 | 2017-12-01 | 郑州云海信息技术有限公司 | 在云存储系统中虚拟机的创建方法和装置 |
-
2018
- 2018-11-29 CN CN201811443765.7A patent/CN109656680A/zh not_active Withdrawn
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103238136A (zh) * | 2010-12-10 | 2013-08-07 | 亚马逊技术股份有限公司 | 对于异构迁移环境的虚拟机变化 |
CN102981889A (zh) * | 2012-11-02 | 2013-03-20 | 曙光云计算技术有限公司 | 虚拟机创建方法和装置 |
US20150178107A1 (en) * | 2013-12-20 | 2015-06-25 | Vmware, Inc. | Elastic Compute Fabric Using Virtual Machine Templates |
CN105761007A (zh) * | 2016-02-23 | 2016-07-13 | 湖南新邦软件开发有限责任公司 | 信息管理软件设计的辅助方法及系统 |
CN107423117A (zh) * | 2017-08-04 | 2017-12-01 | 郑州云海信息技术有限公司 | 在云存储系统中虚拟机的创建方法和装置 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110442431A (zh) * | 2019-08-12 | 2019-11-12 | 安徽赛福贝特信息技术有限公司 | 一种云计算系统中虚拟机的创建方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109933522B (zh) | 一种自动化用例的测试方法、测试系统及存储介质 | |
WO2018036342A1 (zh) | 基于csar的模型文件的可视化设计方法及装置 | |
US8769553B2 (en) | Deploy anywhere framework for heterogeneous mobile application development | |
US8918760B2 (en) | Test script generation for application image validation | |
CN100543701C (zh) | 一种实现嵌入式软件异常测试的方法及系统 | |
CN107733985B (zh) | 一种云计算系统功能组件部署方法及装置 | |
JP2019523462A (ja) | マルチタスクスケジューリング方法、システム、アプリケーションサーバ及びコンピュータの読み取り可能な記憶媒体 | |
CN104778124A (zh) | 一种软件应用自动化测试方法 | |
CN111241454A (zh) | 一种生成网页代码的方法、系统和装置 | |
CN107807815B (zh) | 分布式处理任务的方法和装置 | |
KR20230127351A (ko) | 비전 소프트웨어 개발 시스템, 방법, 장치 및 컴퓨터저장 매체 | |
CN105848135A (zh) | 一种基于移动终端的多运营商应用定制控制方法及系统 | |
CN113159618A (zh) | 一种技术视角分离的规则引擎设计方法和装置 | |
CN111208995A (zh) | Ibm主机作业的自动生成方法、系统、装置及存储介质 | |
Vanhove et al. | Tengu: An experimentation platform for big data applications | |
CN109656680A (zh) | 一种虚拟机创建方法 | |
CN113902387A (zh) | 一种工作流的处理方法、装置及电子设备 | |
CN116225415A (zh) | 一种前端工程化方法及系统 | |
CN110908767A (zh) | 一种参数自动部署方法和装置 | |
CN109343894A (zh) | 一种云平台的运维方法和装置 | |
JP5177082B2 (ja) | 開発支援装置,プログラム | |
CN110851516B (zh) | 主机运控系统及方法 | |
JP6097231B2 (ja) | プログラム生成装置および方法 | |
CN114356430A (zh) | 一种基于airflow调度系统的DAG依赖配置工具 | |
CN113807698A (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 | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20190419 |
|
WW01 | Invention patent application withdrawn after publication |