CN112000440A - 一种基于云平台的多启动卷虚拟机启动顺序变更方法 - Google Patents

一种基于云平台的多启动卷虚拟机启动顺序变更方法 Download PDF

Info

Publication number
CN112000440A
CN112000440A CN202010857673.4A CN202010857673A CN112000440A CN 112000440 A CN112000440 A CN 112000440A CN 202010857673 A CN202010857673 A CN 202010857673A CN 112000440 A CN112000440 A CN 112000440A
Authority
CN
China
Prior art keywords
virtual machine
volume
boot
information
cloud platform
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
Application number
CN202010857673.4A
Other languages
English (en)
Other versions
CN112000440B (zh
Inventor
张金生
蒋方文
王新雨
王铭锐
丁瑞
孙继赟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur Cloud Information Technology Co Ltd
Original Assignee
Inspur Cloud Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Inspur Cloud Information Technology Co Ltd filed Critical Inspur Cloud Information Technology Co Ltd
Priority to CN202010857673.4A priority Critical patent/CN112000440B/zh
Publication of CN112000440A publication Critical patent/CN112000440A/zh
Application granted granted Critical
Publication of CN112000440B publication Critical patent/CN112000440B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45575Starting, stopping, suspending or resuming 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)
  • Stored Programmes (AREA)

Abstract

本发明公开一种基于云平台的多启动卷虚拟机启动顺序变更方法,涉及Openstack云平台技术领域,该方法针对KVM和QEMU搭建的Openstack云平台,通过Nova‑api服务允许用户请求重新定义卷启动顺序,修改虚拟机实例的启动卷信息和块设备映射信息,并根据用户请求向Nova‑compute发送进行硬重启调用的消息,通过Nova‑compute服务,变更虚拟机硬重启的处理,生成虚拟机实例定义的XML文件,借助底层QEMU的对启动顺序的支持,实现Openstack云平台对多启动卷虚拟机启动顺序变更功能的支持。本发明实现了Openstack虚拟机支持挂载多个启动卷设备,并根据需要选择使用选取的启动卷进行虚机的启动,达到切换启动卷进行启动甚至以此方法切换操作系统的目的。

Description

一种基于云平台的多启动卷虚拟机启动顺序变更方法
技术领域
本发明涉及Openstack云平台技术领域,具体的说是一种基于云平台的多启动卷虚拟机启动顺序变更方法。
背景技术
随着云平台技术的快速发展和普及,云计算技术已经逐渐应用在各个领域,越来越多的企事业单位和个人将传统应用迁移到云数据中心。
Openstack作为云平台中的主流开源平台,为广大用户提供了IAAS层虚机管理功能。
目前,Openstack开源社区所实现的虚机创建过程中,虽然支持挂载多个卷,但是没有考虑对单个虚机实例进行多个卷之间的启动切换,即已有技术不支持多启动卷之间进行启动卷的切换。尤其对于有切换操作系统、或者使用临时启动卷对原有操作系统进行修复的需求时,显然现有技术是不能满足的。
发明内容
针对Openstack平台虚拟机没有提供多启动卷进行启动顺序变更的问题,无法满足用户根据需要方便地切换操作系统或启动卷,本发明提供一种基于云平台的多启动卷虚拟机启动顺序变更方法。
本发明的一种基于云平台的多启动卷虚拟机启动顺序变更方法,解决上述技术问题采用的技术方案如下:
一种基于云平台的多启动卷虚拟机启动顺序变更方法,针对KVM和QEMU搭建的Openstack云平台,
基于Nova-api服务,在允许用户请求重新定义卷启动顺序时,修改虚拟机实例的启动卷信息和块设备映射信息,并根据用户请求向Nova-compute发送进行硬重启调用的消息,
基于Nova-compute服务,变更虚拟机硬重启的处理,生成虚拟机实例定义的XML文件,借助底层QEMU的对启动顺序的支持,实现Openstack云平台对多启动卷虚拟机启动顺序变更功能的支持。
可选的,允许用户请求重新定义卷启动顺序,其具体流程为:
定义查询虚拟机实例的卷的启动顺序接口,
定义查询允许用户请求重新定义虚拟机实例所挂载的卷启动顺序变更接口,用户请求包含新定义的卷启动信息,
处理请求时,根据新定义的卷启动信息对虚拟机实例信息进行启动卷信息变更和块设备映射信息的变更,
随后根据用户的请求向Nova-compute发送进行硬重启调用的消息。
进一步可选的,用户请求包含新定义的卷启动信息,新定义的卷启动信息包括每个启动卷的启动顺序信息和是否进行立即硬重启的可选项。
进一步可选的,基于虚拟机启动的卷大小会因为变更启动卷顺序后而变更,处理请求时,还根据新定义的卷启动信息对虚拟机实例信息进行规格变更。
进一步可选的,根据用户的请求向Nova-compute发送进行硬重启调用的消息时,是否发送重启请求取决于用户是否将硬重启选项设置为是,如果选择立即重启,则启动顺序修改立即生效。
可选的,变更虚拟机硬重启的处理时,应当首先判断当前计算节点是否支持变更启动顺序,
若支持,则对虚拟机的配置进行变更,生成虚拟机实例定义的XML文件,
若不支持,则按虚拟机实例的原配置信息进行虚拟机定义XML文件的生成。
进一步可选的,虚拟机硬重启,生成虚拟机实例定义的XML文件,其具体流程为:
根据虚拟机实例的信息重新构建虚拟机配置,
判断当前虚拟机是否由Qemu虚拟化,
判断启动盘类型是否为“hd”,
判断虚拟机是否挂载了多块可启动卷,
在判断结果全部为是时,满足条件,变更虚拟机的配置,增加块设备定义的bootindex,清除os元素中的boot dev元素,
随后根据虚拟机配置加入boot order属性信息,并转换为虚拟机实例定义的XML文件。
进一步可选的,基于虚拟机实例定义的XML文件,QEMU根据新的启动顺序启动虚拟机。
本发明的一种基于云平台的多启动卷虚拟机启动顺序变更方法,与现有技术相比具有的有益效果是:
1)本发明针对KVM和QEMU搭建的Openstack云平台,通过Nova-api服务允许用户请求重新定义卷启动顺序,修改虚拟机实例的启动卷信息和块设备映射信息,并根据用户请求向Nova-compute发送进行硬重启调用的消息,通过Nova-compute服务,变更虚拟机硬重启的处理,生成虚拟机实例定义的XML文件,借助底层QEMU的对启动顺序的支持,实现Openstack云平台对多启动卷虚拟机启动顺序变更功能的支持;
2)本发明实现了Openstack虚拟机支持挂载多个启动卷设备,并根据需要选择使用选取的启动卷进行虚机的启动,达到切换启动卷进行启动甚至以此方法切换操作系统的目的。
附图说明
附图1是本发明的方法流程图。
具体实施方式
为使本发明的技术方案、解决的技术问题和技术效果更加清楚明白,以下结合具体实施例,对本发明的技术方案进行清楚、完整的描述。
实施例一:
结合附图1,本实施例提出一种基于云平台的多启动卷虚拟机启动顺序变更方法,针对KVM和QEMU搭建的Openstack云平台,通过变更Nova-api服务和Nova-compute服务,实现了Openstack云平台对多启动卷虚拟机启动顺序变更功能的支持。
(一)基于Nova-api服务,在允许用户请求重新定义卷启动顺序时,修改虚拟机实例的启动卷信息和块设备映射信息,并根据用户请求向Nova-compute发送进行硬重启调用的消息。
本操作中,允许用户请求重新定义卷启动顺序,其具体流程为:
定义查询虚拟机实例的卷的启动顺序接口;
定义查询允许用户请求重新定义虚拟机实例所挂载的卷启动顺序变更接口,用户请求包含新定义的卷启动信息,新定义的卷启动信息包括每个启动卷的启动顺序信息和是否进行立即硬重启的可选项;
处理请求时,根据新定义的卷启动信息对虚拟机实例信息进行启动卷信息变更和块设备映射信息的变更;本实施例中,基于虚拟机启动的卷大小会因为变更启动卷顺序后而变更,还根据新定义的卷启动信息对虚拟机实例信息进行规格变更;
随后根据用户的请求向Nova-compute发送进行硬重启调用的消息。
本操作中,根据用户的请求向Nova-compute发送进行硬重启调用的消息时,是否发送重启请求取决于用户是否将硬重启选项设置为是,如果选择立即重启,则启动顺序修改立即生效。
(二)基于Nova-compute服务,变更虚拟机硬重启的处理,生成虚拟机实例定义的XML文件,借助底层QEMU的对启动顺序的支持,实现Openstack云平台对多启动卷虚拟机启动顺序变更功能的支持。
本操作中,变更虚拟机硬重启的处理时,首先判断当前计算节点是否支持变更启动顺序,
(A)若支持,则
(1)根据虚拟机实例的信息重新构建虚拟机配置,
(2)判断
(a)当前虚拟机是否由Qemu虚拟化,
(b)启动盘类型是否为“hd”,
(c)虚拟机是否挂载了多块可启动卷,
(3)在(a)、(b)、(c)全部是时,满足条件,变更虚拟机的配置,增加块设备定义的boot index,清除os元素中的boot dev元素,
(4)随后根据虚拟机配置加入boot order属性信息,并转换为虚拟机实例定义的XML文件。
(B)若不支持,则按虚拟机实例的原配置信息进行虚拟机定义XML文件的生成。
本操作中,基于虚拟机实例定义的XML文件,QEMU根据新的启动顺序启动虚拟机。
综上可知,采用本发明的一种基于云平台的多启动卷虚拟机启动顺序变更方法,针对KVM和QEMU搭建的Openstack云平台,基于Nova-api服务和Nova-compute服务,实现了Openstack虚拟机支持挂载多个启动卷设备,并根据需要选择使用选取的启动卷进行虚机的启动,达到切换启动卷进行启动甚至以此方法切换操作系统的目的。
以上应用具体个例对本发明的原理及实施方式进行了详细阐述,这些实施例只是用于帮助理解本发明的核心技术内容。基于本发明的上述具体实施例,本技术领域的技术人员在不脱离本发明原理的前提下,对本发明所作出的任何改进和修饰,皆应落入本发明的专利保护范围。

Claims (8)

1.一种基于云平台的多启动卷虚拟机启动顺序变更方法,其特征在于,针对KVM和QEMU搭建的Openstack云平台,
基于Nova-api服务,在允许用户请求重新定义卷启动顺序时,修改虚拟机实例的启动卷信息和块设备映射信息,并根据用户请求向Nova-compute发送进行硬重启调用的消息,
基于Nova-compute服务,变更虚拟机硬重启的处理,生成虚拟机实例定义的XML文件,借助底层QEMU的对启动顺序的支持,实现Openstack云平台对多启动卷虚拟机启动顺序变更功能的支持。
2.根据权利要求1所述的一种基于云平台的多启动卷虚拟机启动顺序变更方法,其特征在于,允许用户请求重新定义卷启动顺序,其具体流程为:
定义查询虚拟机实例的卷的启动顺序接口,
定义查询允许用户请求重新定义虚拟机实例所挂载的卷启动顺序变更接口,用户请求包含新定义的卷启动信息,
处理请求时,根据新定义的卷启动信息对虚拟机实例信息进行启动卷信息变更和块设备映射信息的变更,
随后根据用户的请求向Nova-compute发送进行硬重启调用的消息。
3.根据权利要求2所述的一种基于云平台的多启动卷虚拟机启动顺序变更方法,其特征在于,新定义的卷启动信息,包括每个启动卷的启动顺序信息和是否进行立即硬重启的可选项。
4.根据权利要求2所述的一种基于云平台的多启动卷虚拟机启动顺序变更方法,其特征在于,基于虚拟机启动的卷大小会因为变更启动卷顺序后而变更,处理请求时,还根据新定义的卷启动信息对虚拟机实例信息进行规格变更。
5.根据权利要求2所述的一种基于云平台的多启动卷虚拟机启动顺序变更方法,其特征在于,根据用户的请求向Nova-compute发送进行硬重启调用的消息时,是否发送重启请求取决于用户是否将硬重启选项设置为是,如果选择立即重启,则启动顺序修改立即生效。
6.根据权利要求1所述的一种基于云平台的多启动卷虚拟机启动顺序变更方法,其特征在于,变更虚拟机硬重启的处理时,应当首先判断当前计算节点是否支持变更启动顺序,
若支持,则对虚拟机的配置进行变更,生成虚拟机实例定义的XML文件,
若不支持,则按虚拟机实例的原配置信息进行虚拟机定义XML文件的生成。
7.根据权利要求6所述的一种基于云平台的多启动卷虚拟机启动顺序变更方法,其特征在于,虚拟机硬重启,生成虚拟机实例定义的XML文件,其具体流程为:
根据虚拟机实例的信息重新构建虚拟机配置,
判断当前虚拟机是否由Qemu虚拟化,
判断启动盘类型是否为“hd”,
判断虚拟机是否挂载了多块可启动卷,
在判断结果全部为是时,满足条件,变更虚拟机的配置,增加块设备定义的bootindex,清除os元素中的boot dev元素,
随后根据虚拟机配置加入boot order属性信息,并转换为虚拟机实例定义的XML文件。
8.根据权利要求7所述的一种基于云平台的多启动卷虚拟机启动顺序变更方法,其特征在于,基于虚拟机实例定义的XML文件,QEMU根据新的启动顺序启动虚拟机。
CN202010857673.4A 2020-08-24 2020-08-24 一种基于云平台的多启动卷虚拟机启动顺序变更方法 Active CN112000440B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010857673.4A CN112000440B (zh) 2020-08-24 2020-08-24 一种基于云平台的多启动卷虚拟机启动顺序变更方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010857673.4A CN112000440B (zh) 2020-08-24 2020-08-24 一种基于云平台的多启动卷虚拟机启动顺序变更方法

Publications (2)

Publication Number Publication Date
CN112000440A true CN112000440A (zh) 2020-11-27
CN112000440B CN112000440B (zh) 2023-03-28

Family

ID=73470299

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010857673.4A Active CN112000440B (zh) 2020-08-24 2020-08-24 一种基于云平台的多启动卷虚拟机启动顺序变更方法

Country Status (1)

Country Link
CN (1) CN112000440B (zh)

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106484328A (zh) * 2016-09-23 2017-03-08 浪潮电子信息产业股份有限公司 一种基于kvm系统运行的虚拟机使用多路径块设备方法
US9678769B1 (en) * 2013-06-12 2017-06-13 Amazon Technologies, Inc. Offline volume modifications
WO2017113895A1 (zh) * 2015-12-29 2017-07-06 华为技术有限公司 一种创建虚拟机的方法及装置
WO2018023217A1 (zh) * 2016-07-30 2018-02-08 华为技术有限公司 一种建立虚拟机的方法、装置和系统
US20180191859A1 (en) * 2016-12-29 2018-07-05 Ranjan Sharma Network resource schedulers and scheduling methods for cloud deployment
US10545776B1 (en) * 2016-09-27 2020-01-28 Amazon Technologies, Inc. Throughput and latency optimized volume initialization
CN110780980A (zh) * 2019-10-30 2020-02-11 成都无糖信息技术有限公司 对不同来源磁盘或操作系统镜像进行快速还原处理的方法
CN111240807A (zh) * 2020-01-21 2020-06-05 山东汇贸电子口岸有限公司 一种卷启动的虚拟机重建方法、终端及可读存储介质
CN111324418A (zh) * 2020-02-09 2020-06-23 苏州浪潮智能科技有限公司 一种基于OpenStack的虚拟机模板生成方法和装置
CN111338763A (zh) * 2020-03-11 2020-06-26 山东汇贸电子口岸有限公司 一种基于nova的允许卸载和挂载系统卷的方法

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9678769B1 (en) * 2013-06-12 2017-06-13 Amazon Technologies, Inc. Offline volume modifications
WO2017113895A1 (zh) * 2015-12-29 2017-07-06 华为技术有限公司 一种创建虚拟机的方法及装置
WO2018023217A1 (zh) * 2016-07-30 2018-02-08 华为技术有限公司 一种建立虚拟机的方法、装置和系统
CN106484328A (zh) * 2016-09-23 2017-03-08 浪潮电子信息产业股份有限公司 一种基于kvm系统运行的虚拟机使用多路径块设备方法
US10545776B1 (en) * 2016-09-27 2020-01-28 Amazon Technologies, Inc. Throughput and latency optimized volume initialization
US20180191859A1 (en) * 2016-12-29 2018-07-05 Ranjan Sharma Network resource schedulers and scheduling methods for cloud deployment
CN110780980A (zh) * 2019-10-30 2020-02-11 成都无糖信息技术有限公司 对不同来源磁盘或操作系统镜像进行快速还原处理的方法
CN111240807A (zh) * 2020-01-21 2020-06-05 山东汇贸电子口岸有限公司 一种卷启动的虚拟机重建方法、终端及可读存储介质
CN111324418A (zh) * 2020-02-09 2020-06-23 苏州浪潮智能科技有限公司 一种基于OpenStack的虚拟机模板生成方法和装置
CN111338763A (zh) * 2020-03-11 2020-06-26 山东汇贸电子口岸有限公司 一种基于nova的允许卸载和挂载系统卷的方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
ZI-YANG LI,ET.AL: "VirtMan: design and implementation of a fast booting system for homogeneous virtual machines in iVCE", 《FRONTIERS OF INFORMATION TECHNOLOGY & ELECTRONIC ENGINEERING》 *
冯伟斌等: "支持不同存储方式的OpenStack云平台设计与实现", 《电信科学》 *
朱叶: "基于软件定义存储的OpenStack云平台设计与实现", 《中国优秀硕士学位论文全文数据库》 *

Also Published As

Publication number Publication date
CN112000440B (zh) 2023-03-28

Similar Documents

Publication Publication Date Title
EP2344953B1 (en) Provisioning virtual resources using name resolution
US11301280B2 (en) System and method for managing a monitoring agent in an operating system of a virtual computing instance
US10579404B2 (en) Provisioning virtual desktops with stub virtual disks
CN109634718B (zh) 云平台创建镜像的方法及系统
US20090228883A1 (en) Dynamic cluster expansion through virtualization-based live cloning
US11249788B2 (en) Cloud management platform, and virtual machine management method and system
US20220100550A1 (en) Accelerator Loading Method, System, and Apparatus
RU2008138700A (ru) Создание шаблонов отключенных ресурсов
US10742748B2 (en) System and method for supporting live addition of a tenant in a connection pool environment
CN106685741B (zh) 一种云主机网络接口的动态管理方法
WO2015035774A1 (zh) 一种基于用户空间文件系统的移动终端定制化方法及系统
US20160182403A1 (en) Automatic creation of affinity-type rules for resources in distributed computer systems
CN112804375B (zh) 一种单网卡多ip的配置方法
CN108062239B (zh) 一种加速器加载方法、系统和加速器加载装置
WO2016177261A1 (zh) 在线升级基于内核虚拟机模块的设备和方法
CN112000440B (zh) 一种基于云平台的多启动卷虚拟机启动顺序变更方法
WO2016123744A1 (zh) 网络文件系统中处理i/o请求的方法及设备
US11080079B2 (en) Autonomously reproducing and destructing virtual machines
CN111104367A (zh) 一种基于openstack卷启动虚拟机创建私有镜像的方法
US20150074116A1 (en) Indexing attachable applications for computing systems
CN111858967A (zh) 基于网络的媒体处理中处理媒体内容的方法、装置以及存储介质
US10310889B1 (en) Data statistics service
JP7493053B2 (ja) イメージファイル生成方法、装置及びコンピュータプログラム
EP4118649B1 (en) Method for switching workflow or updating workflow with continuity and no interruption in dataflow
US11853317B1 (en) Creating replicas using queries to a time series database

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