CN113900765A - 云应用启动方法、设备、终端及计算机可读存储介质 - Google Patents
云应用启动方法、设备、终端及计算机可读存储介质 Download PDFInfo
- Publication number
- CN113900765A CN113900765A CN202010568326.XA CN202010568326A CN113900765A CN 113900765 A CN113900765 A CN 113900765A CN 202010568326 A CN202010568326 A CN 202010568326A CN 113900765 A CN113900765 A CN 113900765A
- Authority
- CN
- China
- Prior art keywords
- application
- virtual machine
- image file
- login request
- cloud
- 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/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- 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/45504—Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
-
- 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/4557—Distribution of virtual machine instances; Migration and load balancing
-
- 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
Abstract
本发明实施例公开一种云应用启动方法、设备、终端以及计算机可读存储介质,通过接收客户端发送的应用登录请求,为应用登录请求分配虚拟机;将应用登录请求对应的应用差分镜像文件挂载到虚拟机;通过虚拟机启动应用登录请求对应的应用;使得虚拟机与应用的差分镜像文件仅在接收应用登录请求时进行绑定,避免了应用与虚拟机进行强绑定导致的占用大量磁盘空间问题;在某些实施过程中,为应用登录请求分配虚拟机,并将应用差分镜像文件挂载到该分配的虚拟机上,从而通过该虚拟机执行该应用,而不是将虚拟机与应用进行强绑定,避免了当虚拟机发生异常时,虚拟机上强绑定的应用无法使用的问题。
Description
技术领域
本发明实施例涉及但不限于虚拟技术领域,具体而言,涉及但不限于云应用启动方法、设备、终端及计算机可读存储介质。
背景技术
随着信息技术的发展,基于系统虚拟化模块的桌面虚拟化技术、服务器虚拟化技术、应用虚拟化技术得到了长足的发展,虚拟化技术已经应用到了各行各业,云计算的概念更是深入人心,例如KVM(Kernel-based Virtual Machine,开源虚拟机)。
同时随着信息技术的发展,应用的增长,带来终端越来越快的升级换代需求,同时造成终端更换的成本的提升;与此同时,随着业务快速迭代,如应用的快速升级等造成与终端对接适配工作量巨大的矛盾;因此云终端,例如云化机顶盒(VSTB:Virtual Set TopBox,是指虚拟化的数字视频变换盒)等应运而生,云终端,例如云化机顶盒对设备进行虚拟化,业务进行云化,UI/APP业务运行在云端上,以视频流形式下云化机顶盒对应的物理机顶盒,物理机顶盒进行转发遥控器指令、UI展示、媒体播放;通过把终端上耗费资源的业务放在云端进行虚拟化处理,可直接降低终端设备硬件成本,有效延长终端生命周期。
而相关技术中,各种业务、应用直接在云端部署,云端应用与虚拟机强绑定,导致占用大量的磁盘空间,以及当虚拟机发生异常时,虚拟机强绑定的应用无法使用,影响用户体验。
发明内容
本发明实施例提供的云应用启动方法、设备、终端及计算机可读存储介质,主要解决的技术问题是相关技术中,应用与虚拟机强绑定,导致占用大量的磁盘空间,以及当虚拟机发生异常时,虚拟机强绑定的应用无法使用的问题。
为解决上述技术问题,本发明实施例提供一种云应用启动方法,包括:接收客户端发送的应用登录请求,为所述应用登录请求分配虚拟机;将所述应用登录请求对应的应用差分镜像文件挂载到所述虚拟机;通过所述虚拟机启动所述应用登录请求对应的应用。
本发明实施例提供一种云应用启动方法,包括:发送应用登录请求,并与为所述应用登录请求分配的虚拟机建立连接;通过所述虚拟机启动所述应用登录请求对应的应用。
本发明实施例还提供一种设备,所述设备包括第一处理器、第一存储器及第一通信总线;所述第一通信总线用于实现第一处理器和第一存储器之间的连接通信;所述第一处理器用于执行第一存储器中存储的一个或者多个计算机程序,以实现如上所述的由云化管理端执行的云应用启动方法的步骤。
本发明实施例还提供一种终端,所述终端包括第二处理器、第二存储器及第二通信总线;所述第二通信总线用于实现第二处理器和第二存储器之间的连接通信;所述第二处理器用于执行第二存储器中存储的一个或者多个计算机程序,以实现如上所述的由终端执行的云应用启动方法的步骤
本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质存储有一个或者多个程序,一个或者多个程序可被一个或者多个处理器执行,以实现如上的由设备执行的云应用启动方法和/或由终端执行的云应用启动方法的步骤。
根据本发明实施例提供的云应用启动方法、设备、终端及计算机可读存储介质,通过接收客户端发送的应用登录请求,为应用登录请求分配虚拟机;将应用登录请求对应的应用差分镜像文件挂载到虚拟机;通过虚拟机启动应用登录请求对应的应用;使得虚拟机与应用的差分镜像文件仅在接收应用登录请求时进行绑定,避免了应用与虚拟机强绑定导致占用大量磁盘空间的问题;在某些实施过程中,为应用登录请求分配虚拟机,并将应用差分镜像文件挂载到该分配的虚拟机上,从而通过该虚拟机执行该应用,而不是将虚拟机与应用进行强绑定,避免了当虚拟机发生异常时,虚拟机上强绑定的应用无法使用的问题。
本发明其他特征和相应的有益效果在说明书的后面部分进行阐述说明,且应当理解,至少部分有益效果从本发明说明书中的记载变的显而易见。
附图说明
图1为本发明实施例一的一种云应用启动方法基本流程示意图;
图2为本发明实施例一的一种创建应用镜像文件基本流程示意图;
图3为本发明实施例一的一种退出应用、卸载虚机的基本流程示意图;
图4为本发明实施例一的另一种云应用启动方法基本流程示意图;
图5为本发明实施例二的再一种云应用启动方法基本流程示意图;
图6为本发明实施例三的一种云化管理端的基本结构示意图;
图7为本发明实施例三的一种终端的基本结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,下面通过具体实施方式结合附图对本发明实施例作进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
实施例一:
为了解决相关技术中,各种应用直接在云端部署,需要在每个虚拟机安装部署一遍相同的应用,这样不仅占用大量的磁盘空间,导致虚拟机的镜像越来越大,同时,云端应用安装升级更新等过程,需要将每个虚拟机的应用进行安装升级更新,导致云端应用安装升级更新将会变的极其漫长、效率低下、并且极易出错;同时将应用和虚拟机进行了强绑定,导致终端用户只能进行绑定虚拟机登录,进而导致某个虚拟机异常时,无法使用与虚拟机绑定的应用,不能使用对应服务,影响终端用户的体验。也即,相关技术中,应用与虚拟机绑定,导致占用大量的磁盘空间,以及当虚拟机发生异常时,虚拟机对应的应用无法使用的问题;请参见图1,图1为本实施例提供的一种云应用启动方法的基本流程示意图,该云应用启动方法包括:
S101、接收客户端发送的应用登录请求,为应用登录请求分配虚拟机;
在一些实施例中,设备接收客户端发送的应用登录请求之前还包括:创建应用镜像文件,其中,设备包括但不限于:云化管理端;如图2所示,图2是创建应用镜像文件基本流程示意图,该创建应用镜像文件包括:
S201、创建镜像块文件作为应用镜像文件;在一些实施例中,管理员通过操作门户将应用的安装包上传到虚拟机内的指导目录,并创建新的镜像块文件作为应用镜像文件,应用镜像文件的大小不作限制,能满足安装应用即可,在一些实施例中,应用镜像文件的大小可以为4G,应用镜像文件的格式不作限制,包括但不限于以下任一格式:qcow2、qcow、raw、vmdk,例如,创建一个虚拟大小为4G qcow2的镜像格式文件作为应用镜像文件;其中,创建的新的镜像块文件为空的镜像块文件,并对创建的镜像块文件也即应用镜像文件进行命名并将应用镜像文件进行格式化,应用镜像文件的命名规则包括但不限于以应用名称和版本号命名,例如appname_v1.qcow2、appname_v1.qcow,其中appname_v1表示命名,qcow2和qcow分别表示应用镜像文件不同的格式;需要注意的是,具体的命名方式本实施例并不作限定,只要能表示应用和应用镜像文件的对应关系即可。
S202、将应用安装到应用镜像文件;
在一些实施例中,将应用安装到应用镜像文件包括:启动虚拟机,将应用安装包目录和应用镜像文件挂载到虚拟机内的指导目录,调用虚拟机内部应用安装指令,将应用安装到创建的应用镜像文件,需要主要的是,通过虚拟机将应用安装到应用镜像文件的方法不做限制,如调用命令进行静默安装等;安装完成后,将应用镜像文件作为母盘保存到相应目录,此时,服务器内的所有虚拟机对该作为母盘的应用镜像文件只能进行读取操作,不能进行写入操作。
S203、根据应用镜像文件差分得到应用差分镜像,应用差分镜像用于保存应用镜像文件运行应用时的临时文件;
在一些实施例中,在对应的虚拟机目录下,通过差分命令,将作为母盘的应用镜像文件差分出多个应用差分镜像文件;例如,将作为母盘的应用镜像文件appname_v1.qcow2通过差分技术,差分出两个应用差分镜像文件Aappname_v1.qcow2、Bappname_v1.qcow2;需要注意的是,根据应用镜像文件差分得到应用差分镜像文件包括:获取服务器内虚拟机的数量;根据应用镜像文件差分得到应用差分镜像文件,应用差分镜像文件的数量与服务器内虚拟机的数量对应;具体的,根据应用镜像文件差分得到的应用差分镜像文件的数量与服务器的虚拟机的数量对应,例如,服务器内的虚拟机的数量为N时,N为大于或等于2的整数,根据应用镜像文件差分得到的应用差分镜像文件的数量也为N,其中应用差分镜像文件仅用于保存应用运行(也即应用镜像文件运行)时需要写入的相关临时文件,因此,各应用差分镜像文件的实际占用大小远远小于应用镜像文件的大小,可选的,应用差分镜像文件的大小为几M即可,需要理解的是,应用差分镜像文件的命名不作限制;需要理解的是,当应用需要进行升级时,则对母盘引用镜像文件重新进行制作,并重新差分得到应用差分镜像文件即可,而不用对每个虚拟机内的应用进行卸载、升级操作,从而实现了应用快速升级。
在一些实施例中,云化管理端接收客户端发送的应用登录请求,为应用登录请求分配虚拟机;具体的,客户端用户点击某个应用时,则发送该应用的登录请求到云化管理端,云化管理端解析收到的应用登录请求,得到该应用登录请求对应的应用名和版本号,通过负载均衡,负载到该客户端对应的服务器上的某个虚拟机,将该虚拟机作为该应用登录请求分配的虚拟机;其中通过负载均衡,负载到该客户端对应的服务器上的某个虚拟机包括:分配服务器中一个当前未被使用,处于空闲状态的虚拟机分配给该应用登录请求,并将该虚拟机的状态改为非空闲状态。
S102、将应用登录请求对应的应用差分镜像挂载到虚拟机;
在一些实施例中,云化管理端获取一个当前未被使用的应用登录请求对应的应用差分镜像文件,具体的,云化管理端根据解析得到的应用名和版本号查找应用登录请求对应的应用差分镜像文件,并获取其中一个当前未被使用的应用差分镜像文件;例如,云化管理端根据解析得到的应用名和版本号查找到N个应用登录请求对应的应用差分镜像文件,其中存在正在被使用的应用差分镜像文件,和当前未被使用的应用差分镜像文件,将其中当前未被使用的应用差分镜像文件中的一个分配给当前应用登录请求,并将该应用差分镜像文件的状态改为使用状态。
在一些实施例中,云化管理端将获取到的应用差分镜像文件挂载到当前未被使用的虚拟机,具体的,云化管理端将获取到的应用差分镜像文件挂载到获取到的服务器中的虚拟机内,可选的,当虚拟机判断到应用差分镜像文件挂载成功时可以返回挂载成功的提示到云化管理端,使得云化管理端知道挂载成功后可以继续执行下一步,也可以由云化管理端主动发出消息来判断是否成功将应用差分镜像文件挂载到了虚拟机内;当挂载失败时,发出用户登录失败提示,指示客户端重新发出应用登录请求指令。
S103、通过虚拟机启动应用登录请求对应的应用。
在一些实施例中,通过虚拟机启动应用登录请求对应的应用之前包括:将虚拟机与客户端连接;具体的,当应用登录请求对应的应用差分镜像文件成功挂载到虚拟机内后,云化管理端将服务器的地址和对应的虚拟机发送给客户端,使得客户端可以根据服务器地址和对应的虚拟机与虚拟机进行建链,当客户端与虚拟机建链成功后,传递应用启动指令到虚拟机,虚拟机根据应用启动指令启动应用登录请求对应的应用。
在一些实施例中,通过虚拟机启动应用登录请求对应的应用包括:通过虚拟机读取应用镜像文件,运行应用,并将应用产生的临时文件保存到应用差分镜像文件,具体的,虚拟机根据应用差分镜像文件读取应用差分镜像文件的母盘应用镜像文件,以此来运行应用登录请求对应的应用,并将运行应用时的产生的临时文件保存到挂载到虚拟机的应用差分镜像文件内。
在一些实施例中,通过虚拟机启动应用登录请求对应的应用之后还包括:将应用运行的码流传到客户端。
在一些实施例中,应用使用完毕时,如图3所示,图3所示为退出应用、卸载虚机流程基本流程示意图,该退出应用、卸载虚机包括:
S301、客户端发送退出应用指令到虚拟机;
需要理解的是,此时,客户端已经与虚拟机建链成功,因此,当客户端需要退出应用时,可以直接将退出应用指令发送到虚拟机;一些实施例中,客户端也可以将退出应用指令发送到云化管理端,云化管理端将客户端发出的退出应用指令发送到云化管理端。
S302、当虚拟机根据退出应用指令,停止应用运行时,客户端与虚拟机断开链接;
在一些实施例中,虚拟机接收到退出应用指令后,进行应用的退出,也即虚拟机停止读取应用镜像文件,并返回应用退出成功结果给客户端,以使客户端了解到应用退出成功,客户端主动与虚拟机断开链接;需要理解的是,在一些实施例中,虚拟机返回应用退出成功结果给客户端时,可以主动与客户端断开链接。
S303、服务器将虚拟机挂载的应用差分镜像进行卸载;
在一些实施例中,当服务器检测到虚拟机与客户端的链接断开时,服务器将虚拟机挂载的应用差分镜像文件进行卸载,并将该应用差分镜像文件的状态修改为未使用状态,同时将虚拟机的状态修改为空闲状态。
本发明实施例针对客户端还提供另一种云应用启动方法,如图4所示,图4所示为另一种云应用启动方法的基本流程示意图,该云应用启动方法包括:
S401、发送应用登录请求,并与为应用登录请求分配的虚拟机建立连接;
在一些实施例中,客户端发送应用登录请求到云化管理端,云化管理端接收客户端发送的应用登录请求,为应用登录请求分配虚拟机;具体的,客户端用户点击某个应用时,则发送该应用的登录请求到云化管理端,云化管理端解析收到的应用登录请求,得到该应用登录请求对应的应用名和版本号,通过负载均衡,负载到该客户端对应的服务器上的某个虚拟机,将该虚拟机作为该应用登录请求分配的虚拟机;其中通过负载均衡,负载到该客户端对应的服务器上的某个虚拟机包括:分配服务器中一个当前未被使用,处于空闲状态的虚拟机分配给该应用登录请求,并将该虚拟机的状态改为非空闲状态。
需要理解的是,云化管理端获取一个当前未被使用的应用登录请求对应的应用差分镜像文件,具体的,云化管理端根据解析得到的应用名和版本号查找应用登录请求对应的应用差分镜像文件,并获取其中一个当前未被使用的应用差分镜像文件;例如,云化管理端根据解析得到的应用名和版本号查找到N个应用登录请求对应的应用差分镜像文件,其中存在正在被使用的应用差分镜像文件,和当前未被使用的应用差分镜像文件,将其中当前未被使用的应用差分镜像文件中的一个分配给当前应用登录请求,并将该应用差分镜像文件的状态改为使用状态;在一些实施例中,云化管理端将获取到的应用差分镜像文件挂载到当前未被使用的虚拟机;
在一些实施例中,当应用登录请求对应的应用差分镜像文件成功挂载到虚拟机内后,云化管理端将服务器的地址和对应的虚拟机发送给客户端,使得客户端可以根据服务器地址和对应的虚拟机与虚拟机进行建链,当客户端与虚拟机建链成功后,传递应用启动指令到虚拟机,虚拟机根据应用启动指令启动应用登录请求对应的应用。
S402、通过虚拟机启动应用登录请求对应的应用。
在一些实施例中,通过虚拟机启动应用登录请求对应的应用包括:通过虚拟机读取应用镜像文件,运行应用,并将应用产生的临时文件保存到应用差分镜像文件,具体的,虚拟机根据应用差分镜像文件读取应用差分镜像文件的母盘应用镜像文件,以此来运行应用登录请求对应的应用,并将运行应用时的产生的临时文件保存到挂载到虚拟机的应用差分镜像文件内,并将应用运行的码流传到客户端。
本发明实施例提供的云应用启动方法通过接收客户端发送的应用登录请求,为应用登录请求分配虚拟机;将应用登录请求对应的应用差分镜像文件挂载到虚拟机;通过虚拟机启动应用登录请求对应的应用;使得虚拟机与应用的差分镜像文件仅在接收应用登录请求时进行绑定,避免了应用与虚拟机进行强绑定导致的占用大量磁盘空间问题;在某些实施过程中,为应用登录请求分配虚拟机,并将应用差分镜像文件挂载到该分配的虚拟机上,从而通过该虚拟机执行该应用,而不是将虚拟机与应用进行强绑定,避免了当虚拟机发生异常时,虚拟机上强绑定的应用无法使用的问题;在一些实施例中,通过将应用安装到应用镜像文件作为母盘文件,并通过应用差分镜像文件来保存运行应用时产生的临时文件,避免了在各虚拟机上安装部署一遍相同的应用,导致应用安装、升级、更新等过程极其漫长、效率低下且容易出错的问题。
实施例二:
为了更好的理解本发明,本实施例提供一种更为具体的示例对云应用启动方法进行说明,如图5所示,图5是再一种云应用启动方法的基本流程示意图,该云应用启动方法包括:
S501、客户端发送应用登录请求到云化管理端;
在一些实施例中,用户通过客户端登录到应用大厅后,点击某个应用,发出应用登录请求到云化管理端,其中应用登录请求携带了应用名称及版本号,需要理解的是,应用登录请求中携带的信息包括但不限于应用名称及版本号吗,应用登录请求中携带的信息可以用来表征对应的应用即可。
S502、云化管理端为应用登录请求分配虚拟机和应用差分镜像文件;
在一些实施例中,云化管理端为应用登录请求分配虚拟机和应用差分镜像文件之前还包括:创建应用镜像文件,具体的,管理员通过操作门户将应用的安装包上传到指导目录,并创建一个虚拟大小如4G qcow2的镜像格式文件也即镜像块文件作为应用镜像文件,并根据应用的名称与版本号对该应用镜像文件进行命名,例如appname_v1.qcow2,并对其进行格式化操作;启动虚拟机,将应用安装包目录和应用镜像文件挂载到虚拟机上,调用虚拟机内部应用安装指令,通过静默安装的方式将应用安装到创建的应用镜像文件,将应用镜像文件作为母盘保存到相应目录,此时,服务器内的所有虚拟机对该作为母盘的应用镜像文件只能进行读取操作,不能进行写入操作;
在一些实施例中,在对应的虚拟机目录下,通过差分命令,将作为母盘的应用镜像文件差分出多个应用差分镜像文件;需要注意的是,根据应用镜像文件差分得到应用差分镜像文件包括:获取服务器内虚拟机的数量;根据应用镜像文件差分得到虚拟机的数量的应用差分镜像文件;具体的,根据应用镜像文件差分得到的应用差分镜像文件的数量与服务器的虚拟机的数量对应,具体的,服务器内的虚拟机的数量为N时,N为大于或等于2的整数,根据应用镜像文件差分得到的应用差分镜像文件的数量也为N,其中应用差分镜像文件仅用于保存应用运行(也即应用镜像文件运行)时需要写入的相关临时文件,因此,各应用差分镜像文件的实际占用大小远远小于应用镜像文件的大小,可选的,应用差分镜像文件的大小为几M即可;需要理解的是,各应用差分镜像文件分别对应一个虚拟机,具体的,可以应用差分镜像文件的命名方式为对应虚拟机名+应用名称+版本名称,例如,应用镜像文件的名称为appname_v1,该应用差分镜像文件对应的虚拟机的名称为A,则该应用差分镜像文件的名称为A_appname_v1;
需要理解的是,云化管理端解析收到的应用登录请求,得到该应用登录请求对应的应用名和版本号,通过负载均衡,负载到该客户端对应的服务器上的某个虚拟机,将该虚拟机作为该应用登录请求分配的虚拟机;其中通过负载均衡,负载到该客户端对应的服务器上的某个虚拟机包括:分配服务器中一个当前未被使用,处于空闲状态的虚拟机分配给该应用登录请求,并将该虚拟机的状态改为非空闲状态;并将该虚拟机对应的应用差分镜像文件挂载到该虚拟机上,例如,云化管理端为该应用登录请求分配的虚拟机为A,则将A虚拟机对应的应用差分镜像文件A_appname_v1挂载到虚拟机A上。
S503、客户端接收云化管理端发送的服务器地址与对应的虚拟机,并与对应的虚拟机建链;
在一些实施例中,通过虚拟机启动应用登录请求对应的应用之前包括:将虚拟机与客户端连接;具体的,应用差分镜像文件成功挂载到虚拟机内后,云化管理端将服务器的地址和对应的虚拟机发送给客户端,使得客户端可以根据服务器地址和对应的虚拟机与虚拟机进行建链;
S504、客户端传递应用启动指令到虚拟机,接收虚拟机传回的应用运行码流;
在一些实施例中,当客户端与虚拟机建链成功后,传递应用启动指令到虚拟机,虚拟机根据应用启动指令启动应用登录请求对应的应用;需要理解的是,通过虚拟机启动应用登录请求对应的应用包括:通过虚拟机读取应用镜像文件,运行应用,并将应用产生的临时文件保存到应用差分镜像文件,具体的,虚拟机根据应用差分镜像文件读取应用差分镜像文件的母盘应用镜像文件,以此来运行应用登录请求对应的应用,并将运行应用时的产生的临时文件保存到挂载到虚拟机的应用差分镜像文件内;在一些实施例中,通过虚拟机启动应用登录请求对应的应用之后还包括:将应用运行的码流传到客户端。
S505、客户端发送退出应用指令到虚拟机;
需要理解的是,此时,客户端已经与虚拟机建链成功,因此,当客户端需要退出应用时,可以直接将退出应用指令发送到虚拟机;一些实施例中,客户端也可以将退出应用指令发送到云化管理端,云化管理端将客户端发出的退出应用指令发送到云化管理端。
S506、当虚拟机根据退出应用指令,停止应用运行时,客户端与虚拟机断开链接;
在一些实施例中,虚拟机接收到退出应用指令后,进行应用的退出,也即虚拟机停止读取应用镜像文件,并返回应用退出成功结果给客户端,以使客户端了解到应用退出成功,客户端主动与虚拟机断开链接;需要理解的是,在一些实施例中,虚拟机返回应用退出成功结果给客户端时,可以主动与客户端断开链接。
S507、服务器将虚拟机挂载的应用差分镜像进行卸载;
在一些实施例中,当服务器检测到虚拟机与客户端的链接断开时,服务器将虚拟机挂载的应用差分镜像文件进行卸载,并将该应用差分镜像文件的状态修改为未使用状态,同时将虚拟机的状态修改为空闲状态。
本发明实施例提供的云应用启动方法通过接收客户端发送的应用登录请求,为应用登录请求分配虚拟机;将应用登录请求对应的应用差分镜像文件挂载到虚拟机;通过虚拟机启动应用登录请求对应的应用;使得虚拟机与应用的差分镜像文件仅在接收应用登录请求时进行绑定,避免了应用与虚拟机进行强绑定导致的占用大量磁盘空间问题;在某些实施过程中,为应用登录请求分配虚拟机,并将应用差分镜像文件挂载到该分配的虚拟机上,从而通过该虚拟机执行该应用,而不是将虚拟机与应用进行强绑定,避免了当虚拟机发生异常时,虚拟机上强绑定的应用无法使用的问题;在一些实施例中,通过将应用安装到应用镜像文件作为母盘文件,并通过应用差分镜像文件来保存运行应用时产生的临时文件,避免了在各虚拟机上安装部署一遍相同的应用,导致应用安装、升级、更新等过程极其漫长、效率低下且容易出错的问题。
实施例三:
本实施例还提供了一种设备,参见图6所示,其包括第一处理器601、第一存储器602及第一通信总线603,其中:
第一通信总线603用于实现第一处理器601和第一存储器602之间的连接通信;
第一处理器601用于执行第一存储器602中存储的一个或者多个计算机程序,以实现上述实施例一和实施例二中的由设备执行的云应用启动方法中的至少一个步骤。
本实施例还提供了一种终端,参见图7所示,其包括第二处理器701、第二存储器702及第二通信总线703,其中:
第二通信总线703用于实现第二处理器701和第二存储器702之间的连接通信;
第二处理器701用于执行第二存储器702中存储的一个或者多个计算机程序,以实现上述实施例一和实施例二中的由终端执行的云应用启动方法中的至少一个步骤。
本实施例还提供了一种计算机可读存储介质,该计算机可读存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、计算机程序模块或其他数据)的任何方法或技术中实施的易失性或非易失性、可移除或不可移除的介质。计算机可读存储介质包括但不限于RAM(Random Access Memory,随机存取存储器),ROM(Read-Only Memory,只读存储器),EEPROM(Electrically Erasable Programmable read only memory,带电可擦可编程只读存储器)、闪存或其他存储器技术、CD-ROM(Compact Disc Read-Only Memory,光盘只读存储器),数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。
本实施例中的计算机可读存储介质可用于存储一个或者多个计算机程序,其存储的一个或者多个计算机程序可被处理器执行,以实现上述实施例一和实施例二中的云应用启动方法的至少一个步骤。
可见,本领域的技术人员应该明白,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件(可以用计算装置可执行的计算机程序代码来实现)、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。
此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、计算机程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。所以,本发明不限制于任何特定的硬件和软件结合。
以上内容是结合具体的实施方式对本发明实施例所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
Claims (10)
1.一种云应用启动方法,包括:
接收客户端发送的应用登录请求,为所述应用登录请求分配虚拟机;
将所述应用登录请求对应的应用差分镜像文件挂载到所述虚拟机;
通过所述虚拟机启动所述应用登录请求对应的应用。
2.如权利要求1所述的云应用启动方法,其特征在于,所述接收客户端发送的应用登录请求之前还包括:
将所述应用安装到应用镜像文件;
根据所述应用镜像文件差分得到所述应用差分镜像文件,所述应用差分镜像文件用于保存所述应用镜像文件运行所述应用时的临时文件。
3.如权利要求2所述的云应用启动方法,其特征在于,所述根据所述应用镜像文件差分得到所述应用差分镜像文件包括:
获取服务器内虚拟机的数量;
根据所述应用镜像文件差分得到所述应用差分镜像文件,所述应用差分镜像文件的数量与所述服务器内虚拟机的数量对应。
4.如权利要求2-3任一项所述的云应用启动方法,其特征在于,为所述应用登录请求分配虚拟机包括:分配一个当前未被使用的虚拟机;
所述将所述应用登录请求对应的应用差分镜像文件挂载到所述虚拟机包括:
获取一个当前未被使用的所述应用登录请求对应的应用差分镜像文件,将获取到的所述应用差分镜像文件挂载到所述当前未被使用的虚拟机。
5.如权利要求4所述的云应用启动方法,其特征在于,所述通过所述虚拟机启动所述应用登录请求对应的应用之前包括:
将挂载了所述应用登录请求对应的应用差分镜像文件的虚拟机与所述客户端连接。
6.如权利要求5所述的云应用启动方法,其特征在于,所述通过所述虚拟机启动所述应用登录请求对应的应用包括:
通过所述虚拟机读取所述应用镜像文件,运行应用,并将所述应用产生的临时文件保存到所述应用差分镜像文件。
7.一种云应用启动方法,包括:
发送应用登录请求,并与为所述应用登录请求分配的虚拟机建立连接;
通过所述虚拟机启动所述应用登录请求对应的应用。
8.一种设备,所述设备包括第一处理器、第一存储器及第一通信总线;
所述第一通信总线用于实现第一处理器和第一存储器之间的连接通信;
所述第一处理器用于执行第一存储器中存储的一个或者多个计算机程序,以实现如权利要求1至6中任一项所述的云应用启动方法的步骤。
9.一种终端,所述终端包括第二处理器、第二存储器及第二通信总线;
所述第二通信总线用于实现第二处理器和第二存储器之间的连接通信;
所述第二处理器用于执行第二存储器中存储的一个或者多个计算机程序,以实现如权利要求7所述的云应用启动方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有一个或者多个计算机程序,所述一个或者多个计算机程序可被一个或者多个处理器执行,以实现如权利要求1至6中任一项所述的云应用启动方法和/或如权利要求7所述的云应用启动方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010568326.XA CN113900765A (zh) | 2020-06-19 | 2020-06-19 | 云应用启动方法、设备、终端及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010568326.XA CN113900765A (zh) | 2020-06-19 | 2020-06-19 | 云应用启动方法、设备、终端及计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113900765A true CN113900765A (zh) | 2022-01-07 |
Family
ID=79186051
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010568326.XA Pending CN113900765A (zh) | 2020-06-19 | 2020-06-19 | 云应用启动方法、设备、终端及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113900765A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116257277A (zh) * | 2023-05-12 | 2023-06-13 | 天津卓朗昆仑云软件技术有限公司 | 镜像文件的更新方法、装置及voi系统 |
-
2020
- 2020-06-19 CN CN202010568326.XA patent/CN113900765A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116257277A (zh) * | 2023-05-12 | 2023-06-13 | 天津卓朗昆仑云软件技术有限公司 | 镜像文件的更新方法、装置及voi系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3557410B1 (en) | Upgrade orchestrator | |
US7793288B2 (en) | Automatic resource management of a guest operating system using information in data set indicating minimum system requirement | |
US11243792B2 (en) | Image file conversion method and apparatus | |
US8607225B2 (en) | Managed upgrades of components in an integrated software and hardware system | |
US8997090B2 (en) | Installing an operating system in a host system | |
EP3317762A1 (en) | Methods and apparatus for software lifecycle management of a virtual computing environment | |
EP3557411A1 (en) | Upgradeable component detection and validation | |
CN107980119B (zh) | 一种服务器管理方法和服务器 | |
US20130227565A1 (en) | Apparatus and method for managing application for guest operating system | |
CN111464603B (zh) | 一种服务器扩容方法及扩容系统 | |
CN113900765A (zh) | 云应用启动方法、设备、终端及计算机可读存储介质 | |
CN107810475B (zh) | 用于虚拟计算环境的软件生命周期管理的方法和装置 | |
EP4006725A1 (en) | Virtual machine migration processing and strategy generation method, apparatus and device, and storage medium | |
CN113448609B (zh) | 一种容器的升级方法、装置、设备和存储介质 | |
EP4086756A1 (en) | Method and apparatus for processing virtual machine component | |
CN109933375B (zh) | 一种基于VxWorks653和NFS over FC的远程启动方法 | |
CN114168210A (zh) | 一种嵌入式设备部署方法及系统 | |
CN113204359A (zh) | 一种服务器在线升级方法及装置 | |
CN113722147A (zh) | 一种保持业务连接方法及相关设备 | |
CN113687915B (zh) | 容器运行方法、装置、设备及存储介质 | |
CN110968328A (zh) | 一种实现应用加载的方法、装置、计算机存储介质及终端 | |
CN113805952B (zh) | 外设虚拟化管理方法、服务器和系统 | |
US20230403324A1 (en) | Data sharing system, data sharing method and non-transitory computer-readable recording medium for data sharing program | |
CN111767072B (zh) | 客户端制作方法及装置 | |
CN117472278A (zh) | 基于vhost协议的分布式存储方法、设备和介质 |
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 |