CN111857956A - 虚拟机启动方法及设备 - Google Patents
虚拟机启动方法及设备 Download PDFInfo
- Publication number
- CN111857956A CN111857956A CN202010705449.3A CN202010705449A CN111857956A CN 111857956 A CN111857956 A CN 111857956A CN 202010705449 A CN202010705449 A CN 202010705449A CN 111857956 A CN111857956 A CN 111857956A
- Authority
- CN
- China
- Prior art keywords
- virtual machine
- virtual
- control module
- server
- physical host
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 44
- KKIMDKMETPPURN-UHFFFAOYSA-N 1-(3-(trifluoromethyl)phenyl)piperazine Chemical compound FC(F)(F)C1=CC=CC(N2CCNCC2)=C1 KKIMDKMETPPURN-UHFFFAOYSA-N 0.000 claims abstract description 72
- 230000015654 memory Effects 0.000 claims abstract description 30
- 108010028984 3-isopropylmalate dehydratase Proteins 0.000 claims abstract description 19
- 230000005291 magnetic effect Effects 0.000 description 5
- 238000004590 computer program Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 2
- 239000002184 metal Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000011423 initialization method Methods 0.000 description 1
- 238000004064 recycling Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 230000003936 working memory Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45575—Starting, stopping, suspending or resuming virtual machine instances
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45595—Network integration; Enabling network access in virtual machine instances
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
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
本发明的目的是提供一种虚拟机启动方法及设备,本发明基于预启动执行环境(PXE)把无盘技术应用于云游戏场景中,使虚拟机运行在内存中,能够快速启动并且不占用存储空间。本发明通过云平台控制模块在各个物理宿主机节点上部署分布式DHCP服务以及TFTP服务,结合兼容IPMI指令的虚拟电源控制模块,然后使用镜像存储服务器直接下发镜像启动虚拟机而不使用主存储的方法,实现了云游戏虚拟机的无盘快速启动。本发明使用分布式DHCP服务以及TFTP服务,结合兼容IPMI指令的虚拟机电源管理模块,然后使用镜像存储服务器直接下发镜像启动虚拟机而不使用主存储的方法,实现了云游戏虚拟机的无盘快速启动。
Description
技术领域
本发明涉及计算机领域,尤其涉及一种虚拟机启动方法及设备。
背景技术
云游戏场景中通常游戏进度随用户账户保存,没有本地数据需要保存,因此云平台如果使用传统云计算中提供主存储的话,就会造成存储空间的浪费。
传统的PXE服务中客户机启动时会统一发广播包来获取DHCP信息以及TFTP服务中的系统引导程序,然后根据系统附加文件中的地址加载存放于共享文件服务器上的系统镜像。由于同一个网络环境中不允许有多个DHCP服务器,因此在高并发请求的情况下,单点的PXE服务会遇到压力大响应慢的问题,导致虚拟机启动时间久,加载系统慢。并且由于是单点PXE服务器,如果服务出现故障,会使得同一网络下的所有虚拟机都无法启动。
传统云计算中的虚拟磁盘主要由主存储负责管理,云游戏作为云计算中的一种特殊应用场景,其要求的是在高并发的情况下虚拟机能够快速部署以及快速启动,如果使用传统的镜像存储服务器存储镜像然后把镜像下发到主存储再启动虚拟机的模式,在并发的启动虚拟机时会不可避免的导致主存储的高负载,而另一方面大部分云游戏的游戏进度是跟随用户的游戏账户记录的,因此对于用作云游戏的虚拟机而言,其不需要额外的存储空间。而通常为裸金属物理机提供无盘服务的PXE技术可以很好的解决以上问题,然而其使用集中式单点服务管理的模式不适用于大规模的云计算场景中。
云计算中一般需要镜像存储服务器存放镜像,主存储来存放虚拟机的系统磁盘和数据磁盘,而无盘场景通常应用在裸金属物理机上,来实现网络安装系统或者成为无盘工作站等功能。云游戏使用GPU虚拟化的虚拟机来对外提供游戏服务,游戏信息与用户账号绑定,一般用户是随时申请随时获取的方式来得到游戏资源,不会长期占用一个虚拟机的计算资源,如果依旧使用主存储来启动虚拟机的话,其一会浪费主存储空间,增加存储成本,需要额外的回收机制,其二会由于主存储的稳定性影响虚拟机的稳定性。
PXE服务是由单点的DHCP服务器,TFTP服务器以及共享文件服务器组成的。各服务间没有高可用机制,并且在高并发情况下无法满足大规模云计算的性能和稳定性要求。
发明内容
本发明的一个目的是提供一种虚拟机启动方法及设备。
根据本发明的一个方面,提供了一种虚拟机启动方法,该方法包括:
通过云平台控制模块将各个DHCP服务器、TFTP服务器、虚拟机(VM)和虚拟机的兼容IPMI指令的虚拟电源控制模块分别部署到各个物理宿主机节点上;
通过所述云平台控制模块将各个虚拟机的操作系统镜像上传至镜像存储服务器;
各个虚拟机基于从所在的物理宿主机节点上的对应的虚拟电源控制模块及对应的DHCP服务器、对应的TFTP服务器接收的信息,从所述镜像存储服务器获取并运行对应的操作系统镜像。
进一步的,上述方法中,各个虚拟机基于从所在的物理宿主机节点上对应的虚拟电源控制模块及对应的DHCP服务器、对应的TFTP服务器接收的信息,从所述镜像存储服务器获取并运行对应的操作系统镜像之前,还包括:
通过所述云平台控制模块建立各个虚拟机与其所在的物理宿主机节点的DHCP服务器的第一对应关系,及建立各个虚拟机与其所在的物理宿主机节点的虚拟电源控制模块的第三对应关系。
进一步的,上述方法中,各个虚拟机基于从所在的物理宿主机节点上对应的虚拟电源控制模块及对应的DHCP服务器、TFTP服务器接收的信息,从所述镜像存储服务器获取并运行对应的操作系统镜像之前,还包括:
通过所述云平台控制模块向用户选择的操作系统镜像所对应的TFTP服务器,下发对应的网络启动程序。
进一步的,上述方法中,各个虚拟机基于从所在的物理宿主机节点上对应的虚拟电源控制模块及对应的DHCP服务器、TFTP服务器接收的信息,从所述镜像存储服务器获取并运行对应的操作系统镜像,包括:
虚拟机基于所述第三对应关系,从该虚拟机所在的物理宿主机节点对应的虚拟电源控制模块获取设置信息,并基于所述设置信息将该虚拟机的启动模式为网络启动;
云平台控制模块建立各个虚拟机与MAC地址的对应关系;
云平台控制模块基于虚拟机与MAC地址的对应关系,为每个MAC地址设置对应的启动配置;
虚拟机基于所述网络启动的启动方式和所述第一对应关系,通过启动网卡访问其所在物理宿主机节点上的对应DHCP服务器,从对应DHCP服务器获取该虚拟机所在物理宿主机节点上的TFTP服务器地址;
所述虚拟机基于获取到的TFTP服务器地址,从其所在物理宿主机节点上的TFTP服务器获取对应的网络启动程序,所述虚拟机通过所述网络启动程序并基于虚拟机的MAC地址查找到对应的启动配置;
所述虚拟机根据所述启动配置查找到所述镜像存储服务器中的操作系统镜像,并将该操作系统镜像下载并直接解压到虚拟机内存中运行。
根据本发明的另一面,还提供一种虚拟机启动设备,其中,该设备包括:
云平台控制模块,用于将各个DHCP服务器、TFTP服务器、虚拟机(VM)和虚拟机的兼容IPMI指令的虚拟电源控制模块分别部署到各个物理宿主机节点上;及将各个虚拟机的操作系统镜像上传至镜像存储服务器;
各个虚拟机,分别用于基于从所在的物理宿主机节点上的对应的虚拟电源控制模块及对应的DHCP服务器、对应的TFTP服务器接收的信息,从所述镜像存储服务器获取并运行对应的操作系统镜像。
进一步的,上述设备中,所述云平台控制模块,还用于建立各个虚拟机与其所在的物理宿主机节点的DHCP服务器的第一对应关系,及建立各个虚拟机与其所在的物理宿主机节点的虚拟电源控制模块的第三对应关系。
进一步的,上述设备中,所述云平台控制模块,还用于向用户选择的操作系统镜像所对应的TFTP服务器,下发对应的网络启动程序。
进一步的,上述设备中,所述云平台控制模块,还用于建立各个虚拟机与MAC地址的对应关系;及基于虚拟机与MAC地址的对应关系,为每个MAC地址设置对应的启动配置;
所述虚拟机,用于基于所述第三对应关系,从该虚拟机所在的物理宿主机节点对应的虚拟电源控制模块获取设置信息,并基于所述设置信息将该虚拟机的启动模式为网络启动;及基于所述网络启动的启动方式和所述第一对应关系,通过启动网卡访问其所在物理宿主机节点上的对应DHCP服务器,从对应DHCP服务器获取该虚拟机所在物理宿主机节点上的TFTP服务器地址,基于获取到的TFTP服务器地址,从其所在物理宿主机节点上的TFTP服务器获取对应的网络启动程序,通过所述网络启动程序并基于虚拟机的MAC地址查找到对应的启动配置;根据所述启动配置查找到所述镜像存储服务器中的操作系统镜像,并将该操作系统镜像下载并直接解压到虚拟机内存中运行。
根据本发明的另一面,还提供一种基于计算的设备,其中,包括:
处理器;以及
被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器:
通过云平台控制模块将各个DHCP服务器、TFTP服务器、虚拟机(VM)和虚拟机的兼容IPMI指令的虚拟电源控制模块分别部署到各个物理宿主机节点上;
通过所述云平台控制模块将各个虚拟机的操作系统镜像上传至镜像存储服务器;
各个虚拟机基于从所在的物理宿主机节点上的对应的虚拟电源控制模块及对应的DHCP服务器、对应的TFTP服务器接收的信息,从所述镜像存储服务器获取并运行对应的操作系统镜像。
根据本发明的另一面,还提供一种计算机可读存储介质,其上存储有计算机可执行指令,其中,该计算机可执行指令被处理器执行时使得该处理器:
通过云平台控制模块将各个DHCP服务器、TFTP服务器、虚拟机(VM)和虚拟机的兼容IPMI指令的虚拟电源控制模块分别部署到各个物理宿主机节点上;
通过所述云平台控制模块将各个虚拟机的操作系统镜像上传至镜像存储服务器;
各个虚拟机基于从所在的物理宿主机节点上的对应的虚拟电源控制模块及对应的DHCP服务器、对应的TFTP服务器接收的信息,从所述镜像存储服务器获取并运行对应的操作系统镜像。
与现有技术相比,本发明基于预启动执行环境(PXE)把无盘技术应用于云游戏场景中,使虚拟机运行在内存中,能够快速启动并且不占用存储空间。本发明通过云平台控制模块在各个物理宿主机节点上部署分布式DHCP服务以及TFTP服务,结合兼容IPMI指令的虚拟电源控制模块,然后使用镜像存储服务器直接下发镜像启动虚拟机而不使用主存储的方法,实现了云游戏虚拟机的无盘快速启动。
本发明使用分布式DHCP服务以及TFTP服务,结合兼容IPMI指令的虚拟机电源管理模块,然后使用镜像存储服务器直接下发镜像启动虚拟机而不使用主存储的方法,实现了云游戏虚拟机的无盘快速启动。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1示出本发明一实施例的虚拟机启动方法及设备的模块示意图;
图2示出本发明一实施例的虚拟机启动方法的初始化虚拟磁盘服务流程图;
图3示出本发明一实施例的虚拟机启动方法的虚拟机获取磁盘流程图。
附图中相同或相似的附图标记代表相同或相似的部件。
具体实施方式
下面结合附图对本发明作进一步详细描述。
在本申请一个典型的配置中,终端、服务网络的设备和可信方均包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
如图1~3所示,本发明提供一种虚拟机启动方法,所述方法包括:
步骤S1,通过云平台控制模块将各个DHCP服务器、TFTP服务器、虚拟机(VM)和虚拟机的兼容IPMI指令的虚拟电源控制模块分别部署到各个物理宿主机节点上;
步骤S2,通过所述云平台控制模块将各个虚拟机的操作系统镜像上传至镜像存储服务器;
步骤S3,各个虚拟机基于从所在的物理宿主机节点上的对应的虚拟电源控制模块及对应的DHCP服务器、对应的TFTP服务器接收的信息,从所述镜像存储服务器获取并运行对应的操作系统镜像。
在此,本发明基于预启动执行环境(PXE)把无盘技术应用于云游戏场景中,使虚拟机运行在内存中,能够快速启动并且不占用存储空间。本发明通过云平台控制模块在各个物理宿主机节点上部署分布式DHCP服务以及TFTP服务,结合兼容IPMI指令的虚拟电源控制模块,然后使用镜像存储服务器直接下发镜像启动虚拟机而不使用主存储的方法,实现了云游戏虚拟机的无盘快速启动。
本发明使用分布式DHCP服务以及TFTP服务,结合兼容IPMI指令的虚拟机电源管理模块,然后使用镜像存储服务器直接下发镜像启动虚拟机而不使用主存储的方法,实现了云游戏虚拟机的无盘快速启动。
本发明的虚拟机启动方法一实施例中,步骤S3,各个虚拟机基于从所在的物理宿主机节点上对应的虚拟电源控制模块及对应的DHCP服务器、对应的TFTP服务器接收的信息,从所述镜像存储服务器获取并运行对应的操作系统镜像之前,还包括:
通过所述云平台控制模块建立各个虚拟机与其所在的物理宿主机节点的DHCP服务器的第一对应关系,及建立各个虚拟机与其所在的物理宿主机节点的虚拟电源控制模块的第三对应关系。
在此,基于所述第一对应关系,虚拟机可以快速找到对应DHCP服务器获取DHCP服务,通过所述第三对应关系,所述虚拟机可以快速获取虚拟电源控制模块的设置信息。
本发明的虚拟机启动方法一实施例中,步骤S3,各个虚拟机基于从所在的物理宿主机节点上对应的虚拟电源控制模块及对应的DHCP服务器、TFTP服务器接收的信息,从所述镜像存储服务器获取并运行对应的操作系统镜像之前,还包括:
通过所述云平台控制模块向用户选择的操作系统镜像所对应的TFTP服务器,下发对应的网络启动程序。
在此,通过把网络启动程序预分配到各个物理宿主机节点,可以提高虚拟机启动效率,实现了云游戏虚拟机的无盘快速启动。
如图3所示,本发明的虚拟机启动方法一实施例中,步骤S3,各个虚拟机基于从所在的物理宿主机节点上对应的虚拟电源控制模块及对应的DHCP服务器、TFTP服务器接收的信息,从所述镜像存储服务器获取并运行对应的操作系统镜像,包括:
步骤S31,虚拟机基于所述第三对应关系,从该虚拟机所在的物理宿主机节点对应的虚拟电源控制模块获取设置信息,并基于所述设置信息将该虚拟机的启动模式为网络启动;
步骤S32,云平台控制模块建立各个虚拟机与MAC地址的对应关系;
步骤S33,云平台控制模块基于虚拟机与MAC地址的对应关系,为每个MAC地址设置对应的启动配置;
步骤S34,虚拟机基于所述网络启动的启动方式和所述第一对应关系,通过启动网卡访问其所在物理宿主机节点上的对应DHCP服务器,从对应DHCP服务器获取该虚拟机所在物理宿主机节点上的TFTP服务器地址;
步骤S35,所述虚拟机基于获取到的TFTP服务器地址,从其所在物理宿主机节点上的TFTP服务器获取对应的网络启动程序,所述虚拟机通过所述网络启动程序并基于虚拟机的MAC地址查找到对应的启动配置;
步骤S36,所述虚拟机根据所述启动配置查找到所述镜像存储服务器中的操作系统镜像,并将该操作系统镜像下载并直接解压到虚拟机内存中运行。
在此,本发明通过云平台控制模块把DHCP服务器部署在各个物理宿主机节点上,每个虚拟机的MAC地址以及IP地址由云平台控制模块统一管理,不会发生IP地址分配冲突,各物理宿主机节点上为同一子网服务的DHCP使用同一个IP地址池和MAC地址池。因此每个物理宿主机节点的DHCP服务虽然互相隔离,又是协同工作的,不会发生MAC或IP冲突的问题,同时供虚拟机启动的网络启动程序(Bootloader)也会被预先分发到各个物理宿主机节点的TFTP服务器上,每个物理宿主机节点上的虚拟机访问自己当前节点的DHCP和TFTP服务,这样在高并发情况下也不会有性能问题。并且如果发生单节点故障并不会影响其他节点的工作。最后再通过镜像存储服务器接口把镜像直接加载进内存启动虚拟机,不需要通过主存储启动虚拟机。
具体的,如图1~3所示,本发明一实施例中,包括初始化虚拟磁盘服务和虚拟机获取磁盘流程:
1.初始化虚拟磁盘服务
步骤11.通过所述云平台控制模块上传虚拟机的操作系统镜像至镜像存储服务器;
步骤12.通过所述云平台控制模块初始化虚拟机的虚拟电源控制模块(IPMI);
步骤13.获取虚拟机的子网信息,基于虚拟机的子网信息,到各个物理宿主机节点配置DHCP服务器,只允许当前物理机上的虚拟机获得DHCP服务器的DHCP服务;
步骤14.配置TFTP服务器,根据用户选择的操作系统镜像,下发对应的网络启动程序到TFTP服务器。
2.虚拟机获取磁盘流程
步骤21.虚拟机通过对应的虚拟电源控制模块设置启动模式为网络启动,
步骤22.云平台控制模块建立各个虚拟机与IP地址和MAC地址的对应关系索引表,其中,一个虚拟机与一个IP地址为唯一对应关系,即一个IP地址被分配给一个虚拟机后,不会在被分配给其他虚拟机,避免各物理宿主机节点间的IP地址分配冲突;
步骤23.云平台控制模块根据用户选择的操作系统镜像以及IP地址MAC地址的对应关系索引表设置对应的启动配置;
步骤24.虚拟机基于所述网络启动的启动方式和所述第一对应关系,通过启动网卡访问其所在物理宿主机节点上的对应DHCP服务器,从对应DHCP服务器获取该虚拟机所在物理宿主机节点上的TFTP服务器地址;
步骤25.所述虚拟机基于获取到的TFTP服务器地址,从其所在物理宿主机节点上的TFTP服务器获取网络启动程序,通过所述网络启动程序并基于虚拟机的MAC地址查找到对应的启动配置;
步骤26.所述虚拟机根据所述启动配置查找到所述镜像存储服务器中的操作系统镜像,并通过共享文件协议下载并直接解压到虚拟机内存中运行。
如图1~3所示,本发明提供一种虚拟机启动设备,所述设备包括:
云平台控制模块,用于将各个DHCP服务器、TFTP服务器、虚拟机(VM)和虚拟机的兼容IPMI指令的虚拟电源控制模块分别部署到各个物理宿主机节点上;及将各个虚拟机的操作系统镜像上传至镜像存储服务器;
各个虚拟机,分别用于基于从所在的物理宿主机节点上的对应的虚拟电源控制模块及对应的DHCP服务器、对应的TFTP服务器接收的信息,从所述镜像存储服务器获取并运行对应的操作系统镜像。
在此,本发明基于预启动执行环境(PXE)把无盘技术应用于云游戏场景中,使虚拟机运行在内存中,能够快速启动并且不占用存储空间。本发明通过云平台控制模块在各个物理宿主机节点上部署分布式DHCP服务以及TFTP服务,结合兼容IPMI指令的虚拟电源控制模块,然后使用镜像存储服务器直接下发镜像启动虚拟机而不使用主存储的方法,实现了云游戏虚拟机的无盘快速启动。
本发明使用分布式DHCP服务以及TFTP服务,结合兼容IPMI指令的虚拟机电源管理模块,然后使用镜像存储服务器直接下发镜像启动虚拟机而不使用主存储的方法,实现了云游戏虚拟机的无盘快速启动。
本发明的虚拟机启动设备一实施例中,所述云平台控制模块,还用于建立各个虚拟机与其所在的物理宿主机节点的DHCP服务器的第一对应关系,及建立各个虚拟机与其所在的物理宿主机节点的虚拟电源控制模块的第三对应关系。
在此,基于所述第一对应关系,虚拟机可以快速找到对应DHCP服务器获取DHCP服务,通过所述第三对应关系,所述虚拟机可以快速获取虚拟电源控制模块的设置信息。
本发明的虚拟机启动设备一实施例中,所述云平台控制模块,还用于向用户选择的操作系统镜像所对应的TFTP服务器,下发对应的网络启动程序。
在此,通过把网络启动程序预分配到各个物理宿主机节点,可以提高虚拟机启动效率,实现了云游戏虚拟机的无盘快速启动。
如图3所示,本发明的虚拟机启动方法一实施例中,所述云平台控制模块,还用于建立各个虚拟机与MAC地址的对应关系;及基于虚拟机与MAC地址的对应关系,为每个MAC地址设置对应的启动配置;
所述虚拟机,用于基于所述第三对应关系,从该虚拟机所在的物理宿主机节点对应的虚拟电源控制模块获取设置信息,并基于所述设置信息将该虚拟机的启动模式为网络启动;及基于所述网络启动的启动方式和所述第一对应关系,通过启动网卡访问其所在物理宿主机节点上的对应DHCP服务器,从对应DHCP服务器获取该虚拟机所在物理宿主机节点上的TFTP服务器地址,基于获取到的TFTP服务器地址,从其所在物理宿主机节点上的TFTP服务器获取对应的网络启动程序,通过所述网络启动程序并基于虚拟机的MAC地址查找到对应的启动配置;根据所述启动配置查找到所述镜像存储服务器中的操作系统镜像,并将该操作系统镜像下载并直接解压到虚拟机内存中运行。
在此,本发明通过云平台控制模块把DHCP服务器部署在各个物理宿主机节点上,每个虚拟机的MAC地址以及IP地址由云平台控制模块统一管理,不会发生IP地址分配冲突,各物理宿主机节点上为同一子网服务的DHCP使用同一个IP地址池和MAC地址池。因此每个物理宿主机节点的DHCP服务虽然互相隔离,又是协同工作的,不会发生MAC或IP冲突的问题,同时供虚拟机启动的网络启动程序(Bootloader)也会被预先分发到各个物理宿主机节点的TFTP服务器上,每个物理宿主机节点上的虚拟机访问自己当前节点的DHCP和TFTP服务,这样在高并发情况下也不会有性能问题。并且如果发生单节点故障并不会影响其他节点的工作。最后再通过镜像存储服务器接口把镜像直接加载进内存启动虚拟机,不需要通过主存储启动虚拟机。
本发明的各设备和存储介质实施例的详细内容,具体可参见各方法实施例的对应部分,在此,不再赘述。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
需要注意的是,本发明可在软件和/或软件与硬件的组合体中被实施,例如,可采用专用集成电路(ASIC)、通用目的计算机或任何其他类似硬件设备来实现。在一个实施例中,本发明的软件程序可以通过处理器执行以实现上文所述步骤或功能。同样地,本发明的软件程序(包括相关的数据结构)可以被存储到计算机可读记录介质中,例如,RAM存储器,磁或光驱动器或软磁盘及类似设备。另外,本发明的一些步骤或功能可采用硬件来实现,例如,作为与处理器配合从而执行各个步骤或功能的电路。
另外,本发明的一部分可被应用为计算机程序产品,例如计算机程序指令,当其被计算机执行时,通过该计算机的操作,可以调用或提供根据本发明的方法和/或技术方案。而调用本发明的方法的程序指令,可能被存储在固定的或可移动的记录介质中,和/或通过广播或其他信号承载媒体中的数据流而被传输,和/或被存储在根据所述程序指令运行的计算机设备的工作存储器中。在此,根据本发明的一个实施例包括一个装置,该装置包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发该装置运行基于前述根据本发明的多个实施例的方法和/或技术方案。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。装置权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
Claims (10)
1.一种虚拟机启动方法,其中,该方法包括:
通过云平台控制模块将各个DHCP服务器、TFTP服务器、虚拟机和虚拟机的兼容IPMI指令的虚拟电源控制模块分别部署到各个物理宿主机节点上;
通过所述云平台控制模块将各个虚拟机的操作系统镜像上传至镜像存储服务器;
各个虚拟机基于从所在的物理宿主机节点上的对应的虚拟电源控制模块及对应的DHCP服务器、对应的TFTP服务器接收的信息,从所述镜像存储服务器获取并运行对应的操作系统镜像。
2.根据权利要求1所述的方法,其中,各个虚拟机基于从所在的物理宿主机节点上对应的虚拟电源控制模块及对应的DHCP服务器、对应的TFTP服务器接收的信息,从所述镜像存储服务器获取并运行对应的操作系统镜像之前,还包括:
通过所述云平台控制模块建立各个虚拟机与其所在的物理宿主机节点的DHCP服务器的第一对应关系,及建立各个虚拟机与其所在的物理宿主机节点的虚拟电源控制模块的第三对应关系。
3.根据权利要求1所述的方法,其中,各个虚拟机基于从所在的物理宿主机节点上对应的虚拟电源控制模块及对应的DHCP服务器、TFTP服务器接收的信息,从所述镜像存储服务器获取并运行对应的操作系统镜像之前,还包括:
通过所述云平台控制模块向用户选择的操作系统镜像所对应的TFTP服务器,下发对应的网络启动程序。
4.根据权利要求2所述的方法,其中,各个虚拟机基于从所在的物理宿主机节点上对应的虚拟电源控制模块及对应的DHCP服务器、TFTP服务器接收的信息,从所述镜像存储服务器获取并运行对应的操作系统镜像,包括:
虚拟机基于所述第三对应关系,从该虚拟机所在的物理宿主机节点对应的虚拟电源控制模块获取设置信息,并基于所述设置信息将该虚拟机的启动模式为网络启动;
云平台控制模块建立各个虚拟机与MAC地址的对应关系;
云平台控制模块基于虚拟机与MAC地址的对应关系,为每个MAC地址设置对应的启动配置;
虚拟机基于所述网络启动的启动方式和所述第一对应关系,通过启动网卡访问其所在物理宿主机节点上的对应DHCP服务器,从对应DHCP服务器获取该虚拟机所在物理宿主机节点上的TFTP服务器地址;
所述虚拟机基于获取到的TFTP服务器地址,从其所在物理宿主机节点上的TFTP服务器获取对应的网络启动程序,所述虚拟机通过所述网络启动程序并基于虚拟机的MAC地址查找到对应的启动配置;
所述虚拟机根据所述启动配置查找到所述镜像存储服务器中的操作系统镜像,并将该操作系统镜像下载并直接解压到虚拟机内存中运行。
5.一种虚拟机启动设备,其中,该设备包括:
云平台控制模块,用于将各个DHCP服务器、TFTP服务器、虚拟机(VM)和虚拟机的兼容IPMI指令的虚拟电源控制模块分别部署到各个物理宿主机节点上;及将各个虚拟机的操作系统镜像上传至镜像存储服务器;
各个虚拟机,分别用于基于从所在的物理宿主机节点上的对应的虚拟电源控制模块及对应的DHCP服务器、对应的TFTP服务器接收的信息,从所述镜像存储服务器获取并运行对应的操作系统镜像。
6.根据权利要求5所述的设备,其中,所述云平台控制模块,还用于建立各个虚拟机与其所在的物理宿主机节点的DHCP服务器的第一对应关系,及建立各个虚拟机与其所在的物理宿主机节点的虚拟电源控制模块的第三对应关系。
7.根据权利要求5所述的设备,其中,所述云平台控制模块,还用于向用户选择的操作系统镜像所对应的TFTP服务器,下发对应的网络启动程序。
8.根据权利要求6所述的设备,其中,所述云平台控制模块,还用于建立各个虚拟机与MAC地址的对应关系;及基于虚拟机与MAC地址的对应关系,为每个MAC地址设置对应的启动配置;
所述虚拟机,用于基于所述第三对应关系,从该虚拟机所在的物理宿主机节点对应的虚拟电源控制模块获取设置信息,并基于所述设置信息将该虚拟机的启动模式为网络启动;及基于所述网络启动的启动方式和所述第一对应关系,通过启动网卡访问其所在物理宿主机节点上的对应DHCP服务器,从对应DHCP服务器获取该虚拟机所在物理宿主机节点上的TFTP服务器地址,基于获取到的TFTP服务器地址,从其所在物理宿主机节点上的TFTP服务器获取对应的网络启动程序,通过所述网络启动程序并基于虚拟机的MAC地址查找到对应的启动配置;根据所述启动配置查找到所述镜像存储服务器中的操作系统镜像,并将该操作系统镜像下载并直接解压到虚拟机内存中运行。
9.一种基于计算的设备,其中,包括:
处理器;以及
被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器:
通过云平台控制模块将各个DHCP服务器、TFTP服务器、虚拟机(VM)和虚拟机的兼容IPMI指令的虚拟电源控制模块分别部署到各个物理宿主机节点上;
通过所述云平台控制模块将各个虚拟机的操作系统镜像上传至镜像存储服务器;
各个虚拟机基于从所在的物理宿主机节点上的对应的虚拟电源控制模块及对应的DHCP服务器、对应的TFTP服务器接收的信息,从所述镜像存储服务器获取并运行对应的操作系统镜像。
10.一种计算机可读存储介质,其上存储有计算机可执行指令,其中,该计算机可执行指令被处理器执行时使得该处理器:
通过云平台控制模块将各个DHCP服务器、TFTP服务器、虚拟机(VM)和虚拟机的兼容IPMI指令的虚拟电源控制模块分别部署到各个物理宿主机节点上;
通过所述云平台控制模块将各个虚拟机的操作系统镜像上传至镜像存储服务器;
各个虚拟机基于从所在的物理宿主机节点上的对应的虚拟电源控制模块及对应的DHCP服务器、对应的TFTP服务器接收的信息,从所述镜像存储服务器获取并运行对应的操作系统镜像。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010705449.3A CN111857956B (zh) | 2020-07-21 | 2020-07-21 | 虚拟机启动方法及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010705449.3A CN111857956B (zh) | 2020-07-21 | 2020-07-21 | 虚拟机启动方法及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111857956A true CN111857956A (zh) | 2020-10-30 |
CN111857956B CN111857956B (zh) | 2024-03-12 |
Family
ID=73001970
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010705449.3A Active CN111857956B (zh) | 2020-07-21 | 2020-07-21 | 虚拟机启动方法及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111857956B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112667363A (zh) * | 2021-01-05 | 2021-04-16 | 浪潮云信息技术股份公司 | 一种基于云平台的虚拟机模拟云物理主机的方法及装置 |
CN112965790A (zh) * | 2021-03-29 | 2021-06-15 | 华云数据控股集团有限公司 | 一种基于pxe协议的虚拟机启动方法及电子设备 |
CN113094108A (zh) * | 2021-03-29 | 2021-07-09 | 联想(北京)有限公司 | 一种启动方法和电子设备 |
CN113986358A (zh) * | 2021-09-26 | 2022-01-28 | 阿里巴巴(中国)有限公司 | 裸金属实例装机方法、装置及设备 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009176213A (ja) * | 2008-01-28 | 2009-08-06 | Hitachi Software Eng Co Ltd | ネットワークブート方式 |
CN102088367A (zh) * | 2010-12-10 | 2011-06-08 | 北京世纪互联工程技术服务有限公司 | 虚拟化环境下快速部署方法 |
JP2015011658A (ja) * | 2013-07-02 | 2015-01-19 | 株式会社エヌ・ティ・ティ・データ | ネットワークブートサーバ、ネットワークブートシステム、ネットワークブート制御方法、ネットワークブート制御プログラム |
CN104486192A (zh) * | 2014-12-05 | 2015-04-01 | 国云科技股份有限公司 | 一种虚拟网络隔离方法 |
CN106446061A (zh) * | 2016-09-06 | 2017-02-22 | 上海云轴信息科技有限公司 | 用于存储虚拟机镜像的方法及设备 |
CN106445643A (zh) * | 2016-11-14 | 2017-02-22 | 上海云轴信息科技有限公司 | 克隆、升级虚拟机的方法及设备 |
CN106899477A (zh) * | 2017-03-09 | 2017-06-27 | 北京百悟科技有限公司 | 云计算平台中物理机的构建方法及装置 |
CN107291525A (zh) * | 2016-04-01 | 2017-10-24 | 华为技术有限公司 | 一种部署虚拟机的方法、宿主机及系统 |
CN108089913A (zh) * | 2017-12-28 | 2018-05-29 | 创新科存储技术(深圳)有限公司 | 一种超融合系统的虚拟机部署方法 |
CN108984272A (zh) * | 2018-07-23 | 2018-12-11 | 郑州云海信息技术有限公司 | OpenStack云计算管理平台的控制方法和装置 |
CN109558212A (zh) * | 2018-11-27 | 2019-04-02 | 深信服科技股份有限公司 | 一种物理设备的虚拟化管理方法、系统、物理设备及介质 |
CN111414231A (zh) * | 2020-03-18 | 2020-07-14 | 上海云轴信息科技有限公司 | 一种虚拟机镜像与容器镜像相互转换的方法及设备 |
-
2020
- 2020-07-21 CN CN202010705449.3A patent/CN111857956B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009176213A (ja) * | 2008-01-28 | 2009-08-06 | Hitachi Software Eng Co Ltd | ネットワークブート方式 |
CN102088367A (zh) * | 2010-12-10 | 2011-06-08 | 北京世纪互联工程技术服务有限公司 | 虚拟化环境下快速部署方法 |
JP2015011658A (ja) * | 2013-07-02 | 2015-01-19 | 株式会社エヌ・ティ・ティ・データ | ネットワークブートサーバ、ネットワークブートシステム、ネットワークブート制御方法、ネットワークブート制御プログラム |
CN104486192A (zh) * | 2014-12-05 | 2015-04-01 | 国云科技股份有限公司 | 一种虚拟网络隔离方法 |
CN107291525A (zh) * | 2016-04-01 | 2017-10-24 | 华为技术有限公司 | 一种部署虚拟机的方法、宿主机及系统 |
CN106446061A (zh) * | 2016-09-06 | 2017-02-22 | 上海云轴信息科技有限公司 | 用于存储虚拟机镜像的方法及设备 |
CN106445643A (zh) * | 2016-11-14 | 2017-02-22 | 上海云轴信息科技有限公司 | 克隆、升级虚拟机的方法及设备 |
CN106899477A (zh) * | 2017-03-09 | 2017-06-27 | 北京百悟科技有限公司 | 云计算平台中物理机的构建方法及装置 |
CN108089913A (zh) * | 2017-12-28 | 2018-05-29 | 创新科存储技术(深圳)有限公司 | 一种超融合系统的虚拟机部署方法 |
CN108984272A (zh) * | 2018-07-23 | 2018-12-11 | 郑州云海信息技术有限公司 | OpenStack云计算管理平台的控制方法和装置 |
CN109558212A (zh) * | 2018-11-27 | 2019-04-02 | 深信服科技股份有限公司 | 一种物理设备的虚拟化管理方法、系统、物理设备及介质 |
CN111414231A (zh) * | 2020-03-18 | 2020-07-14 | 上海云轴信息科技有限公司 | 一种虚拟机镜像与容器镜像相互转换的方法及设备 |
Non-Patent Citations (2)
Title |
---|
THOMAS DAMGAARD NIELSEN: "Private Cloud Configuration with MetaConfig", 《IEEE XPLORE》, 1 September 2011 (2011-09-01) * |
姜斌斌: "基于Citrix的万里云桌面和应用虚拟化的部署探析", 《浙江万里学院学报》, no. 29, 31 July 2016 (2016-07-31) * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112667363A (zh) * | 2021-01-05 | 2021-04-16 | 浪潮云信息技术股份公司 | 一种基于云平台的虚拟机模拟云物理主机的方法及装置 |
CN112965790A (zh) * | 2021-03-29 | 2021-06-15 | 华云数据控股集团有限公司 | 一种基于pxe协议的虚拟机启动方法及电子设备 |
CN113094108A (zh) * | 2021-03-29 | 2021-07-09 | 联想(北京)有限公司 | 一种启动方法和电子设备 |
CN112965790B (zh) * | 2021-03-29 | 2022-05-31 | 华云数据控股集团有限公司 | 一种基于pxe协议的虚拟机启动方法及电子设备 |
CN113094108B (zh) * | 2021-03-29 | 2023-01-17 | 联想(北京)有限公司 | 一种启动方法和电子设备 |
CN113986358A (zh) * | 2021-09-26 | 2022-01-28 | 阿里巴巴(中国)有限公司 | 裸金属实例装机方法、装置及设备 |
CN113986358B (zh) * | 2021-09-26 | 2023-12-26 | 阿里巴巴(中国)有限公司 | 裸金属实例装机方法、装置及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN111857956B (zh) | 2024-03-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111857956B (zh) | 虚拟机启动方法及设备 | |
US6810478B1 (en) | System for remote booting of muntliple operating systems using chained bootstrap mechanism in a network | |
US7467295B2 (en) | Determining a boot image based on a requesting client address | |
CN110495136B (zh) | 裸金属服务器的硬件属性发现方法和系统 | |
CN109558212B (zh) | 一种物理设备的虚拟化管理方法、系统、物理设备及介质 | |
US10686755B2 (en) | Assigning IP addresses and configuration parameters in hyper-converged infrastructure | |
US20040193867A1 (en) | Configurabel network boot management for hetergenous boot options | |
US8554936B2 (en) | Redistribution of operating environments for the redeployment of grid clients | |
CN108089913B (zh) | 一种超融合系统的虚拟机部署方法 | |
CN111314799A (zh) | 终端系统构架、通信系统及通信方法、存储介质 | |
KR20060081324A (ko) | 이동 처리 프로그램, 정보 처리 장치, 컴퓨터 시스템 및이동 처리 프로그램을 저장한 컴퓨터 판독 가능한 기록매체 | |
CN112256393B (zh) | 一种裸金属服务器的资源管理方法及设备 | |
CN112130917A (zh) | 远程加载系统镜像方法 | |
CN113268256A (zh) | 批量装机方法、装置、服务器及计算机存储介质 | |
CN115562734A (zh) | 一种数据处理器配置方法、装置、设备及介质 | |
CN114363295A (zh) | 一种租户服务器的管理方法及装置 | |
CN110275719B (zh) | 基于国产cpu和操作系统的云物理主机操作系统部署方法 | |
CN112328312B (zh) | 一种实现裸机设备无盘启动的方法与设备 | |
CN117519804A (zh) | 终止服务器预启动执行环境引导过程的方法、装置及设备 | |
CN111459619A (zh) | 一种基于云平台实现服务的方法和装置 | |
CN115296994A (zh) | 一种池化异构计算资源的启动配置方法、装置以及介质 | |
JP2006252124A (ja) | ネットワークシステム、ファイルアクセス方法およびプログラム | |
TW201328246A (zh) | 雲端伺服系統的管理方法及管理系統 | |
CN110830550A (zh) | 计算机集群及其无盘启动方法 | |
CN113076171B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |