CN114371908A - 一种云应用程序运行方法和装置 - Google Patents
一种云应用程序运行方法和装置 Download PDFInfo
- Publication number
- CN114371908A CN114371908A CN202111440802.0A CN202111440802A CN114371908A CN 114371908 A CN114371908 A CN 114371908A CN 202111440802 A CN202111440802 A CN 202111440802A CN 114371908 A CN114371908 A CN 114371908A
- Authority
- CN
- China
- Prior art keywords
- virtual machine
- target
- cloud
- management service
- configuration 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
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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/547—Remote procedure calls [RPC]; Web services
-
- 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/45562—Creating, deleting, cloning 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/45575—Starting, stopping, suspending or resuming virtual machine instances
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
本发明实施例提供了一种云应用程序运行方法和装置,涉及云技术领域,方法包括:接收虚拟机创建请求;其中,虚拟机创建请求中携带有虚拟机配置信息;基于预设的虚拟机镜像和虚拟机配置信息,在宿主机中创建目标虚拟机;其中,目标虚拟机具有虚拟机配置信息所表示的虚拟机配置;在目标虚拟机中运行目标云应用程序。基于上述处理,能够实现各云应用程序之间的隔离,避免不同的云应用程序在运行过程中产生相互的影响。
Description
技术领域
本发明涉及云技术领域,特别是涉及一种云应用程序运行方法和装置。
背景技术
随着网络技术的快速发展,为了降低对客户端配置的要求,可以基于客户端和云设备(例如,云服务器)的架构,向用户提供云应用服务。
相关技术中,可以在服务端的宿主机中创建容器,并在容器中运行云应用程序。然而,若在宿主机中通过多个容器运行多个不同的云应用程序,由于宿主机中各容器之间不具备隔离性,即,多个不同的云应用程序本质上仍是运行在同一个宿主机上,也就无法实现各云应用程序之间的隔离,导致不同的云应用程序在运行过程中产生相互的影响。
发明内容
本发明实施例的目的在于提供一种云应用程序运行方法和装置,能够实现各云应用程序之间的隔离,避免不同的云应用程序在运行过程中产生相互的影响。具体技术方案如下:
在本发明实施的第一方面,首先提供了一种云应用程序运行方法,所述方法包括:
接收虚拟机创建请求;其中,所述虚拟机创建请求中携带有虚拟机配置信息;
基于预设的虚拟机镜像和所述虚拟机配置信息,在宿主机中创建目标虚拟机;其中,所述目标虚拟机具有所述虚拟机配置信息所表示的虚拟机配置;
在所述目标虚拟机中运行目标云应用程序。
可选的,所述接收虚拟机创建请求,包括:
通过虚拟机管理服务的API(Application Programming Interface,应用程序接口),接收用户通过云管理平台发送的虚拟机创建请求;
所述基于预设的虚拟机镜像和所述虚拟机配置信息,在宿主机中创建目标虚拟机,包括:
通过所述虚拟机管理服务,基于预设的虚拟机镜像和所述虚拟机配置信息,在宿主机中创建目标虚拟机。
可选的,在所述目标虚拟机中运行目标云应用程序之前,所述方法还包括:
通过所述虚拟机管理服务的API,接收用户通过所述云管理平台发送的针对所述目标虚拟机的启动请求;
通过所述虚拟机管理服务开启虚拟机启动进程,以通过所述虚拟机启动进程启动所述目标虚拟机。
可选的,在所述通过所述虚拟机管理服务开启虚拟机启动进程,以通过所述虚拟机启动进程启动所述目标虚拟机之后,所述方法还包括:
通过所述虚拟机管理服务的API,接收用户通过所述云管理平台发送的针对所述目标虚拟机的关机请求;
通过所述虚拟机管理服务,向所述目标虚拟机发送ACPI(AdvancedConfiguration and Power Management Interface,高级配置和电源管理接口)关机指令,以关闭所述目标虚拟机。
可选的,所述虚拟机配置信息包括:CPU的频率、内存的大小、硬盘的大小,以及网卡、显卡、声卡和输入设备的性能参数。
在本发明实施的第二方面,提供了一种云应用程序运行装置,所述装置包括:
虚拟机创建请求接收模块,用于接收虚拟机创建请求;其中,所述虚拟机创建请求中携带有虚拟机配置信息;
虚拟机创建模块,用于基于预设的虚拟机镜像和所述虚拟机配置信息,在宿主机中创建目标虚拟机;其中,所述目标虚拟机具有所述虚拟机配置信息所表示的虚拟机配置;
云应用程序运行模块,用于在所述目标虚拟机中运行目标云应用程序。
可选的,所述虚拟机创建请求接收模块,具体用于通过虚拟机管理服务的应用程序接口API,接收用户通过云管理平台发送的虚拟机创建请求;
所述虚拟机创建模块,具体用于通过所述虚拟机管理服务,基于预设的虚拟机镜像和所述虚拟机配置信息,在宿主机中创建目标虚拟机。
可选的,所述装置还包括:
启动请求接收模块,用于在所述目标虚拟机中运行目标云应用程序之前,通过所述虚拟机管理服务的API,接收用户通过所述云管理平台发送的针对所述目标虚拟机的启动请求;
虚拟机启动模块,用于通过所述虚拟机管理服务开启虚拟机启动进程,以通过所述虚拟机启动进程启动所述目标虚拟机。
可选的,所述装置还包括:
关机请求获取模块,用于在所述通过所述虚拟机管理服务开启虚拟机启动进程,以通过所述虚拟机启动进程启动所述目标虚拟机之后,通过所述虚拟机管理服务的API,接收用户通过所述云管理平台发送的针对所述目标虚拟机的关机请求;
虚拟机关闭模块,用于通过所述虚拟机管理服务,向所述目标虚拟机发送高级配置和电源管理接口ACPI关机指令,以关闭所述目标虚拟机。
可选的,所述虚拟机配置信息包括:CPU的频率、内存的大小、硬盘的大小,以及网卡、显卡、声卡和输入设备的性能参数。
本发明实施例还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述任一所述的云应用程序运行方法。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一所述的云应用程序运行方法。
本发明实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述的云应用程序运行方法。
本发明实施例有益效果:
本发明实施例提供的云应用程序运行方法,接收虚拟机创建请求;其中,虚拟机创建请求中携带有虚拟机配置信息;基于预设的虚拟机镜像和虚拟机配置信息,在宿主机中创建目标虚拟机;其中,目标虚拟机具有虚拟机配置信息所表示的虚拟机配置;在目标虚拟机中运行目标云应用程序。
基于上述处理,能够在虚拟机中运行云应用程序,而同一宿主机中的各虚拟机之间是完全独立的,因此,在不同的虚拟机中运行不同的云应用程序,也就能够实现各云应用程序之间的隔离,避免不同的云应用程序在运行过程中产生相互的影响。
当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的实施例。
图1为本发明实施例提供的一种云应用程序运行方法的流程图;
图2为本发明实施例提供的另一种云应用程序运行方法的流程图;
图3为本发明实施例提供的另一种云应用程序运行方法的流程图;
图4为本发明实施例提供的另一种云应用程序运行方法的流程图;
图5为本发明实施例提供的一种运行云应用程序的架构的示意图;
图6为本发明实施例提供的一种云应用程序运行装置的结构图;
图7为本发明实施例提供的一种电子设备的结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员基于本发明所获得的所有其他实施例,都属于本发明保护的范围。
相关技术中,在宿主机中创建容器,并在容器中运行云应用程序。然而,若在宿主机中通过多个容器运行多个不同的云应用程序,由于宿主机中各容器之间不具备隔离性,也就无法实现各云应用程序之间的隔离,导致不同的云应用程序在运行过程中产生相互的影响。
为了解决上述问题,本发明实施例提供了一种云应用程序运行方法,该方法可以应用于电子设备,该电子设备可以为宿主机(例如,物理服务器)。
参见图1,图1为本发明实施例提供的一种云应用程序运行方法的流程图,该方法可以包括以下步骤:
S101:接收虚拟机创建请求。
其中,虚拟机创建请求中携带有虚拟机配置信息。
S102:基于预设的虚拟机镜像和虚拟机配置信息,在宿主机中创建目标虚拟机。
其中,目标虚拟机具有虚拟机配置信息所表示的虚拟机配置。
S103:在目标虚拟机中运行目标云应用程序。
基于本发明实施例提供的云应用程序运行方法,能够在虚拟机中运行云应用程序,而同一宿主机中的各虚拟机之间是完全独立的,因此,在不同的虚拟机中运行不同的云应用程序,也就能够实现各云应用程序之间的隔离,避免不同的云应用程序在运行过程中产生相互的影响。
具体的,能够避免恶意攻击者利用宿主机中一个虚拟机中运行的云应用程序,对其他虚拟机中运行的云应用程序进行攻击,保证各云应用程序的正常运行,提高云应用程序运行的可靠性和稳定性。
针对上述步骤S101,一种实现方式中,电子设备可以向用户提供用户操作界面。通过该用户操作界面,用户可以选择所需的虚拟机配置,相应的,电子设备可以接收到携带有虚拟机配置信息的虚拟机创建请求。
针对步骤S102,虚拟机镜像可以为技术人员预先配置的,用于创建虚拟机。虚拟机镜像可以为基于不同的操作系统配置的,例如,虚拟机镜像可以为基于安卓系统配置的,即,基于该虚拟机镜像创建的虚拟机(可以称为安卓虚拟机)能够运行安卓系统对应的云应用程序;虚拟机镜像也可以为基于Windows系统配置的,即,基于该虚拟机镜像创建的虚拟机能够运行Windows系统对应的云应用程序。
在一个实施例中,电子设备可以按照虚拟机配置信息,分配相应的云服务资源,并基于分配的云服务资源安装虚拟机镜像,得到具有该虚拟机配置信息所表示的虚拟机配置的目标虚拟机。
针对步骤S103,用户可以在创建的虚拟机(即本发明实施例中的目标虚拟机)中运行所需的云应用程序(即本发明实施例中的目标云应用程序)。其中,目标云应用程序可以为云游戏应用程序,或者,也可以为云制图应用程序,但并不限于此。
在一个实施例中,参见图2,在图1的基础上,上述步骤S101可以包括:
S1011:通过虚拟机管理服务的API,接收用户通过云管理平台发送的虚拟机创建请求。
相应的,上述步骤S102可以包括:
S1021:通过虚拟机管理服务,基于预设的虚拟机镜像和虚拟机配置信息,在宿主机中创建目标虚拟机。
在本发明实施例中,该云管理平台可以基于OpenStack实现,其中,OpenStack是一个开源的云计算管理平台项目。虚拟机管理服务可以为Libvirt对应的服务,其中,Libvirt是用于管理虚拟化平台的开源的API,后台程序和管理工具。
一种实现方式中,电子设备中可以部署该虚拟机管理服务,并向云管理平台提供对应的API。例如,电子设备可以开启该虚拟管理服务对应的进程,以通过该虚拟管理服务与云管理平台交互。
示例性地,可以在服务器节点中部署OpenStack,并向用户提供相应的云平台管理界面。
进而,用户可以通过云平台管理界面,在云管理平台中选择需要运行的目标应用程序所需的虚拟机配置,相应的,云管理平台可以通过调用虚拟机管理服务的API,向虚拟机管理服务发送携带有虚拟机配置信息的虚拟机创建请求。
虚拟机管理服务则可以获取对应的虚拟机镜像,并基于该虚拟机配置信息,创建对应的目标虚拟机。
基于上述处理,通过云管理平台,能够方便用户对宿主机中的虚拟机进行管理,进而,提高对虚拟机中运行的云应用程序进行管理的效率。
在一个实施例中,云应用业务的架构中可以包含多个宿主机,每个宿主机中均可以部署有虚拟机管理服务,相应的,云管理平台可以与各虚拟机管理服务进行通信,进而,通过该云管理平台,能够实现对多个宿主机中的虚拟机进行管理,以及对虚拟机中运行的云应用程序进行管理,能够提高对云应用程序管理的效率。
在一个实施例中,虚拟机配置信息包括:CPU的频率、内存的大小、硬盘的大小,以及网卡、显卡、声卡和输入设备的性能参数。
在本发明实施例中,用户在云管理平台中可以选择用于运行云应用程序的虚拟机的配置,例如,虚拟机的CPU的频率、内存的大小、硬盘的大小,以及网卡、显卡、声卡和输入设备的性能参数。此处的配置均表示虚拟机的虚拟配置,即,虚拟CPU、虚拟内存、虚拟硬盘、虚拟网卡、虚拟显卡、虚拟声卡和虚拟输入设备。虚拟输入设备可以包含虚拟触摸屏,可以响应用户的操作数据。
可以理解的是,用户所选择的虚拟机的配置可以根据所要运行的目标应用程序确定,例如,针对一些对配置要求较高的云游戏应用程序,则需要创建配置较高的虚拟机。
另外,用户所选择的虚拟机配置的上限取决于该用户购买的云服务的配置,且不高于运行虚拟机的宿主机的物理CPU、物理内存和物理硬盘的性能参数。
在一个实施例中,参见图3,在图2的基础上,在上述步骤S103之前,该方法还可以包括以下步骤:
S104:通过虚拟机管理服务的API,接收用户通过云管理平台发送的针对目标虚拟机的启动请求。
S105:通过虚拟机管理服务开启虚拟机启动进程,以通过虚拟机启动进程启动目标虚拟机。
在本发明实施例中,在用户通过云管理平台创建目标虚拟机后,还可以通过云管理平台选择启动目标虚拟机。相应的,虚拟机管理服务可以接收到启动请求,进而,开启虚拟机启动进程,以通过虚拟机启动进程启动目标虚拟机。
一种实现方式中,虚拟机启动进程可以为Qemu-kvm(一种运行虚拟机的软件)对应的进程。或者,虚拟机启动进程也可以为Xen(一个开放源代码虚拟机监视器)对应的进程。
在启动目标虚拟机后,则可以在目标虚拟机中安装并运行目标应用程序。
在一个实施例中,参见图4,在图3的基础上,在上述步骤S105之后,该方法还可以包括以下步骤:
S106:通过虚拟机管理服务的API,接收用户通过云管理平台发送的针对目标虚拟机的关机请求。
S107:通过虚拟机管理服务,向目标虚拟机发送ACPI关机指令,以关闭目标虚拟机。
在本发明实施例中,当用户不需要使用云应用程序时,可以通过云管理平台选择关闭目标虚拟机。相应的,虚拟机管理服务可以接收到关机请求,进而,向目标虚拟机发送ACPI关机指令。目标虚拟机可以响应该ACPI关机指令,以关机。例如,虚拟机管理服务可以向目标虚拟机中注入ACPI关机事件,当监听到该ACPI关机事件时,目标虚拟机则可以关机。
一种实现方式中,在关闭目标虚拟机后,当用户需要再次运用目标云应用程序时,可以再次通过云管理平台向电子设备发送针对目标虚拟机的启动请求。
基于本发明实施例提供的云应用程序运行方法,可以使用现有的Libvirt、Openstack云计算框架,并不需要对现有的云计算框架进行较大的修改,也就能够利用现有云计算框架快速实现。
参见图5,图5为本发明实施例提供的一种运行云应用程序的架构的示意。图5中,CPU、GPU(Graphics Processing Unit,图形处理器)和网卡分别表示宿主机的物理CPU、物理GPU和物理网卡。
用户可以通过云管理平台(即Openstack),向宿主机中的虚拟机管理服务(即Libvirt)发送虚拟机创建请求。虚拟机创建请求中携带有虚拟机配置信息。
虚拟机管理服务可以基于安卓系统对应的虚拟机镜像和虚拟机配置信息,在宿主机中创建安卓虚拟机(即,Android VM)。
用户可以通过云管理平台,向宿主机中的虚拟机管理服务发送虚拟机启动请求。在接收到虚拟机启动请求时,虚拟机管理服务开启虚拟机启动进程(即Qemu-kvm对应的进程),以启动安卓虚拟机。进而,可以在安卓虚拟机中运行云应用程序(即App),运行的云应用程序为基于安卓系统的应用程序。
基于相同的发明构思,本发明实施例还提供了一种云应用程序运行装置,参见图6,图6为本发明实施例提供的一种云应用程序运行装置的结构图,所述装置包括:
虚拟机创建请求接收模块601,用于接收虚拟机创建请求;其中,所述虚拟机创建请求中携带有虚拟机配置信息;
虚拟机创建模块602,用于基于预设的虚拟机镜像和所述虚拟机配置信息,在宿主机中创建目标虚拟机;其中,所述目标虚拟机具有所述虚拟机配置信息所表示的虚拟机配置;
云应用程序运行模块603,用于在所述目标虚拟机中运行目标云应用程序。
可选的,所述虚拟机创建请求接收模块601,具体用于通过虚拟机管理服务的应用程序接口API,接收用户通过云管理平台发送的虚拟机创建请求;
所述虚拟机创建模块602,具体用于通过所述虚拟机管理服务,基于预设的虚拟机镜像和所述虚拟机配置信息,在宿主机中创建目标虚拟机。
可选的,所述装置还包括:
启动请求接收模块,用于在所述目标虚拟机中运行目标云应用程序之前,通过所述虚拟机管理服务的API,接收用户通过所述云管理平台发送的针对所述目标虚拟机的启动请求;
虚拟机启动模块,用于通过所述虚拟机管理服务开启虚拟机启动进程,以通过所述虚拟机启动进程启动所述目标虚拟机。
可选的,所述装置还包括:
关机请求获取模块,用于在所述通过所述虚拟机管理服务开启虚拟机启动进程,以通过所述虚拟机启动进程启动所述目标虚拟机之后,通过所述虚拟机管理服务的API,接收用户通过所述云管理平台发送的针对所述目标虚拟机的关机请求;
虚拟机关闭模块,用于通过所述虚拟机管理服务,向所述目标虚拟机发送高级配置和电源管理接口ACPI关机指令,以关闭所述目标虚拟机。
可选的,所述虚拟机配置信息包括:CPU的频率、内存的大小、硬盘的大小,以及网卡、显卡、声卡和输入设备的性能参数。
本发明实施例还提供了一种电子设备,如图7所示,包括处理器701、通信接口702、存储器703和通信总线704,其中,处理器701,通信接口702,存储器703通过通信总线704完成相互间的通信,
存储器703,用于存放计算机程序;
处理器701,用于执行存储器703上所存放的程序时,实现如下步骤:
接收虚拟机创建请求;其中,所述虚拟机创建请求中携带有虚拟机配置信息;
基于预设的虚拟机镜像和所述虚拟机配置信息,在宿主机中创建目标虚拟机;其中,所述目标虚拟机具有所述虚拟机配置信息所表示的虚拟机配置;
在所述目标虚拟机中运行目标云应用程序。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一云应用程序运行方法的步骤。
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一云应用程序运行方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、电子设备、计算可读存储介质以及计算机程序产品实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (12)
1.一种云应用程序运行方法,其特征在于,所述方法包括:
接收虚拟机创建请求;其中,所述虚拟机创建请求中携带有虚拟机配置信息;
基于预设的虚拟机镜像和所述虚拟机配置信息,在宿主机中创建目标虚拟机;其中,所述目标虚拟机具有所述虚拟机配置信息所表示的虚拟机配置;
在所述目标虚拟机中运行目标云应用程序。
2.根据权利要求1所述的方法,其特征在于,所述接收虚拟机创建请求,包括:
通过虚拟机管理服务的应用程序接口API,接收用户通过云管理平台发送的虚拟机创建请求;
所述基于预设的虚拟机镜像和所述虚拟机配置信息,在宿主机中创建目标虚拟机,包括:
通过所述虚拟机管理服务,基于预设的虚拟机镜像和所述虚拟机配置信息,在宿主机中创建目标虚拟机。
3.根据权利要求2所述的方法,其特征在于,在所述目标虚拟机中运行目标云应用程序之前,所述方法还包括:
通过所述虚拟机管理服务的API,接收用户通过所述云管理平台发送的针对所述目标虚拟机的启动请求;
通过所述虚拟机管理服务开启虚拟机启动进程,以通过所述虚拟机启动进程启动所述目标虚拟机。
4.根据权利要求3所述的方法,其特征在于,在所述通过所述虚拟机管理服务开启虚拟机启动进程,以通过所述虚拟机启动进程启动所述目标虚拟机之后,所述方法还包括:
通过所述虚拟机管理服务的API,接收用户通过所述云管理平台发送的针对所述目标虚拟机的关机请求;
通过所述虚拟机管理服务,向所述目标虚拟机发送高级配置和电源管理接口ACPI关机指令,以关闭所述目标虚拟机。
5.根据权利要求1所述的方法,其特征在于,所述虚拟机配置信息包括:CPU的频率、内存的大小、硬盘的大小,以及网卡、显卡、声卡和输入设备的性能参数。
6.一种云应用程序运行装置,其特征在于,所述装置包括:
虚拟机创建请求接收模块,用于接收虚拟机创建请求;其中,所述虚拟机创建请求中携带有虚拟机配置信息;
虚拟机创建模块,用于基于预设的虚拟机镜像和所述虚拟机配置信息,在宿主机中创建目标虚拟机;其中,所述目标虚拟机具有所述虚拟机配置信息所表示的虚拟机配置;
云应用程序运行模块,用于在所述目标虚拟机中运行目标云应用程序。
7.根据权利要求6所述的装置,其特征在于,所述虚拟机创建请求接收模块,具体用于通过虚拟机管理服务的应用程序接口API,接收用户通过云管理平台发送的虚拟机创建请求;
所述虚拟机创建模块,具体用于通过所述虚拟机管理服务,基于预设的虚拟机镜像和所述虚拟机配置信息,在宿主机中创建目标虚拟机。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:
启动请求接收模块,用于在所述目标虚拟机中运行目标云应用程序之前,通过所述虚拟机管理服务的API,接收用户通过所述云管理平台发送的针对所述目标虚拟机的启动请求;
虚拟机启动模块,用于通过所述虚拟机管理服务开启虚拟机启动进程,以通过所述虚拟机启动进程启动所述目标虚拟机。
9.根据权利要求8所述的装置,其特征在于,所述装置还包括:
关机请求获取模块,用于在所述通过所述虚拟机管理服务开启虚拟机启动进程,以通过所述虚拟机启动进程启动所述目标虚拟机之后,通过所述虚拟机管理服务的API,接收用户通过所述云管理平台发送的针对所述目标虚拟机的关机请求;
虚拟机关闭模块,用于通过所述虚拟机管理服务,向所述目标虚拟机发送高级配置和电源管理接口ACPI关机指令,以关闭所述目标虚拟机。
10.根据权利要求6所述的装置,其特征在于,所述虚拟机配置信息包括:CPU的频率、内存的大小、硬盘的大小,以及网卡、显卡、声卡和输入设备的性能参数。
11.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-5任一所述的方法步骤。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-5任一所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111440802.0A CN114371908A (zh) | 2021-11-30 | 2021-11-30 | 一种云应用程序运行方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111440802.0A CN114371908A (zh) | 2021-11-30 | 2021-11-30 | 一种云应用程序运行方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114371908A true CN114371908A (zh) | 2022-04-19 |
Family
ID=81140555
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111440802.0A Pending CN114371908A (zh) | 2021-11-30 | 2021-11-30 | 一种云应用程序运行方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114371908A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114840267A (zh) * | 2022-04-20 | 2022-08-02 | 北京金山云网络技术有限公司 | 云应用程序运行方法、装置、电子设备及可读存储介质 |
CN115499433A (zh) * | 2022-07-29 | 2022-12-20 | 天翼云科技有限公司 | 一种容器运行方法及装置 |
-
2021
- 2021-11-30 CN CN202111440802.0A patent/CN114371908A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114840267A (zh) * | 2022-04-20 | 2022-08-02 | 北京金山云网络技术有限公司 | 云应用程序运行方法、装置、电子设备及可读存储介质 |
CN115499433A (zh) * | 2022-07-29 | 2022-12-20 | 天翼云科技有限公司 | 一种容器运行方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108475217B (zh) | 用于审计虚拟机的系统及方法 | |
US20180232225A1 (en) | Applying update to snapshots of virtual machine | |
CN107534571B (zh) | 用于管理虚拟网络功能的方法、系统和计算机可读介质 | |
US9483246B2 (en) | Automated modular and secure boot firmware update | |
US20180039507A1 (en) | System and method for management of a virtual machine environment | |
CN101276284B (zh) | 用于提高平台网络引导效率的系统和方法 | |
KR102324336B1 (ko) | 사용자 장치 및 그것에 대한 무결성 검증 방법 | |
US9207989B2 (en) | System and method for providing virtual device | |
US8793688B1 (en) | Systems and methods for double hulled virtualization operations | |
US10185548B2 (en) | Configuring dependent services associated with a software package on a host system | |
US9454778B2 (en) | Automating capacity upgrade on demand | |
JP7418093B2 (ja) | 初期プログラムロード機構を用いたセキュア・ゲストの起動 | |
CN114371908A (zh) | 一种云应用程序运行方法和装置 | |
EP3637252A1 (en) | Virtual machine deployment method and omm virtual machine | |
US10353727B2 (en) | Extending trusted hypervisor functions with existing device drivers | |
EP3701411A1 (en) | Software packages policies management in a securela booted enclave | |
CN111078367A (zh) | 一种请求处理方法、装置、电子设备和存储介质 | |
CN113544679A (zh) | 安全操作系统映像的增量解密和完整性验证 | |
TWI772747B (zh) | 用於將中斷及例外注入安全虛擬機器之電腦實施方法、電腦系統及電腦程式產品 | |
US11907743B2 (en) | System and method for relocating customer virtual machine instances in a multi-tenant cloud service | |
CN111083166A (zh) | 云数据库设置白名单的方法、装置及计算机存储介质 | |
US20230214245A1 (en) | Online Migration Method and System for Bare Metal Server | |
US10698703B2 (en) | Mobile application management by run-time insertion of a substitute application class loader into a mobile application process | |
US9292318B2 (en) | Initiating software applications requiring different processor architectures in respective isolated execution environment of an operating system | |
US20230239317A1 (en) | Identifying and Mitigating Security Vulnerabilities in Multi-Layer Infrastructure Stacks |
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 |