CN117742887A - 一种基于kubernetes数据卷完成云平台虚拟机克隆的方法 - Google Patents
一种基于kubernetes数据卷完成云平台虚拟机克隆的方法 Download PDFInfo
- Publication number
- CN117742887A CN117742887A CN202311704374.7A CN202311704374A CN117742887A CN 117742887 A CN117742887 A CN 117742887A CN 202311704374 A CN202311704374 A CN 202311704374A CN 117742887 A CN117742887 A CN 117742887A
- Authority
- CN
- China
- Prior art keywords
- virtual machine
- cloning
- tenant
- kubernetes
- information
- 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
Links
- 238000010367 cloning Methods 0.000 title claims abstract description 72
- 238000000034 method Methods 0.000 title claims abstract description 20
- 238000007689 inspection Methods 0.000 claims abstract description 20
- 238000007726 management method Methods 0.000 claims description 22
- 238000013468 resource allocation Methods 0.000 claims description 6
- 238000012795 verification Methods 0.000 claims description 6
- 238000002955 isolation Methods 0.000 claims description 5
- 230000002085 persistent effect Effects 0.000 abstract description 5
- 230000010076 replication Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 3
- 238000011084 recovery Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000013439 planning Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于kubernetes数据卷完成云平台虚拟机克隆的方法,包括以下几个步骤;第一步,接收虚拟机克隆请求;第二步,提取虚拟机的相关配置信息,云平台管理组件接收到虚拟机克隆请求后,提取虚拟机的相关配置信息,所述相关配置信息包括原租户、目标租户、原磁盘大小、目标磁盘大小;第三步,进行业务检查,判断相关配置信息;本发明利用在Kubevirt的现有虚拟机管理架构上扩展一个新型克隆功能,在此方式下,虚拟机通过kubernetes集群和kubevirt管理组件的调度,运行在持久卷中,卷则存放在底层ceph存储集群中,通过搭配ceph共享存储的快照能力,以及kubernetes数据卷的快照能力和卷扩展能力,进而可使用复制虚拟机数据卷的方式来完成克隆。
Description
技术领域
本发明涉及IT与软件开发领域,特别涉及一种基于kubernetes数据卷完成云平台虚拟机克隆的方法。
背景技术
随着云计算技术和业务的高速发展,高效率地创建业务虚拟机,以及实现虚拟机业务的标准化部署管理已经成为一种趋势。虚拟化技术和云计算服务中,有一个能力是把存量业务虚拟机标记提交为私有虚拟机镜像,然后用户可以通过私有虚拟机镜像去创建新的业务虚拟机,实现业务部署或扩容的标准化。当存量的业务虚拟机只有系统盘时,可以很容易制作为私有镜像,但是当虚拟机有多个磁盘时,要实现系统盘加数据盘的整机镜像,一般通过虚拟机克隆的方式。
目前,大部分基于kvm或openstack的云平台,克隆的方式是先将虚拟机标记提交为当前租户的虚拟机模板,再通过模板机复制出一个与原虚拟机各个磁盘大小以及配置都一致的新虚拟机,虚拟机难以跨租户克隆,每个租户需要预置虚拟机模板,然后在自己租户内克隆,虚拟机系统盘在克隆同时通常只保持和源虚拟机一样大小,难以扩展容量,因此,需要设计一种基kubernetes数据卷完成云平台虚拟机克隆的方法,来解决这一问题。
发明内容
本发明的目的在于提供一种基于kubernetes数据卷完成云平台虚拟机克隆的方法,以解决上述背景技术中提出的问题。
为实现上述目的,本发明提供如下技术方案:一种基于kubernetes数据卷完成云平台虚拟机克隆的方法,所述克隆的方法包括以下几个步骤;
第一步,接收虚拟机克隆请求;
第二步,提取虚拟机的相关配置信息,云平台管理组件接收到虚拟机克隆请求后,提取虚拟机的相关配置信息,所述相关配置信息包括原租户、目标租户、原磁盘大小、目标磁盘大小;
第三步,进行业务检查,判断相关配置信息,若相关配置信息不满足业务检查,克隆流程结束,若相关配置信息满足业务检查,继续克隆流程,所述业务检查包括商品信息、集群配置、租户、订单;
第四步,创建云盘快照,克隆云盘,下发满足业务检查的相关信息给kubevirt虚拟机管理组件,虚拟机管理组件与kubernetes进行交互,克隆数据盘卷;
第五步,复制虚拟机网络信息,再进行系统盘卷的克隆;
第六步,返回结果,虚拟克隆完成。
优选的,所述第二步中的原租户是虚拟机的当前拥有者或租户的信息,所述原租户包括租户的名称、ID,所述原租户拥有关于虚拟机所有权的重要信息,所述目标租户将虚拟机从一个租户转移到另一个租户,对租户的信息进行转移。
优选的,所述第二步中的原磁盘大小是虚拟机当前使用的磁盘存储的大小,所述目标磁盘大小是计划分配给虚拟机的新磁盘存储的大小。
优选的,所述第三步中的集群配置包括资源配置检查、安全配置检查、高可用性检查;
所述资源配置检查确认集群中的服务器、存储和网络资源配置是否符合性能和可扩展性需求;
所述安全配置检查确保集群的安全设置,以保护集群免受潜在威胁;
所述高可用性检查验证集群的高可用性配置,包括故障切换、备份策略。
优选的,所述第三步中的租户包括租户信息验证、资源使用检查、访问控制检查;
所述租户信息验证包括确认租户的名称、联系信息和其他详细信息是否正确;
所述资源使用检查用于检查租户当前使用的虚拟机是否在允许的限额范围内;
所述访问控制检查确保租户只能访问其拥有的资源,维护访问控制列表和权限设置。
优选的,所述第四步中的虚拟机通过kubernetes集群和kubevirt管理组件的调度。
优选的,所述管理组件的调度通过搭配ceph共享存储的快照能力与kubernetes数据卷的快照能力和卷扩展能力,使用复制虚拟机数据卷的方式来完成克隆。
优选的,所述ceph存储对快照的支持与kubernetes对卷快照和卷容量扩展的支持,进行系统磁盘容量扩展。
优选地,所述kubernetes的命名空间具备隔离和访问可控性,所述命名空间可实现虚机卷的跨租户复制,且无需在每个租户预置虚机模板去进行克隆。
优选的,所述第五步中的复制虚拟机网信息包括克隆附件定义网络,所述系统盘卷的克隆包括创建datavolume卷、克隆系统盘、扩容系统盘。
本发明的技术效果和优点:
本发明利用在Kubevirt的现有虚拟机管理架构上扩展一个新型克隆功能,在此方式下,虚拟机通过kubernetes集群和kubevirt管理组件的调度,运行在持久卷中,卷则存放在底层ceph存储集群中,通过搭配ceph共享存储的快照能力,以及kubernetes数据卷的快照能力和卷扩展能力,进而可使用复制虚拟机数据卷的方式来完成克隆。由于ceph存储对快照的支持,以及kubernetes对卷快照和卷容量扩展的支持,可实现虚拟机卷在克隆同时的系统磁盘容量扩展;而且由于kubernetes的命名空间具备隔离和访问可控性,在以命名空间来实现租户的情况下,可实现虚拟机卷的跨租户复制,无需在每个租户预置虚拟机模板去进行克隆。
附图说明
图1为本发明主要流程示意图。
图2为本发明扩展的虚拟机克隆示意图。
图3为本发明涉及的kubernetes和ceph的特性配置图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提供了如图1-3所示的一种基于kubernetes数据卷完成云平台虚拟机克隆的方法,克隆方法包括以下几个步骤;
第一步,接收虚拟机克隆请求;
第二步,提取虚拟机的相关配置信息,云平台管理组件接收到虚拟机克隆请求后,提取虚拟机的相关配置信息,所述相关配置信息包括原租户、目标租户、原磁盘大小、目标磁盘大小;
第三步,进行业务检查,判断相关配置信息,若相关配置信息不满足业务检查,克隆流程结束,若相关配置信息满足业务检查,继续克隆流程,所述业务检查包括商品信息、集群配置、租户、订单;
需要说明的是,云平台管理组件接收到虚拟机克隆请求后,提取虚拟机的相关配置信息,对相关配置信息进行业务检查,若相关配置信息不满足业务检查,克隆流程结束,若相关配置信息满足业务检查,继续克隆流程,将满足业务检查的相关信息下发给kubevirt虚拟机管理组件,进行下一步。
第四步,创建云盘快照,克隆云盘,下发满足业务检查的相关信息给kubevirt虚拟机管理组件,虚拟机管理组件与kubernetes进行交互,克隆数据盘卷;
第五步,复制虚拟机网络信息,再进行系统盘卷的克隆;
第六步,返回结果,虚拟克隆完成。
具体的,所述第二步中的原租户是虚拟机的当前拥有者或租户的信息,所述原租户包括租户的名称、ID,所述原租户拥有关于虚拟机所有权的重要信息,所述目标租户将虚拟机从一个租户转移到另一个租户,对租户的信息进行转移。
具体的,所述第二步中的原磁盘大小是虚拟机当前使用的磁盘存储的大小,所述目标磁盘大小是计划分配给虚拟机的新磁盘存储的大小。
具体的,其特征在于,所述第三步中的集群配置包括资源配置检查、安全配置检查、高可用性检查;
所述资源配置检查确认集群中的服务器、存储和网络资源配置是否符合性能和可扩展性需求;
所述安全配置检查确保集群的安全设置,以保护集群免受潜在威胁;
所述高可用性检查验证集群的高可用性配置,包括故障切换、备份策略。
具体的,所述第三步中的租户包括租户信息验证、资源使用检查、访问控制检查;
所述租户信息验证包括确认租户的名称、联系信息和其他详细信息是否正确;
所述资源使用检查用于检查租户当前使用的虚拟机是否在允许的限额范围内;
所述访问控制检查确保租户只能访问其拥有的资源,维护访问控制列表和权限设置。
具体的,所述第四步中的虚拟机通过kubernetes集群和kubevirt管理组件的调度。
需要说明的是,Kubernetes集群是由多个物理或虚拟计算节点组成的容器编排和管理平台,用于部署、管理和运行容器化应用程序,创建包括Kubernetes集群包括规划集群架构、安装Kubernetes、设置Master节点、添加工作节点、创建Deployment和Service、监控和日志记录、容器化应用程序、扩展和管理集群、备份和灾难恢复。
Kubevirt是一个开源的项目,它允许您在Kubernetes集群中运行和管理虚拟机。Kubevirt扩展了Kubernetes的功能,使您可以使用虚拟机作为工作负载来运行传统的虚拟化应用程序,与容器工作负载一起在同一个集群中协同工作。
进一步的,所述管理组件的调度通过搭配ceph共享存储的快照能力与kubernetes数据卷的快照能力和卷扩展能力,使用复制虚拟机数据卷的方式来完成克隆。
需要说明的是,ceph是一个开源分布式存储系统,旨在提供高性能、可扩展性和高可用性的存储解决方案。Ceph的设计目标是构建一个强大的存储平台,可用于私有云、公共云和混合云环境。ceph采用分布式存储模型,数据被划分为多个对象,并分布在集群中的多个节点上。这确保了数据的可靠性和可扩展性。ceph通过数据副本和自动数据恢复机制来提供高可用性。如果某个节点或副本损坏,ceph会自动修复数据。ceph的主要存储单元是对象,每个对象都包含数据、元数据和唯一的标识符。这使得ceph适合存储和管理大量数据。ceph提供块存储,可以用于虚拟机、容器等。
ceph提供cephfs,一个分布式文件系统,用于支持POSIX兼容的文件访问。ceph支持多种协议,包括RADOS(可扩展对象存储)、CephFS(文件系统)、RBD(块设备)和iSCSI,以满足不同应用的需求。ceph自动将数据均匀分布在不同的存储节点上,确保负载均衡和性能优化。ceph集群可以轻松扩展,您可以随时添加新的存储节点以增加容量和性能。ceph通过数据恢复机制,自动修复损坏的数据块,确保数据的完整性。ceph是一个开源项目,拥有活跃的社区,提供文档、工具和支持。
进一步的,所述ceph存储对快照的支持与kubernetes对卷快照和卷容量扩展的支持,进行系统磁盘容量扩展。
进一步的,所述kubernetes的命名空间具备隔离和访问可控性,所述命名空间可实现虚机卷的跨租户复制,且无需在每个租户预置虚机模板去进行克隆。
需要说明的是,虚机通过kubernetes集群和kubevirt管理组件的调度,运行在持久卷中,卷则存放在底层ceph存储集群中,通过搭配ceph共享存储的快照能力,以及kubernetes数据卷的快照能力和卷扩展能力,进而可使用复制虚机数据卷的方式来完成克隆。
由于ceph存储对快照的支持,以及kubernetes对卷快照和卷容量扩展的支持,可实现虚机卷在克隆同时的系统磁盘容量扩展;而且由于kubernetes的命名空间具备隔离和访问可控性,在以命名空间来实现租户的情况下,可实现虚机卷的跨租户复制,无需在每个租户预置虚机模板去进行克隆。
进一步的,所述第五步中的复制虚拟机网络信息包括克隆附件定义网络,所述系统盘卷的克隆包括创建datavolume卷、克隆系统盘、扩容系统盘。
需要说明的是,创建datavolume卷包括创建存储资源:首先,您需要在Kubernetes集群中创建一个持久卷或存储类,以提供用于DataVolume的存储资源。这可以通过Kubernetes资源清单文件或命令行来完成。
创建DataVolume资源:接下来,您可以创建一个DataVolume资源,该资源描述了要创建的卷的属性,包括存储资源的名称、大小等,可以使用Kubernetes资源清单文件来创建DataVolume。
应用DataVolume到Pod:您可以将DataVolume应用到一个Pod中,以便Pod可以使用DataVolume中的数据。这可以通过Pod的VolumeMount和Volume配置来实现。
在实际使用过程中,运维人员启用ceph存储集群的快照能力;
运维启用kubernetes集群和kubevirt管理组件的快照特性和持久卷扩容特性;
用户或运营人员在客户平台界面选择源虚机,指定租户信息参数,指定目标虚机的各个磁盘大小参数,执行克隆任务,平台管理组件收到克隆任务,提取相关配置信息后,下发指令给虚机管理组件,虚机管理组件通过与kubernetes交互完成卷快照及复制、卷扩容和迁移租户,得以完成目标虚机的克隆,并通过服务回调,更新状态及结果。
最后应说明的是:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种基于kubernetes数据卷完成云平台虚拟机克隆的方法,其特征在于,所述克隆的方法包括以下几个步骤;
第一步,接收虚拟机克隆请求;
第二步,提取虚拟机的相关配置信息,云平台管理组件接收到虚拟机克隆请求后,提取虚拟机的相关配置信息,所述相关配置信息包括原租户、目标租户、原磁盘大小和目标磁盘大小;
第三步,进行业务检查,判断相关配置信息,若相关配置信息不满足业务检查,克隆流程结束,若相关配置信息满足业务检查,继续克隆流程,所述业务检查包括商品信息、集群配置、租户和订单;
第四步,创建云盘快照,克隆云盘,下发满足业务检查的相关信息给kubevirt虚拟机管理组件,虚拟机管理组件与kubernetes进行交互,克隆数据盘卷;
第五步,复制虚拟机网络信息,再进行系统盘卷的克隆;
第六步,返回结果,虚拟克隆完成。
2.根据权利要求1所述的一种基于kubernetes数据卷完成云平台虚拟机克隆的方法,其特征在于,所述第二步中的原租户是虚拟机的当前拥有者或租户的信息,所述原租户包括租户的名称、ID,所述原租户拥有关于虚拟机所有权的重要信息,所述目标租户将虚拟机从一个租户转移到另一个租户,对租户的信息进行转移。
3.根据权利要求1所述的一种基于kubernetes数据卷完成云平台虚拟机克隆的方法,其特征在于,所述第二步中的原磁盘大小是虚拟机当前使用的磁盘存储的大小,所述目标磁盘大小是计划分配给虚拟机的新磁盘存储的大小。
4.根据权利要求1所述的一种基于kubernetes数据卷完成云平台虚拟机克隆的方法,其特征在于,所述第三步中的集群配置包括资源配置检查、安全配置检查、高可用性检查;
所述资源配置检查确认集群中的服务器、存储和网络资源配置是否符合性能和可扩展性需求;
所述安全配置检查确保集群的安全设置,以保护集群免受潜在威胁;
所述高可用性检查验证集群的高可用性配置,包括故障切换、备份策略。
5.根据权利要求1所述的一种基于kubernetes数据卷完成云平台虚拟机克隆的方法,其特征在于,所述第三步中的租户包括租户信息验证、资源使用检查、访问控制检查;
所述租户信息验证包括确认租户的名称、联系信息和其他详细信息是否正确;
所述资源使用检查用于检查租户当前使用的虚拟机是否在允许的限额范围内;
所述访问控制检查确保租户只能访问其拥有的资源,维护访问控制列表和权限设置。
6.根据权利要求1所述的一种基于kubernetes数据卷完成云平台虚拟机克隆的方法,其特征在于,所述第四步中的虚拟机通过kubernetes集群和kubevirt管理组件的调度。
7.根据权利要求6所述的一种基于kubernetes数据卷完成云平台虚拟机克隆的方法,其特征在于,所述管理组件的调度通过搭配ceph共享存储的快照能力与kubernetes数据卷的快照能力和卷扩展能力,使用复制虚拟机数据卷的方式来完成克隆。
8.根据权利要求7所述的一种基于kubernetes数据卷完成云平台虚拟机克隆的方法,其特征在于,所述ceph存储对快照的支持与kubernetes对卷快照和卷容量扩展的支持,进行系统磁盘容量扩展。
9.根据权利要求6所述的一种基于kubernetes数据卷完成云平台虚拟机克隆的方法,其特征在于,所述kubernetes的命名空间具备隔离和访问可控性,所述命名空间可实现虚机卷的跨租户复制,且无需在每个租户预置虚机模板去进行克隆。
10.根据权利要求1所述的一种基于kubernetes数据卷完成云平台虚拟机克隆的方法,其特征在于,所述第五步中的复制虚拟机网络信息包括克隆附件定义网络,所述系统盘卷的克隆包括创建datavolume卷、克隆系统盘、扩容系统盘。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311704374.7A CN117742887A (zh) | 2023-12-13 | 2023-12-13 | 一种基于kubernetes数据卷完成云平台虚拟机克隆的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311704374.7A CN117742887A (zh) | 2023-12-13 | 2023-12-13 | 一种基于kubernetes数据卷完成云平台虚拟机克隆的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117742887A true CN117742887A (zh) | 2024-03-22 |
Family
ID=90250136
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311704374.7A Pending CN117742887A (zh) | 2023-12-13 | 2023-12-13 | 一种基于kubernetes数据卷完成云平台虚拟机克隆的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117742887A (zh) |
-
2023
- 2023-12-13 CN CN202311704374.7A patent/CN117742887A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11675670B2 (en) | Automated disaster recovery system and method | |
US20230308525A1 (en) | Embedded database as a microservice for distributed container cloud platform | |
CN111488241B (zh) | 在容器编排平台实现无代理备份与恢复操作的方法和系统 | |
US9870291B2 (en) | Snapshotting shared disk resources for checkpointing a virtual machine cluster | |
US10237118B2 (en) | Efficient application build/deployment for distributed container cloud platform | |
EP3469478B1 (en) | Server computer management system for supporting highly available virtual desktops of multiple different tenants | |
US10169173B2 (en) | Preserving management services with distributed metadata through the disaster recovery life cycle | |
US20180143856A1 (en) | Flexible job management for distributed container cloud platform | |
JP5015351B2 (ja) | 実行プログラムによる非ローカルブロックデータストレージへの信頼性の高いアクセスの実現 | |
CN102981929B (zh) | 磁盘镜像的管理方法和系统 | |
US20200026786A1 (en) | Management and synchronization of batch workloads with active/active sites using proxy replication engines | |
CN106407410A (zh) | 供应并管理已复制数据 | |
CN103036986A (zh) | 在分布式应用对象上提供更新通知 | |
CN110413369A (zh) | 用于虚拟化环境中的备份的系统和方法 | |
CN117742887A (zh) | 一种基于kubernetes数据卷完成云平台虚拟机克隆的方法 | |
EP3387533B1 (en) | Disaster recovery of cloud resources | |
CN117806547A (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 |