CN107256177A - 基于OpenStack的虚拟机免重启光盘动态插入方法 - Google Patents

基于OpenStack的虚拟机免重启光盘动态插入方法 Download PDF

Info

Publication number
CN107256177A
CN107256177A CN201710440106.7A CN201710440106A CN107256177A CN 107256177 A CN107256177 A CN 107256177A CN 201710440106 A CN201710440106 A CN 201710440106A CN 107256177 A CN107256177 A CN 107256177A
Authority
CN
China
Prior art keywords
virtual machine
virsh
nova
openstack
compute
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.)
Pending
Application number
CN201710440106.7A
Other languages
English (en)
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.)
Shenzhen Y&D Electronics Information Co Ltd
Original Assignee
Shenzhen Y&D Electronics Information 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 Shenzhen Y&D Electronics Information Co Ltd filed Critical Shenzhen Y&D Electronics Information Co Ltd
Priority to CN201710440106.7A priority Critical patent/CN107256177A/zh
Publication of CN107256177A publication Critical patent/CN107256177A/zh
Pending legal-status Critical Current

Links

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

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的虚拟机免重启的光盘动态插入方法,包括如下步骤:预先在虚拟机挂载一个空光盘;修改OpenStack代码使用virsh attach‑disk的linux命令来动态更新光盘;为计算服务增加执行virsh命令的权限。所述挂载一个空光盘之前,使用命令virsh edit查看虚拟机配置文件,挂载一个空光盘之后,虚拟机配置多了一个cdrom设备。本发明的有益效果是在OpenStack中,给虚拟机插入光盘时,不需要重启虚拟机就能发现光盘,使用光盘,操作方便,提高了工作效率。

Description

基于OpenStack的虚拟机免重启光盘动态插入方法
技术领域
本发明涉及一种光盘的动态插入方法,更具体地说是涉及一种在OpenStack中,不需要重启虚拟机就能实现光盘的动态插入方法。
背景技术
目前在OpenStack中,给虚拟机插入光盘,需要重启虚拟机才能发现光盘,使用光盘,在实际工作中,操作不方便,工作效率低。
发明内容
本发明要解决的问题是提供一种给虚拟机插入光盘时,不需要重启虚拟机就能发现光盘,使用光盘的方法,该方法简单实用,操作方便,提高了工作效率。
为解决上述技术问题,本发明的技术方案为:
一种基于OpenStack的虚拟机免重启的光盘动态插入方法,包括如下步骤:
1、预先在虚拟机挂载一个空光盘,
2.修改OpenStack代码使用virsh attach-disk的linux命令来动态更新光盘,
3.为计算服务增加执行virsh命令的权限。
本发明的有益效果是在OpenStack中,给虚拟机插入光盘时,不需要重启 虚拟机就能发现光盘,使用光盘,操作方便,提高了工作效率。
具体实施方式
为了使本发明解决的技术问题、采用的技术方案、取得的技术效果易于理解,下面,对本发明的具体实施方式做进一步说明。
计算服务的架构比较复杂,包含很多组件,这些组件以子服务(后台守护进程)的形式运行,可以分为以下几类:
1.应用程序接口,
nova-api接收和相应客户的应用程序接口调用。
2.计算核心,
nova-scheduler虚机调度服务,负责决定在哪个计算节点上运行虚机;
nova-compute管理虚机的核心服务,通过调用Hypervisor应用程序接口实现虚机生命周期管理;
Hypervisor计算节点上跑的虚拟化管理程序,虚机管理最底层的程序;
nova-conductor经常需要更新数据库,比如更新虚机的状态。
3.控制台接口,
a)nova-console用户可以通过多种方式访问虚机的控制台;
b)nova-consoleauth负责对访问虚机控制台请求提供Token认证;
c)nova-cert提供x509证书支持。
4.数据库,
计算服务会有一些数据需要存放到数据库中,一般使用MySQL。
5.消息队列,
计算服务包含众多的子服务,这些子服务之间需要相互协调和通信;为解耦各个子服务,计算服务通过消息队列作为子服务的信息中转站。
本发明为了实现基于OpenStack的虚拟机免重启光盘动态插入,为了让用户体验更好,操作更方便,特详细描述其具体操作步骤如下:
1、预先在虚拟机挂载一个空光盘,
挂载一个空光盘之前,使用命令virsh edit查看虚拟机配置文件,挂载一个空光盘之后,虚拟机配置多了一个cdrom设备。
2、修改OpenStack代码使用virsh attach-disk的linux命令来动态更新光盘,具体命令如下:
1)novacliet/v2/shell.py增加shell命令行的操作函数;
2)novacliet/v2/servers.py客户端增加一个POST的请求函数,函数包含两种action:insert(插入)和eject(弹出);
3)nova/api/openstack/compute/servers.py相应的,服务也要有针对客户端请求处理的函数;
4)nova/compute/api.py接着,计算服务的应用程序接口会把请求转交给compute的API;
5)nova/compute/rpcapi.py计算服务compute应用程序接口的请求都会通过rpcapi来发送rpc请求至相应的计算节点;
6)nova/compute/manager.py计算节点接受到相应的rpc请求后就会调用相应的manager中实现函数,而manager已经预先设置了driver(默认是libvirt);
7)nova/virt/libvirt/driver.py整个请求的最后环节就到driver了,driver 是负责真正的实现。插入光盘之后,配置里面增加了挂载的光盘文件。
注意:这里有一个地方需要注意:我们实现动态更新光盘的原理是预先在虚拟机里挂好一个空白的光盘,然后使用virsh attach-disk的linux命令来动态更新。
3、为计算服务增加执行virsh命令的权限,
nova默认是没有执行virsh命令的权限的,所以我们需要在每个计算节点的/usr/share/nova/rootwrap/目录下面增加相应的权限,而在项目部署的阶段,就需要将这个文件释放到对应的路径下面,路径如下:
#vi/usr/share/nova/rootwrap/virsh.filters;
[Filters];
virsh:CommandFilter,virsh,root。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

Claims (4)

1.一种基于OpenStack的虚拟机免重启的光盘动态插入方法,其特征在于,包括如下步骤:
1)预先在虚拟机挂载一个空光盘;
2)修改OpenStack代码使用virsh attach-disk的linux命令来动态更新光盘;
3)为计算服务增加执行virsh命令的权限。
2.根据权利要求1所述的光盘动态插入方法,其特征在于:所述挂载一个空光盘,在其之前,使用命令virsh edit查看虚拟机配置文件,挂载一个空光盘之后,虚拟机配置多了一个cdrom设备。
3.根据权利要求1所述的光盘动态插入方法,其特征在于:所述使用virsh attach-disk的linux命令包括:
1)novacliet/v2/shell.py增加shell命令行的操作函数;
2)novacliet/v2/servers.py客户端增加一个POST的请求函数,函数包含两种action:insert和eject;
3)nova/api/openstack/compute/servers.py相应的,服务也要有针对客户端请求处理的函数;
4)nova/compute/api.py接着,计算服务的应用程序接口会把请求转交给compute的API;
5)nova/compute/rpcapi.py计算服务compute应用程序接口的请求都会通过rpcapi来发送rpc请求至相应的计算节点;
6)nova/compute/manager.py计算节点接受到相应的rpc请求后就会调用相应的manager中实现函数,而manager已经预先设置了driver(默认是libvirt);
7)nova/virt/libvirt/driver.py整个请求的最后环节就到driver了,driver是负责真正的实现,插入光盘之后,配置里面增加了挂载的光盘文件。
4.根据权利要求3所述的光盘动态插入方法,其特征在于:所述nova默认是没有执行virsh命令的权限的,所以我们需要在每个计算节点的/usr/share/nova/rootwrap/目录下面增加相应的权限,而在项目部署的阶段,就需要将这个文件释放到对应的路径下面,路径如下:
#vi/usr/share/nova/rootwrap/virsh.filters;
[Filters];
virsh:CommandFilter,virsh,root。
CN201710440106.7A 2017-06-12 2017-06-12 基于OpenStack的虚拟机免重启光盘动态插入方法 Pending CN107256177A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710440106.7A CN107256177A (zh) 2017-06-12 2017-06-12 基于OpenStack的虚拟机免重启光盘动态插入方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710440106.7A CN107256177A (zh) 2017-06-12 2017-06-12 基于OpenStack的虚拟机免重启光盘动态插入方法

Publications (1)

Publication Number Publication Date
CN107256177A true CN107256177A (zh) 2017-10-17

Family

ID=60023689

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710440106.7A Pending CN107256177A (zh) 2017-06-12 2017-06-12 基于OpenStack的虚拟机免重启光盘动态插入方法

Country Status (1)

Country Link
CN (1) CN107256177A (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140324793A1 (en) * 2013-04-30 2014-10-30 Cloudfounders Nv Method for Layered Storage of Enterprise Data
CN104580399A (zh) * 2014-12-19 2015-04-29 华南理工大学 一种基于OpenStack和Spice的云桌面实现方法
CN105573820A (zh) * 2015-12-15 2016-05-11 国云科技股份有限公司 一种Xen虚拟机光盘热插拔方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140324793A1 (en) * 2013-04-30 2014-10-30 Cloudfounders Nv Method for Layered Storage of Enterprise Data
CN104580399A (zh) * 2014-12-19 2015-04-29 华南理工大学 一种基于OpenStack和Spice的云桌面实现方法
CN105573820A (zh) * 2015-12-15 2016-05-11 国云科技股份有限公司 一种Xen虚拟机光盘热插拔方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
无: "Openstack中为虚拟机使用CDROM光驱设备", 《码迷》 *
鲈鱼浪游者: "Openstack中为虚拟机使用CDROM光驱设备", 《CSDN》 *

Similar Documents

Publication Publication Date Title
US8627333B2 (en) Message queuing with flexible consistency options
CN101118521B (zh) 跨越多个逻辑分区分布虚拟输入/输出操作的系统和方法
CN109949111A (zh) 电子票据标识分配方法、电子票据生成方法、装置及系统
US8694777B2 (en) Securely identifying host systems
EP3481007A1 (en) Method, device, and equipment for processing resource pool
CN107431651A (zh) 一种网络服务的生命周期管理方法及设备
US9456017B2 (en) System and method for a connector being able to adapt to newer features introduced to a messaging provider with only configuration changes
WO2019237594A1 (zh) 会话保持方法、装置、计算机设备及存储介质
US20130227232A1 (en) Partition aware quality of service feature
CN108089912A (zh) 一种虚拟机与容器超融合系统构建方法及装置
CN108234551B (zh) 一种数据处理方法及装置
EP3442201A1 (en) Cloud platform construction method and cloud platform
CN105592110A (zh) 一种资源调度方法及装置
CN110191160A (zh) 一种并发控制方法和装置
CN109995814A (zh) 云主机资源的迁移方法及装置、通信设备、存储介质
CN109347716B (zh) 消费者vnf的实例化方法及装置
CN108897601A (zh) 一种基于虚拟化的fpga使用方法、系统及相关装置
JP2019504415A (ja) データ格納サービス処理方法及び装置
CN106576068B (zh) 一种软件安全验证方法、设备及系统
CN116048825A (zh) 容器集群构建方法及系统
CN109739440A (zh) 分布式共享存储方法、存储介质、电子设备及系统
CN113608751A (zh) 推理服务平台的运行方法、装置、设备及存储介质
US8150970B1 (en) Work load distribution among server processes
CN107256177A (zh) 基于OpenStack的虚拟机免重启光盘动态插入方法
CN111796940A (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
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20171017