一种对虚拟机和容器统一管理方法、系统、设备及介质技术方案

技术编号:34903615 阅读:13 留言:0更新日期:2022-09-10 14:14
本发明专利技术实施例公开了一种对虚拟机和容器统一管理方法、系统、设备及介质,将容器计算中的POD映射成为虚拟机,将其抽象成为相应计算单元,从而实现通过Kubernetes管理虚拟机,在单一的云计算管理平台(Kubernetes)中实现对虚拟机和容器的统一管理,在实际使用中,系统默认以容器为计算单元。如果用需要虚拟机,用户只需要对POD进行简单标注,系统将自动提供虚拟机计算单元。本发明专利技术实施例在几乎不改动用户使用习惯的前提下,将虚拟机管理平台移除,却能依然向用户提供虚拟机业务。用户不需要投入两套云计算管理平台,从而大大降低初期投入和长期维护成本。和长期维护成本。和长期维护成本。

【技术实现步骤摘要】
一种对虚拟机和容器统一管理方法、系统、设备及介质


[0001]本申请涉及云计算管理
,具体涉及一种对虚拟机和容器统一管理方法、系统、设备及介质。

技术介绍

[0002]云计算管理平台是云计算中核心组件,其管理和调度计算、存储和网络等资源,帮助用户高效而安全的使用相关资源。目前云计算技术正在从以虚拟机为中心过渡到以容器为中心,与之相适应的云计算管平台也从Cloudstack/OpenStack等过渡到了Kubernetes。尽管越来越多的业务转移到了容器计算,但虚拟机计算却依然拥有一些无可替代的优势,比如,更强的安全隔离能更好的保护用户的数据安全;完整的模拟物理机可以为用户构建更接近真实世界的研发环境。基于虚拟机的云计算的比例可能会越来越小,但因为这些优势,并不会消失。
[0003]虽然基于虚拟机的云计算不会消失,但传统的虚拟机运维管理平台则不一样,他们正在消失或者被更新换代。比如,Cloudstack因为商业运作的失败几近消失,OpenStack系统由于臃肿繁杂而难以维护而备受诟病。业界为了克服Openstack的缺点,发起了Kolla项目,其采用容器技术对OpenStack组件进行封装,然后将OpenStack部署在Kubernetes平台之上,这种分而治之的思路虽然改进了OpenStack的维护性,但是没有改变OpenStack软件的臃肿低效根本问题。业界进而发起了Kubevirt/Virtlet等项目,这些项目彻底抛弃了OpenStack既有实现代码,采用Kubernetes应用模式重新实现了整个虚拟机管理平台,其中Kubevirt最为成功,最有可能成为业界共同的选择。
[0004]Kubevirt一类的项目虽然重写了整个虚拟机管理平台,但是它们依然继承了OpenStack的设计理念,甚至部分具体实现还继续沿用了Libvirt虚拟机运行环境的接口实现,它的优点在于终端用户可以保持原用使用习惯,像使用OpenStack一样使用新的系统,无需新的学习成本,缺点是需要维护独立的虚拟机管理平台。
[0005]以此同时,容器计算阵营为了增强容器的安全,发起了类似Kata container的项目。这些采用虚拟机的Hypervisor来提供容器计算环境。这些新的技术对接容器运行接口(CRI)和Hypervisor,将业务实际运行在虚拟机内的事实从云管理平台角度屏蔽掉,让Kubernets无差别的管理这些计算资源。这个方案的优点在于终端用户可以按照原来的习惯使用Kubernetes,无需感知背后的差异,使得它们的业务和平台都得到了更好的安全保障,缺点是他们无法使用虚拟机业务。

技术实现思路

[0006]为此,本申请提供一种对虚拟机和容器统一管理方法、系统、设备及介质,以解决现有技术存在的无法在单一的云计算管理平台中实现对虚拟机和容器的统一管理,导致初期购置和运维成本高的问题。
[0007]为了实现上述目的,本申请提供如下技术方案:
根据本专利技术实施例的第一方面,本申请实施例提供了一种对虚拟机和容器统一管理方法,所述方法包括:读取容器沙箱参数;对用户请求进行第一业务类型判断,并根据第一业务类型判断结果对运行环境参数进行调整;启动QEMU进程,创建虚拟机作为容器沙箱;为所述容器沙箱创建网络空间;通过热插拔的方式,将网卡接到所述容器沙箱的虚拟机;对用户请求进行第二业务类型判断;如果经第二业务类型判断用户请求类型为虚拟机业务,则向所述容器沙箱的网络空间引入网络分流器,对用户业务流量和虚拟机管理流量进行分流处理;解析容器参数,获取存储信息;对用户请求进行第三业务类型判断;如果经第三业务类型判断用户请求类型为虚拟机业务,则注入参数,标注存储卷为可启动硬盘;通过热插拔的方式,将标注后的存储卷作为硬盘,添加至所述容器沙箱的虚拟机。
[0008]进一步地,读取容器沙箱参数,包括:读取用户向云计算管理平台提交的容器沙箱参数;当用户无需虚拟机业务时,接收用户提交的POD定义参数,并利用所述POD定义参数得到容器沙箱参数;当用户需要虚拟机业务时,接收用户提交的POD定义参数和对POD添加标注形成的额外参数,并利用所述POD定义参数得到容器沙箱参数;其中,所述POD定义参数包括:容器镜像信息、CPU信息、内存信息、存储卷信息、网络信息、GPU信息。
[0009]进一步地,对用户请求进行第一业务类型判断,并根据第一业务类型判断结果对运行环境参数进行调整,具体包括:通过检查所述容器沙箱参数中的标注,对用户请求进行第一业务类型判断;如果经第一业务类型判断用户请求类型为虚拟机业务,则以虚拟硬盘的方式,由用户指定操作系统,激活VNC功能,允许用户访问虚拟机的控制台/图形桌面;如果经第一业务类型判断用户请求类型为容器业务,则以预设公用固件方式指定操作系统。
[0010]进一步地,向所述容器沙箱的网络空间引入网络分流器,对用户业务流量和虚拟机管理流量进行分流处理,包括:通过成对出现的虚拟网络设备接口在宿主机网络空间和容器网络空间之间建立链接,为容器网络提供外部连接;将用户的虚拟机网络由虚拟机监视器进行封装,使所述虚拟机网络仅在虚拟机内部可见;引入所述网络分流器,对管理信令数据流进行重定向或者分流处理。
[0011]进一步地,引入所述网络分流器,对管理信令数据流进行重定向或者分流处理,包
括:根据IP包报头的协议信息判断数据包是否为ARP协议数据包;如果数据包为ARP协议数据包,则由所述网络分流器将该数据包同时向容器网络域和虚拟机网络域分发;如果数据包不为ARP协议数据包,则根据数据包中的端口号判断数据包是否为VNC协议数据包;如果数据包为VNC协议数据包,则由所述网络分流器将该数据包重定向或者分流至容器网络域;如果数据包不为VNC协议数据包,则由所述网络分流器将该数据包一律重定向或者分流至至虚拟机网络域。
[0012]进一步地,所述方法还包括:如果经第二业务类型判断用户请求类型为容器业务,则直接解析容器参数,获取存储信息。
[0013]进一步地,所述方法还包括:如果经第三业务类型判断用户请求类型为容器业务,则通过热插拔的方式,直接将未经标注的存储卷作为硬盘,添加至所述容器沙箱的虚拟机。
[0014]第二方面,根据本专利技术实施例的第二方面,本申请实施例提供了一种对虚拟机和容器统一管理系统,所述系统包括:读取模块,用于读取容器沙箱参数;第一业务类型判断模块,用于对用户请求进行第一业务类型判断,并根据第一业务类型判断结果对运行环境参数进行调整;容器沙箱创建模块,用于启动QEMU进程,创建虚拟机作为容器沙箱;网络空间创建模块,用于为所述容器沙箱创建网络空间;网卡接入模块,用于通过热插拔的方式,将网卡接到所述容器沙箱的虚拟机;第二业务类型判断模块,用于对用户请求进行第二业务类型判断;数据包分流模块,用于如果经第二业务类型判断用户请求类型为虚拟机业务,则向所述容器沙箱的网络空间引入网络分流器,对用户业务流量和虚拟机管理流量进行分流处理;解析模块,用于解析容器参数,获取存储信息;第三业务类本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种对虚拟机和容器统一管理方法,其特征在于,所述方法包括:读取容器沙箱参数;对用户请求进行第一业务类型判断,并根据第一业务类型判断结果对运行环境参数进行调整;启动QEMU进程,创建虚拟机作为容器沙箱;为所述容器沙箱创建网络空间;通过热插拔的方式,将网卡接到所述容器沙箱的虚拟机;对用户请求进行第二业务类型判断;如果经第二业务类型判断用户请求类型为虚拟机业务,则向所述容器沙箱的网络空间引入网络分流器,对用户业务流量和虚拟机管理流量进行分流处理;解析容器参数,获取存储信息;对用户请求进行第三业务类型判断;如果经第三业务类型判断用户请求类型为虚拟机业务,则注入参数,标注存储卷为可启动硬盘;通过热插拔的方式,将标注后的存储卷作为硬盘,添加至所述容器沙箱的虚拟机。2.根据权利要求1所述的一种对虚拟机和容器统一管理方法,其特征在于,读取容器沙箱参数,包括:读取用户向云计算管理平台提交的容器沙箱参数;当用户无需虚拟机业务时,接收用户提交的POD定义参数,并利用所述POD定义参数得到容器沙箱参数;当用户需要虚拟机业务时,接收用户提交的POD定义参数和对POD添加标注形成的额外参数,并利用所述POD定义参数得到容器沙箱参数;其中,所述POD定义参数包括:容器镜像信息、CPU信息、内存信息、存储卷信息、网络信息、GPU信息。3.根据权利要求2所述的一种对虚拟机和容器统一管理方法,其特征在于,对用户请求进行第一业务类型判断,并根据第一业务类型判断结果对运行环境参数进行调整,具体包括:通过检查所述容器沙箱参数中的标注,对用户请求进行第一业务类型判断;如果经第一业务类型判断用户请求类型为虚拟机业务,则以虚拟硬盘的方式,由用户指定操作系统,激活VNC功能,允许用户访问虚拟机的控制台/图形桌面;如果经第一业务类型判断用户请求类型为容器业务,则以预设公用固件方式指定操作系统。4.根据权利要求3所述的一种对虚拟机和容器统一管理方法,其特征在于,向所述容器沙箱的网络空间引入网络分流器,对用户业务流量和虚拟机管理流量进行分流处理,包括:通过成对出现的虚拟网络设备接口在宿主机网络空间和容器网络空间之间建立链接,为容器网络提供外部连接;将用户的虚拟机网络由虚拟机监视器进行封装,使所述虚拟机网络仅在虚拟机内部可见;引入所述网络分流器,对管理信令数据流进行重定向或者分流处理。
5.根据权利要求4所述的一种对虚拟机和容器统一管理方法,其特征在于,引入所述网络分流器,对管理信令数据流进行重定向或者分流处理,包括:根据I...

【专利技术属性】
技术研发人员:许立宪
申请(专利权)人:北京腾达泰源科技有限公司
类型:发明
国别省市:

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

1