一种虚拟机的光盘热插拔方法及系统技术方案

技术编号:15649894 阅读:159 留言:0更新日期:2017-06-17 02:47
本发明专利技术涉及热插拔技术,更具体地,涉及一种虚拟机的光盘热插拔方法及系统。方法包括:调用libvirt api,libvirt 根据配置文件创建带虚拟光驱的虚拟机;根据创建的虚拟机信息更新数据库记录;光盘资源共享存储区域中设有共享目录,光盘文件上传至共享目录中;使用virsh工具的媒体文件切换接口,执行插入或者弹出光盘命令,完成对共享目录中的光盘热插拔操作。本发明专利技术中不同的hypervisor都统一采用libvirt接口进行管理,屏蔽hypervisor的差异。且本发明专利技术的方法借助虚拟机的虚拟光驱完成光盘的热插拔,不需要硬件光驱的支持,实现高效率、灵活的光盘热插拔功能。

【技术实现步骤摘要】
一种虚拟机的光盘热插拔方法及系统
本专利技术涉及热插拔技术,更具体地,涉及一种虚拟机的光盘热插拔方法及系统。
技术介绍
虚拟机(VirtualMachine)指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。镜像文件是将资料和程序结合而成的文件,它将来源资料经过格式转换后在硬盘上存成与目的光盘内容完全一样的文件,然后将这个文件以一比一对应的方式刻入光盘中。镜像文件是一种光盘文件信息的完整拷贝文件,其包括光盘所有信息,需要专门的虚拟光驱软件载入此种镜像文件进行读取。光盘镜像文件也叫光盘映像文件,形式上只有一个文件,存储格式和光盘文件相同,所以可以真实反映光盘的内容,它可由刻录软件或者镜像文件制作工具创建。镜像文件的格式有很多种,其中一种是国际标准ISO9660,符合此标准的光盘镜像文件一般以iso为扩展名,iso是最为通用的光盘镜像格式,能够被大多数刻录软件及虚拟光驱软件所支持。目前虚拟机对光盘的操作,一般是通过直接访问ISO光盘文件进行挂载。但这种方式需要拷贝文件或者虚拟机系统共享存储环境,操作和管理上的效率都很低。为了提高操作效率,目前采用的方法主要是对虚拟化管理层进行优化,具体包括:一是,针对xen虚拟机,采用xenstore的配置和linux的loop设备支持,通过挂载的方式实现。此方式具体是利用Xenserver(虚拟化服务器)中的xenstore提供一种虚拟机共享存储的支持,通过xen管理命令对xenstore的ISO光盘文件进行loop设备挂载,但通常虚拟化管理平台需要支持多种类型的hypervisor,这种方案仅适用于xen,且会带来兼容性的问题,对于windows系统虚拟机还需要额外安装虚拟光驱来支持。二是,把硬件光驱分配给虚拟机使用,实体光盘媒介的插拔映射到虚拟机操作。把硬件光驱直接分配给虚拟机使用,如果多个虚拟机需要同时使用光盘的插拔支持,这种方式仍受限于硬件资源分配限制。可见,上述两种方案虽然解决了光盘热插拔操作的效率问题,但是对特定的hypervisor依赖过多,或者需要对硬件光驱的独占来支持,在管理的灵活性和硬件资源的利用上要承受很大的代价。
技术实现思路
本专利技术为克服上述现有技术所述的至少一种缺陷(不足),提供一种高效率、灵活的虚拟机的光盘热插拔方法。本专利技术还提供一种高效率、灵活的虚拟机的光盘热插拔系统。为解决上述技术问题,本专利技术的技术方案如下:一种虚拟机的光盘热插拔方法,包括:调用libvirtapi,libvirt根据配置文件创建带虚拟光驱的虚拟机;根据创建的虚拟机信息更新数据库记录;光盘资源共享存储区域中设有共享目录,光盘文件上传至共享目录中;使用virsh工具的媒体文件切换接口,执行插入或者弹出光盘命令,完成对共享目录中的光盘热插拔操作。libvirt是开源的虚拟机管理库,它支持各种hypervisor,包括Xen、KVM、QEMU和用于其他操作系统的一些虚拟产品,对外提供统一的api接口。本专利技术通过调用libvirt的api进行虚拟机的管理,hypervisor的类型通过配置xml文件时指定但hypervisor的类型不受限制,不同的hypervisor都统一采用libvirt接口进行管理,屏蔽hypervisor的差异。而且光盘文件上传至光盘资源共享存储区域的共享目录中,使得光盘文件可以跨物理节点共享,不同的物理机可以访问同一个存储区域的光盘文件,从而降低了管理成本。此外,本专利技术的方法借助虚拟机的虚拟光驱完成光盘的热插拔,不需要硬件光驱的支持,实现高效率、灵活的光盘热插拔功能。上述方案中,调用libvirtapi,libvirt根据配置文件创建带虚拟光驱的虚拟机的具体步骤包括:配置xml文件,指定hypervisor类型;配置xml文件,为虚拟机分配虚拟光驱;选定一个物理机节点,远程连接到该物理机节点上的libvirt;调用libvirtapi创建虚拟机,libvirt根据xml文件的配置确定hypervisor类型以及虚拟光驱,创建带虚拟光驱的虚拟机。上述方案中,光盘资源共享存储区域通过NFS、glusterfs或SAN方式搭建。上述方案中,对共享目录中的光盘完成热插拔中的热插入操作的具体步骤包括:查询数据库,获取虚拟机所在的物理机节点;远程连接到物理机节点上的libvirt;调用libvirt的change-media接口,以插入方式指定光盘文件分配给虚拟机,完成光盘插入操作。上述方案中,对共享目录中的光盘完成热插拔中的热拔除操作的具体步骤包括:查询数据库,获取虚拟机所在的物理机节点;远程连接到物理机节点上的libvirt;调用libvirt的change-media接口,以弹出方式弹出光盘文件,完成光盘拔除操作。一种虚拟机的光盘热插拔系统,包括:虚拟机创建模块,用于调用libvirtapi,libvirt根据配置文件创建带虚拟光驱的虚拟机;数据库更新模块,用于根据创建的虚拟机信息更新数据库记录;光盘文件处理模块,用于将光盘文件上传至光盘资源共享存储区域的共享目录;光盘热插拔模块,用于使用virsh工具的媒体文件切换接口,执行插入或者弹出光盘命令,完成对共享目录中的光盘热插拔操作。libvirt是开源的虚拟机管理库,它支持各种hypervisor,包括Xen、KVM、QEMU和用于其他操作系统的一些虚拟产品,对外提供统一的api接口。本专利技术通过调用libvirt的api进行虚拟机的管理,hypervisor的类型通过虚拟机创建模块配置xml文件时指定但hypervisor的类型不受限制,不同的hypervisor都统一采用libvirt接口进行管理,屏蔽hypervisor的差异。而且光盘文件处理模块将光盘文件上传至光盘资源共享存储区域的共享目录中,使得光盘文件可以跨物理节点共享,不同的物理机可以访问同一个存储区域的光盘文件,从而降低了管理成本。此外,本专利技术的系统借助虚拟机的虚拟光驱完成光盘的热插拔,不需要硬件光驱的支持,实现高效率、灵活的光盘热插拔功能。上述方案中,虚拟机创建模块具体包括:Xml文件配置模块,用于配置xml文件,指定hypervisor类型和为虚拟机分配虚拟光驱;远程调用模块,用于选定一个物理机节点,远程连接到该物理机节点上的libvirt;创建模块,用于调用libvirtapi创建虚拟机,libvirt根据xml文件的配置确定hypervisor类型以及虚拟光驱,创建带虚拟光驱的虚拟机。上述方案中,光盘资源共享存储区域通过NFS、glusterfs或SAN方式搭建。上述方案中,光盘热插拔模块具体包括:查询模块,用于查询数据库,获取虚拟机所在的物理机节点;远程连接模块,用于远程连接到物理机节点上的libvirt;热拔插模块,用于调用libvirt的change-media接口,以插入方式指定光盘文件分配给虚拟机,完成光盘插入操作;以及,调用libvirt的change-media接口,以弹出方式弹出光盘文件,完成光盘拔除操作。本专利技术对不同的hypervisor统一采用libvirt接口进行管理,屏蔽了虚拟化层hypervisor的差异,光盘文件可以跨物理机共享,不需要硬件光驱的支持,实现高效率、灵活的光本文档来自技高网
...
一种虚拟机的光盘热插拔方法及系统

【技术保护点】
一种虚拟机的光盘热插拔方法,其特征在于,包括:调用libvirt api,libvirt 根据配置文件创建带虚拟光驱的虚拟机;根据创建的虚拟机信息更新数据库记录;光盘资源共享存储区域中设有共享目录,光盘文件上传至共享目录中;使用virsh工具的媒体文件切换接口,执行插入或者弹出光盘命令,完成对共享目录中的光盘热插拔操作。

【技术特征摘要】
1.一种虚拟机的光盘热插拔方法,其特征在于,包括:调用libvirtapi,libvirt根据配置文件创建带虚拟光驱的虚拟机;根据创建的虚拟机信息更新数据库记录;光盘资源共享存储区域中设有共享目录,光盘文件上传至共享目录中;使用virsh工具的媒体文件切换接口,执行插入或者弹出光盘命令,完成对共享目录中的光盘热插拔操作。2.根据权利要求1所述的虚拟机的光盘热插拔方法,其特征在于,调用libvirtapi,libvirt根据配置文件创建带虚拟光驱的虚拟机的具体步骤包括:配置xml文件,指定hypervisor类型;配置xml文件,为虚拟机分配虚拟光驱;选定一个物理机节点,远程连接到该物理机节点上的libvirt;调用libvirtapi创建虚拟机,libvirt根据xml文件的配置确定hypervisor类型以及虚拟光驱,创建带虚拟光驱的虚拟机。3.根据权利要求1所述的虚拟机的光盘热插拔方法,其特征在于,光盘资源共享存储区域通过NFS、glusterfs或SAN方式搭建。4.根据权利要求1所述的虚拟机的光盘热插拔方法,其特征在于,对共享目录中的光盘完成热插拔中的热插入操作的具体步骤包括:查询数据库,获取虚拟机所在的物理机节点;远程连接到物理机节点上的libvirt;调用libvirt的change-media接口,以插入方式指定光盘文件分配给虚拟机,完成光盘插入操作。5.根据权利要求1-4任一项所述的虚拟机的光盘热插拔方法,其特征在于,对共享目录中的光盘完成热插拔中的热拔除操作的具体步骤包括:查询数据库,获取虚拟机所在的物理机节点;远程连接到物理机节点上的libvirt;调用libvirt的ch...

【专利技术属性】
技术研发人员:范日明李文杰林楷填毛亮黄仝宇宋一兵汪刚侯玉清刘双广
申请(专利权)人:高新兴科技集团股份有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1