CN105210326A - 云应用处理方法和应用部署方法及相关装置和系统 - Google Patents

云应用处理方法和应用部署方法及相关装置和系统 Download PDF

Info

Publication number
CN105210326A
CN105210326A CN201480000879.8A CN201480000879A CN105210326A CN 105210326 A CN105210326 A CN 105210326A CN 201480000879 A CN201480000879 A CN 201480000879A CN 105210326 A CN105210326 A CN 105210326A
Authority
CN
China
Prior art keywords
application
virtual machine
mentioned
resident
relation
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
Application number
CN201480000879.8A
Other languages
English (en)
Other versions
CN105210326B (zh
Inventor
朱洁
张毅
秦晋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of CN105210326A publication Critical patent/CN105210326A/zh
Application granted granted Critical
Publication of CN105210326B publication Critical patent/CN105210326B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • G06F9/5088Techniques for rebalancing the load in a distributed system involving task migration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/131Protocols for games, networked simulations or virtual reality
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/53Network services using third party service providers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/40Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)

Abstract

一种云应用处理方法和云应用部署方法及相关装置和云服务系统。一种云服务供应商服务器,可包括:确定单元,用于确定第一虚拟机的工作状态满足虚拟机新增条件;应急单元,用于根据确定单元的确定结果,根据所述第一虚拟机中运行的第一应用对应的应急策略确定与所述第一应用具有应急关系的第二应用,指示所述第二应用所驻留的第二虚拟机运行所述第二虚拟机中已部署的所述第一应用;创建单元,用于根据所述确定单元的确定结果,创建第三虚拟机并在所述第三虚拟机中部署和启动所述第一应用;停止单元,用于在所述第三虚拟机中启动所述第一应用之后,指示所述第二虚拟机停止运行所述第一应用。本发明实施例提供的方案有利于提高虚拟机资源的利用率。

Description

云应用处理方法和应用部署方法及相关装置和系统 技术领域
本发明涉及通信技术领域,具体一种涉及云应用处理方法和云应用部署方 法及相关装置和云服务系统。
广义的云计算服务可看成是一种服务的交付和消费模式。
云服务供应商 (CSP, Cloud Service Provider )将大量计算资源用网络连 接起来并进行统一的管理、分配和调度,构成一个巨大的计算资源池向云服务 消费者(CSC, Cloud Service Consumer )提供服务。 对 CSC而言, 云资源可无 限扩展, 具有按需索取、 按使用付费等高效灵活的特点。
其中, 平台级服务( PaaS, Platform as a Service )属于常见的广义云计算 服务模式。 PaaS将定制化研发的中间件平台(涵盖数据库和应用服务器等)作 为一种服务提供给用户。其中, PaaS的实质是将互联网的资源服务化为可编程 接口, 可为第三方开发者提供有商业价值的资源和服务平台。有了 PaaS平台的 支撑, 云计算的开发者就获得了大量的可编程元素, 这些可编程元素有具体的 业务逻辑, 这就为开发带来了极大的方便, 不但提高了开发效率, 还节约了开 发成本。
现有技术当中, 用户可以在 CSP服务器管理的虚拟机上部署应用, CSP服 务器(如 Amazon EC2 )将复制若干台一模一样的备用虚拟机 (已经安装相同 应用且处于等待运行状态)。 当正在运行的虚拟机上负载达到弹性策略设置的 阔值时, CSP服务器启动备用虚拟机来与当前正在运行的虚拟机一起承担相应 负载。 然而现有技术在部署应用时就预先直接申请好备用虚拟机资源,使得虚 拟机资源利用率较低。 发明内容
本发明实施例提供云应用处理方法和云应用部署方法及相关装置和云服 务系统, 以期提高虚拟机资源的利用率。
本发明的第一方面提供一种云服务供应商服务器, 可包括: 确定单元, 用于确定第一虚拟机的工作状态满足虚拟机新增条件; 应急单元, 用于根据确定单元的确定结果,根据所述第一虚拟机中运行的 第一应用对应的应急策略确定与所述第一应用具有应急关系的第二应用,指示 所述第二应用所驻留的第二虚拟机运行所述第二虚拟机中已部署的所述第一 应用;
创建单元, 用于根据所述确定单元的确定结果,创建第三虚拟机并在所述 第三虚拟机中部署和启动所述第一应用;
停止单元, 用于在所述第三虚拟机中启动所述第一应用之后,指示所述第 二虚拟机停止运行所述第一应用。
结合第一方面, 在第一方面的第一种可能的实施方式中,
所述云服务供应商服务器还包括: 接收单元, 用于在所述确定与所述第一 应用具有应急关系的第二应用之前, 接收应用部署请求, 其中, 所述应用部署 请求携带所述第一应用对应的应急策略, 其中, 所述第一应用对应的应急策略 描述了所述第一应用和所述第二应用具有应急关系。
结合第一方面的第一种可能的实施方式,在第一方面的第二种可能的实施 方式中, 所述应用部署请求还携带有驻留关系模板, 所述驻留关系模板描述的 所述第一应用和第三应用之间的驻留关系为所述第一应用驻留于所述第三应 用, 或者, 所述驻留关系模板描述的所述第一应用和第三应用之间的驻留关系 为所述第一应用和所述第三应用相互驻留;
所述云服务供应商服务器还包括:
部署单元,用于在所述指示所述第二应用所驻留的第二虚拟机运行所述第 二虚拟机中已部署的第一应用之前,在所述第二虚拟机中部署与所述第一应用 具有驻留关系的所述第三应用。
结合第一方面或第一方面的第一种可能的实施方式或第一方面的第二种 可能的实施方式, 在第一方面的第三种可能的实施方式中,
所述应急策略包括应急触发条件, 其中, 所述应急触发条件包括: 所述第 二虚拟机的空闲资源量,大于或等于在所述第二虚拟机中运行所述第一应用所 需的最小资源量; 其中,所述应急单元指示所述第二应用所驻留的第二虚拟机运行所述第二 虚拟机中已部署的所述第一应用具体包括:在根据所述第二虚拟机的运行状态 确定所述应急触发条件满足时,指示所述第二应用所驻留的第二虚拟机运行所 述第二虚拟机中已部署的所述第一应用。
结合第一方面或第一方面的第一种可能的实施方式或第一方面的第二种 可能的实施方式或第一方面的第三种可能的实施方式,在第一方面的第四种可 能的实施方式中,
所述应急单元在所述指示所述第二应用所驻留的第二虚拟机运行所述第 二虚拟机中已部署的所述第一应用之前,还用于,确定所述第二虚拟机具有足 够的空闲资源部署所述第一应用, 在所述第二虚拟机中部署所述第一应用。
本发明的第二方面提供一种云服务客户端, 可包括:
生成单元, 用于生成应用部署请求;
发送单元, 用于向云服务供应商 CSP服务器发送所述应用部署请求, 其中, 所述应用部署请求携带有第一应用对应的节点模版、第二应用对应 的节点模版,所述第一应用对应的节点模版中包含所述第一应用对应的应急策 略,所述第一应用对应的应急策略描述了所述第一应用和所述第二应用之间具 有应急关系。
结合第二方面, 在第二方面的第一种可能的实施方式中,
所述应用部署请求还携带有驻留关系模板,所述驻留关系模板描述的所述 第一应用和第三应用之间的驻留关系为所述第一应用驻留于所述第三应用,或 者,所述驻留关系模板描述的所述第一应用和第三应用之间的驻留关系为所述 第一应用和所述第三应用相互驻留。
本发明第三方面提供一种云服务供应商服务器, 可包括:
处理器和存储器,
其中, 所述处理器通过调用所述存储器中的代码, 以用于确定第一虚拟机 的工作状态满足虚拟机新增条件,根据所述第一虚拟机中运行的第一应用对应 的应急策略,确定与所述第一应用具有应急关系的第二应用,指示所述第二应 用所驻留的第二虚拟机运行所述第二虚拟机中已部署的所述第一应用;创建第 三虚拟机并在所述第三虚拟机中部署和启动所述第一应用;在所述第三虚拟机 中启动所述第一应用之后, 指示所述第二虚拟机停止运行所述第一应用。
结合第三方面, 在第三方面的第一种可能的实施方式中,
所述虚拟机新增条件包括如下条件的至少一种:
所述第一虚拟机的资源使用率超过第一阔值、所述第一虚拟机中运行的第 一应用的单位时间吞吐量超过了第二阔值和所述第一虚拟机中运行的第一应 用的响应延迟超过了第三阔值。
结合第三方面或第三方面的第一种可能的实施方式,在第三方面的第二种 可能的实施方式中,
所述处理器通过调用所述存储器中的代码,以还用于在所述确定与所述第 一应用具有应急关系的第二应用之前, 接收应用部署请求, 其中, 所述应用部 署请求携带所述第一应用对应的应急策略, 其中, 所述第一应用对应的应急策 略描述了所述第一应用和所述第二应用具有应急关系。
本发明第四方面提供一种云服务客户端, 包括:
处理器和存储器,
其中, 所述处理器通过调用所述存储器中的代码, 以用于生成应用部署请 求; 向云服务供应商 CSP服务器发送所述应用部署请求, 其中, 所述应用部署 请求携带有第一应用对应的节点模版、 第二应用对应的节点模版, 所述第一应 用对应的节点模版中包含所述第一应用对应的应急策略,所述第一应用对应的 应急策略描述了所述第一应用和所述第二应用之间具有应急关系。
结合第四方面, 在第四方面的第一种可能的实施方式中,
所述应用部署请求还携带有驻留关系模板,所述驻留关系模板描述的所述 第一应用和第三应用之间的驻留关系为所述第一应用驻留于所述第三应用,或 者,所述驻留关系模板描述的所述第一应用和第三应用之间的驻留关系为所述 第一应用和所述第三应用相互驻留。
本发明第五方面提供一种云应用处理的方法, 可包括:
云服务供应商 CSP服务器确定第一虚拟机的工作状态满足虚拟机新增条 件; 根据所述第一虚拟机中运行的第一应用对应的应急策略,确定与所述第一 应用具有应急关系的第二应用,指示所述第二应用所驻留的第二虚拟机运行所 述第二虚拟机中已部署的所述第一应用;
创建第三虚拟机并在所述第三虚拟机中部署和启动所述第一应用; 在所述第三虚拟机中启动所述第一应用之后,指示所述第二虚拟机停止运 行所述第一应用。
结合第五方面, 在第五方面的第一种可能的实施方式中,
所述虚拟机新增条件包括如下条件的至少一种:
所述第一虚拟机的资源使用率超过第一阔值、所述第一虚拟机中运行的第 一应用的单位时间吞吐量超过了第二阔值和所述第一虚拟机中运行的第一应 用的响应延迟超过了第三阔值。
结合第五方面或第五方面的第一种可能的实施方式,在第五方面的第二种 可能的实施方式中,
所述根据所述第一虚拟机中运行的第一应用对应的应急策略,确定与所述 第一应用具有应急关系的第二应用之前, 所述方法还包括:
所述 CSP服务器接收应用部署请求, 其中, 所述应用部署请求携带所述第 一应用对应的应急策略,所述第一应用对应的应急策略描述了所述第一应用和 所述第二应用具有应急关系。
结合第五方面的第二种可能的实施方式,在第五方面的第三种可能的实施 方式中, 所述应用部署请求还携带有驻留关系模板, 所述驻留关系模板描述的 所述第一应用和第三应用的驻留关系为所述第一应用驻留于所述第三应用,或 者,所述驻留关系模板描述的所述第一应用和第三应用的驻留关系为所述第一 应用和所述第三应用相互驻留;
其中,在所述指示所述第二应用所驻留的第二虚拟机运行所述第二虚拟机 已部署的第一应用之前, 所述方法还包括: 所述 CSP服务器在所述第二虚拟机 中部署与所述第一应用具有驻留关系的所述第三应用。
结合第五方面的第二种可能的实施方式或第五方面的第三种可能的实施 方式,在第五方面的第四种可能的实施方式中, 所述应急策略还包括应急触发 条件,
其中,所述指示所述第二应用所驻留的第二虚拟机运行所述第二虚拟机中 已部署的所述第一应用之前, 所述方法进一步包括: 根据所述第二虚拟机的运 行状态确定所述应急触发条件满足;
其中, 所述应急触发条件包括: 所述第二虚拟机的空闲资源量, 大于或等 于在所述第二虚拟机中运行所述第一应用所需的最小资源量。
结合第五方面或第五方面的第一种可能的实施方式或第五方面的第二种 可能的实施方式或第五方面的第三种可能的实施方式或第五方面的第四种可 能的实施方式, 在第五方面的第五种可能的实施方式中,
在所述指示所述第二应用所驻留的第二虚拟机运行所述第二虚拟机中已 部署的所述第一应用之前, 所述方法还包括:
确定所述第二虚拟机具有足够的空闲资源部署所述第一应用,在所述第二 虚拟机中部署所述第一应用。
本发明第六方面提供一种云应用部署方法, 可包括:
生成应用部署请求;
向云服务供应商 CSP服务器发送所述应用部署请求, 其中, 所述应用部署 请求携带有第一应用对应的节点模版、 第二应用对应的节点模版, 所述第一应 用对应的节点模版中包含所述第一应用对应的应急策略,所述第一应用对应的 应急策略描述了所述第一应用和所述第二应用之间具有应急关系。
结合第六方面, 在第六方面的第一种可能的实施方式中,
所述应用部署请求还携带有驻留关系模板,所述驻留关系模板描述的所述 第一应用和第三应用之间的驻留关系为所述第一应用驻留于所述第三应用,或 者,所述驻留关系模板描述的所述第一应用和第三应用之间的驻留关系为所述 第一应用和所述第三应用相互驻留。
本发明第七方面提供一种计算机存储介质, 其特征在于,
所述计算机存储介质存储有程序,所述程序执行时包括如本发明实施例提 供的任意一种云应用处理方法的部分或全部步骤。
本发明第八方面提供一种计算机存储介质, 其特征在于, 所述计算机存储介质存储有程序,所述程序执行时包括如本发明实施例提 供的任意一种云应用部署方法的部分或全部步骤。
可以看出, 本发明实施例的方案中, 由于引入了第一应用与第二应用之间 的应急策略,基于应急策略可实现第二虚拟机暂时向第一虚拟机借出资源, 因 此, 可在第一虚拟机的工作状态满足虚拟机新增条件时才创建新的虚拟机。相 对于现有技术中在部署应用时就预先创建备用虚拟机的机制,本发明实施例的 方案由于无需预先创建备用虚拟机, 因此有利于提高虚拟机资源的利用率。 并 且,由于在第一虚拟机的工作状态满足虚拟机新增条件时引入了虚拟机之间的 资源暂借机制,使得应急虚拟机可在新创建的备用虚拟机部署好之前, 暂时分 担第一虚拟机运行的第一应用的处理负荷,有利于极大的减小新创建备用虚拟 机过程中引起的业务波动, 有利于提升云服务可靠性。 附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述所需要 使用的附图作简单地介绍,显而易见地, 下面描述中的附图仅仅是本发明的一 些实施例, 对于本领域普通技术人员来讲, 在不付出创造性劳动的前提下, 还 可以根据这些附图获得其他的附图。
图 1是本发明的一个实施例提供的一种云服务网络架构的示意图; 图 2-a是本发明实施例提供的一种云服务供应商服务器的示意图; 图 2-b是本发明实施例提供的另一种云服务供应商服务器的示意图; 图 2-c是本发明实施例提供的另一种云服务供应商服务器的示意图; 图 2-d是本发明实施例提供的另一种云服务供应商服务器的示意图; 图 3是本发明实施例提供的另一种云服务供应商服务器的示意图; 图 4是本发明实施例提供的另一种云服务供应商服务器的示意图; 图 5是本发明实施例提供的一种云服务客户端的示意图;
图 6是本发明实施例提供的另一种云服务客户端的示意图;
图 7是本发明实施例提供的另一种云服务客户端的示意图;
图 8是本发明实施例提供的一种云服务系统的示意图;
图 9是本发明实施例提供一种云应用处理方法的流程示意图; 图 10是本发明实施例提供一种云应用处理方法的流程示意图; 图 11是本发明实施例提供一种应用拓朴结构示意图;
图 12是本发明实施例提供一种虚拟机中部署应用的拓朴结构示意图; 图 13是本发明实施例提供一种云应用部署方法的流程示意图。 具体实施方式
本发明实施例提供一种云应用处理方法和云应用部署方法及相关装置和 云服务系统, 以期提高虚拟机资源的利用率。
下面通过具体实施例, 分别进行详细的说明。
为使得本发明的发明目的、 特征、 优点能够更加的明显和易懂, 下面将结 合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、 完整地描 述, 显然, 下面所描述的实施例仅仅是本发明一部分实施例, 而非全部的实施 例。基于本发明中的实施例, 本领域普通技术人员在没有做出创造性劳动前提 下所获得的所有其它实施例, 都属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语 "第一"、 "第二"、 "第 三" "第四" 等是用于区别不同的对象, 而不是用于描述特定顺序。 此外, 术 语 "包括" 和 "具有" 以及它们任何变形, 意图在于覆盖不排他的包含。 例如 包含了一系列步骤或单元的过程、 方法、 系统、 产品或设备没有限定于已列出 的步骤或单元, 而是可选地还包括没有列出的步骤或单元, 或可选地还包括对 于这些过程、 方法、 产品或设备固有的其它步骤或单元。
首先参见图 1,图 1为本发明的一个实施例提供的一种云服务网络架构的示 意图。 其中, CSP服务器可为多个云服务客户端提供请求的云服务。 云服务客 户端可向 CSP服务器申请云应用服务。 本发明一些实施例的技术方案可基于图 1所示云服务网络架构来具体实施。
参见图 2-a, 本发明实施例提供一种云服务供应商服务器 200, 可包括: 确定单元 270、 应急单元 210、 创建单元 220和停止单元 230。
其中, 确定单元 270, 用于确定第一虚拟机的工作状态满足虚拟机新增条 件。
应急单元 210, 用于根据确定单元 270的确定结果,根据上述第一虚拟机中 运行的第一应用对应的应急策略,确定与上述第一应用具有应急关系的第二应 用,指示上述第二应用所驻留的第二虚拟机运行上述第二虚拟机中已部署的上 述第一应用。
其中, 第一应用可为第一虚拟机中当前运行的任意一个应用, 或者第一应 用可为上述第一虚拟机中当前运行的某个的特定应用。第一应用例如可为用户 应用或系统应用等。
创建单元 220, 用于根据上述确定单元 270的确定结果,创建第三虚拟机并 在上述第三虚拟机中部署和启动上述第一应用。
其中, 由于第二应用和第一应用具有应急关系, 因此, 第二应用也可称为 第一应用的资源借出应用, 第一应用可称之为第二应用的资源借入应用(也可 称之为请求应急的应用)。 第二应用所驻留的第二虚拟机也可称之为第一虚拟 机的应急虚拟机(或称为资源借出虚拟机), 因为, 第二应用所驻留的第二虚 拟机允许借出资源给第一虚拟机应急。其中, 由于在第二虚拟机上运行第一应 用是为应急第一虚拟机上运行的第一应用(即在第二虚拟机上运行第一应用暂 时分担第一虚拟机上运行的第一应用的处理负荷), 因此, 第二虚拟机上部署 的第一应用可称之为第一虚拟机上运行的第一应用的应急应用。
停止单元 230, 用于在上述第三虚拟机中启动上述第三虚拟机中部署的上 述第一应用之后,指示上述第二虚拟机停止运行上述第二虚拟机中部署的上述 第一应用。
可以理解,在上述第三虚拟机运行上述第三虚拟机中部署的上述第一应用 之后,上述第三虚拟机运行的上述第三虚拟机中部署的上述第一应用可以分担 第一虚拟机运行上述第一虚拟机中部署的上述第一应用的处理负荷,此时第二 虚拟机运行的上述第二虚拟机中部署的上述第一应用的应急使命完成,因此上 述 CSP服务器在上述第三虚拟机运行上述第一应用之后可指示上述第二虚拟 机停止运行上述第二虚拟机中部署的上述第一应用。
在本发明的一些实施例中,上述虚拟机新增条件可以包括如下条件的至少 一种: 上述第一虚拟机的资源使用率超过第一阔值、上述第一虚拟机中运行的 第一应用的单位时间吞吐量超过了第二阔值、上述第一虚拟机中运行的第一应 用的响应延迟超过了第三阔值。
参见图 2-b, 在本发明的一些实施例中, 云服务供应商服务器 200还可进一 步包括: 接收单元 240, 用于在上述确定与上述第一应用具有应急关系的第二 应用之前, 接收应用部署请求, 其中, 上述应用部署请求携带有第一应用对应 的应急策略,上述第一应用对应的应急策略描述了上述第一应用和上述第二应 用具有应急关系。
其中, 第一应用与第二应用具有应急关系, 具体可表示第一应用和第二应 用相互应急(即表示第二应用所驻留的虚拟机和第一应用所驻留的虚拟机之间 可以互相暂借虚拟机资源), 或第二应用为第一应用应急 (即表示第二应用所 驻留的虚拟机可以暂借虚拟机资源给第一应用所驻留的虚拟机;)。
在本发明的一些实施例中, 上述应用部署请求还携带有关系模板, 上述关 系模板描述的上述第一应用和第三应用之间的驻留关系为上述第一应用驻留 于上述第三应用, 或者, 上述关系模板描述的上述第一应用和第三应用之间的 驻留关系为上述第一应用和上述第三应用相互驻留。
参见图 2-c, 其中, 云服务供应商服务器 200还可包括:
部署单元 250, 用于在上述指示上述第二应用所驻留的第二虚拟机运行上 述第二虚拟机中部署的第一应用之前,在上述第二虚拟机中部署与上述第一应 用具有驻留关系的上述第三应用。
在本发明一些实施例中, 若应用部署请求还携带有第二关系模板(第二关 系模板可包含在应用部署请求携带的应用部署包中的应用描述文件中), 第二 关系模板描述了上述第一应用和第四应用之间具有连接关系,并且第二关系模 板描述的第一应用和第四应用之间的连接关系为第一应用连接到( connect To ) 第四应用,则在上述指示上述第二应用所驻留的第二虚拟机运行上述第二虚拟 机中部署的第一应用之前, 上述方法还可进一步包括: 上述 CSP服务器将上述 第二虚拟机中部署的第一应用连接到 (connect To )第四应用。 此外, 若第二 关系模板描述的上述第一应用和第四应用之间的连接关系为上述第一应用和 第四应用相互连接,则在上述指示上述第二应用所驻留的第二虚拟机运行上述 第二虚拟机中部署的第一应用之前, 部署单元 250还可用于: 上述 CSP服务器 指示建立第二虚拟机中部署的第一应用和第四应用之间的互相连接。此外若第 二关系模板描述的上述第一应用和第四应用之间的连接关系为上述第四应用 连接到第一应用,则上述指示上述第二应用所驻留的第二虚拟机运行上述第二 虚拟机中部署的第一应用之前或之后, 部署单元 250还可用于: 上述 CSP服务 器指示将第四应用连接到第二虚拟机中部署的第一应用。 其中, 部署单元 250 将第一应用连接到第四应用一般是指建立第一应用和第四应用之间的可通信 关系, 例如将第四应用对应的 IP地址, 端口号等信息记录到第一应用的配置文 件中, 以此类推。
在本发明的一些实施例中, 上述应急策略包括应急触发条件。
其中, 上述应急单元 210指示上述第二应用所驻留的第二虚拟机运行上述 第二虚拟机中部署的第一应用, 具体可以包括, 在确定上述应急触发条件满足 时指示上述第二应用所驻留的第二虚拟机运行上述第二虚拟机中部署的第一 应用。
其中, 上述应急触发条件可根据不同场景不同需求来设定。例如上述应急 触发条件, 可包括: 上述第二虚拟机的空闲资源量, 大于或等于在上述第二虚 拟机中运行上述第一应用所需的最小资源量(其中, 当第一应用无需要驻留于 其它应用时,在上述第二虚拟机中运行上述第一应用所需的最小资源量, 等于 在上述第二虚拟机中运行上述第一应用本身所需的最小资源量。而当第一应用 需要驻留于其它应用时,则在上述第二虚拟机中运行上述第一应用所需的最小 资源量,等于在上述第二虚拟机中运行第一应用所要驻留的其它应用的最小资 源量, 加上述第二虚拟机中运行上述第一应用本身所需的最小资源量)。 又例 如上述应急触发条件可包括: 上述第二虚拟机的空闲资源量, 大于或等于在上 述第二虚拟机中运行上述第一应用所需的最大资源量(其中, 当第一应用无需 要驻留于其它应用时,在上述第二虚拟机中运行上述第一应用所需的最大资源 量, 等于在上述第二虚拟机中运行上述第一应用本身所需的最大资源量。 而当 第一应用需要驻留于其它应用时,则在上述第二虚拟机中运行上述第一应用所 需的最大资源量,等于在上述第二虚拟机中运行第一应用所要驻留的其它应用 的最大资源量, 加上述第二虚拟机中运行上述第一应用本身所需的最大资源 量)。 又例如上述应急触发条件可包括: 上述第二虚拟机的空闲资源量, 大于 或等于在上述第二虚拟机中运行上述第一应用所需的平均资源量(其中, 当第 一应用无需要驻留于其它应用时,在上述第二虚拟机中运行上述第一应用所需 的平均资源量,等于在上述第二虚拟机中运行上述第一应用本身所需的平均资 源量。 而当第一应用需要驻留于其它应用时, 则在上述第二虚拟机中运行上述 第一应用所需的平均资源量,等于在上述第二虚拟机中运行第一应用所要驻留 的其它应用的平均资源量,加上述第二虚拟机中运行上述第一应用本身所需的 平均资源量)。
在本发明的另一些实施例中, 上述应急触发条件可包括: 上述第二虚拟机 的空闲资源量减去第一资源量阔值,大于或等于在上述第二虚拟机中运行上述 第一应用所需的最小资源量。 其中, 第一资源量阔值大于 0。
在本发明一些实施例中, 应急单元 210还可用于, 在指示上述第二应用所 驻留的第二虚拟机运行上述第二虚拟机中部署的第一应用之前,在确定上述第 二虚拟机具有足够的空闲资源部署上述第一应用之后,在上述第二虚拟机中部 署上述第一应用。
参见图 2-d, 在本发明的一些实施例中, 云服务供应商服务器 200还可进一 步包括: 进程管理单元 260, 用于在上述指示上述第二应用所驻留的第二虚拟 机运行第二虚拟机中部署的第一应用之前,将上述第二虚拟机中正在运行的部 分或者全部进程添加到第一进程组,并可以设定上述第一进程组的最大可用资 源量。
在本发明一些实施例中, 进程管理单元 260还用于, 在上述指示上述第二 应用所驻留的第二虚拟机运行上述第二虚拟机中部署的第一应用之后,将上述 第一应用的进程添加到第二进程组, 并设定上述第二进程组的最大可用资源 量。
在本发明一些实施例中, 进程管理单元 260还用于, 在上述第二虚拟机停 止运行上述第一应用之后, 删除上述第二进程组并解散上述第一进程组。
可以理解的是,通过引入进程组并为进程组设定最大的可用资源量,有利 于实现现有进程和应急进程之间的性能隔离,进而有利于减少应急策略的实施 对现有应用的不良影响。可以理解, 第二进程组的最大可用资源量和第一进程 组的最大可用资源量之和, 小于或等于第二虚拟机的最大可用资源量。
可以理解的是, 本实施例的 CSP服务器 200可用于实现下述方法实施例中 描述的 CSP服务器的部分或全部功能, CSP服务器 200的各功能模块的功能可根 据下述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施 例的相关描述, 此处不再赘述。
可以看出, 本实施例的方案中, CSP服务器 200确定第一虚拟机的工作状 态满足虚拟机新增条件之后,根据上述第一虚拟机中运行的第一应用对应的应 急策略,确定与上述第一应用具有应急关系的第二应用, 指示上述第二应用所 驻留的第二虚拟机运行上述第二虚拟机中已部署的第一应用;以及创建第三虚 拟机并在上述第三虚拟机中部署和启动上述第一应用;在上述第三虚拟机运行 上述第三虚拟机中部署的第一应用之后, 上述 CSP服务器指示上述第二虚拟机 停止运行上述第二虚拟机中部署的第一应用。其中, 由于引入了第一应用与第 二应用之间的应急策略,基于应急策略可实现第二虚拟机暂时向第一虚拟机借 出资源, 因此, 可在第一虚拟机的工作状态满足虚拟机新增条件时才创建新的 虚拟机。相对于现有技术中在部署应用时就预先创建备用虚拟机的机制, 本发 明实施例的方案由于无需预先创建备用虚拟机,因此有利于提高虚拟机资源的 利用率。 并且, 由于在第一虚拟机的工作状态满足虚拟机新增条件时引入了虚 拟机之间的资源暂借机制,使得应急虚拟机可在新创建的备用虚拟机部署好之 前, 暂时分担第一虚拟机运行的第一应用的处理负荷,有利于极大的减小新创 建备用虚拟机过程中引起的业务波动, 有利于提升云服务可靠性。 参见图 3, 图 3为本发明的另一个实施例提供的云服务供应商服务器 300的 示意图, 云服务供应商服务器 300可包括至少一个总线 301、 与总线 301相连的 至少一个处理器 302以及与总线 301相连的至少一个存储器 303。
其中, 处理器 302通过调用存储器 303中的代码, 以用于确定第一虚拟机的 工作状态满足虚拟机新增条件,根据上述第一虚拟机中运行的第一应用对应的 应急策略,确定与上述第一应用具有应急关系的第二应用,指示上述第二应用 所驻留的第二虚拟机运行上述第二虚拟机中已部署的上述第一应用;创建第三 虚拟机并在上述第三虚拟机中部署和启动上述第一应用;在上述第三虚拟机中 启动上述第一应用之后, 指示上述第二虚拟机停止运行上述第一应用。
其中, 第一应用可为第一虚拟机中当前运行的任意一个应用, 或者第一应 用可为上述第一虚拟机中当前运行的某个的特定应用。第一应用例如可为用户 应用或系统应用等。其中, 上述第二虚拟机为部署了与第一应用有应急关系的 第二应用, 以及部署了上述第一应用的虚拟机。
当然, 第一应用和第二应用之间除了具有应急关系,也还可以具有其它关 联关系, 例如第一应用和第二应用之间还可具有连接关系等。
其中, 由于第二应用和第一应用具有应急关系, 因此, 第二应用也可称为 第一应用的资源借出应用, 第一应用可称之为第二应用的资源借入应用(也可 称之为请求应急的应用)。 第二应用所驻留的第二虚拟机也可称之为第一虚拟 机的应急虚拟机(或称为资源借出虚拟机), 因为, 第二应用所驻留的第二虚 拟机允许借出资源给第一虚拟机应急。其中, 由于在第二虚拟机上运行第二虚 拟机中部署的第一应用是为应急第一虚拟机上运行的第一应用(即在第二虚拟 机上运行第二虚拟机中部署的第一应用暂时分担第一虚拟机上运行的第一虚 拟机中部署的第一应用的处理负荷), 因此, 第二虚拟机上部署的第一应用可 称之为第一虚拟机上运行的第一应用的应急应用。
可以理解,在上述第三虚拟机中启动上述第三虚拟机中部署的上述第一应 用之后,上述第三虚拟机运行的上述第三虚拟机中部署的第一应用可以分担第 一虚拟机运行上述第一应用的处理负荷,此时第二虚拟机运行的上述第二虚拟 机中部署的第一应用的应急使命完成, 因此, 上述 CSP服务器在上述第三虚拟 机运行上述第三虚拟机中部署的第一应用之后,可指示上述第二虚拟机停止运 行上述第二虚拟机中部署的第一应用。
在本发明的一些实施例中,上述虚拟机新增条件可以包括如下条件的至少 一种: 上述第一虚拟机的资源使用率超过第一阔值、上述第一虚拟机中运行的 第一应用的单位时间吞吐量超过了第二阔值、上述第一虚拟机中运行的第一应 用的响应延迟超过了第三阔值。
在本发明的一些实施例中, 处理器 302通过调用存储器 303中的代码, 以还 用于在上述根据上述第一虚拟机中运行的第一应用对应的应急策略,确定与上 述第一应用具有应急关系的第二应用之前, 接收应用部署请求, 其中, 上述应 用部署请求携带上述第一应用对应的应急策略, 其中, 上述第一应用对应的应 急策略描述了上述第一应用和上述第二应用具有应急关系。
其中, 第一应用与第二应用具有应急关系, 具体可表示第一应用和第二应 用相互应急(即表示第二应用所驻留的虚拟机和第一应用所驻留的虚拟机之间 可以互相暂借虚拟机资源), 或第二应用为第一应用应急 (即表示第二应用所 驻留的虚拟机可以暂借虚拟机资源给第一应用所驻留的虚拟机;)。
在本发明的一些实施例中, 上述应用部署请求还携带有关系模板, 上述关 系模板描述的上述第一应用和第三应用之间的驻留关系为上述第一应用驻留 于上述第三应用, 或者, 上述关系模板描述的上述第一应用和第三应用之间的 驻留关系为上述第一应用和上述第三应用相互驻留。 其中, 处理器 302通过调 用存储器 303中的代码, 以还用于指示上述第二应用所驻留的第二虚拟机运行 上述第二虚拟机中已部署的上述第一应用之前,在上述第二虚拟机中部署与上 述第一应用具有驻留关系的上述第三应用。
在本发明一些实施例中, 若应用部署请求还携带有第二关系模板(第二关 系模板可包含在应用部署请求携带的应用部署包中的应用描述文件中), 第二 关系模板描述了上述第一应用和第四应用之间具有连接关系,并且第二关系模 板描述的第一应用和第四应用之间的连接关系为第一应用连接到( connect To ) 第四应用,则在指示上述第二应用所驻留的第二虚拟机运行上述第二虚拟机中 已部署的上述第一应用之前, 处理器 302通过调用存储器 303中的代码, 以还用 于指示将第一应用连接到 (connect To ) 第四应用。 此外, 若第二关系模板描 述的上述第一应用和第四应用之间的连接关系为上述第一应用和第四应用相 互连接,则在上述指示上述第二应用所驻留的第二虚拟机运行上述第二虚拟机 中已部署的上述第一应用之前, 处理器 302通过调用存储器 303中的代码, 以还 用于指示建立第一应用和第四应用之间的互相连接。此外, 若第二关系模板描 述的上述第一应用和第四应用之间的连接关系为上述第四应用连接到第一应 用,则在上述指示上述第二应用所驻留的第二虚拟机运行上述第二虚拟机中已 部署的上述第一应用之前或之后, 处理器 302通过调用存储器 303中的代码, 以 还用于指示将第四应用连接到第一应用。
在本发明的一些实施例中, 上述应急策略包括应急触发条件。
其中,在上述指示上述第二应用所驻留的第二虚拟机运行上述第二虚拟机 中已部署的上述第一应用的方面, 在本发明的一些实施例中, 处理器 302通过 调用存储器 303中的代码, 以具体用于, 在确定上述应急触发条件满足时, 指 示上述第二应用所驻留的第二虚拟机运行上述第二虚拟机中已部署的上述第 一应用。
其中, 上述应急触发条件可根据不同场景不同需求来设定。例如上述应急 触发条件, 可包括: 上述第二虚拟机的空闲资源量, 大于或等于在上述第二虚 拟机中运行上述第一应用所需的最小资源量(其中, 当第一应用无需要驻留于 其它应用时,在上述第二虚拟机中运行上述第一应用所需的最小资源量, 等于 在上述第二虚拟机中运行上述第一应用本身所需的最小资源量。而当第一应用 需要驻留于其它应用时,则在上述第二虚拟机中运行上述第一应用所需的最小 资源量,等于在上述第二虚拟机中运行第一应用所要驻留的其它应用的最小资 源量, 加上述第二虚拟机中运行上述第一应用本身所需的最小资源量)。 又例 如上述应急触发条件可包括: 上述第二虚拟机的空闲资源量, 大于或等于在上 述第二虚拟机中运行上述第一应用所需的最大资源量(其中, 当第一应用无需 要驻留于其它应用时,在上述第二虚拟机中运行上述第一应用所需的最大资源 量, 等于在上述第二虚拟机中运行上述第一应用本身所需的最大资源量。 而当 第一应用需要驻留于其它应用时,则在上述第二虚拟机中运行上述第一应用所 需的最大资源量,等于在上述第二虚拟机中运行第一应用所要驻留的其它应用 的最大资源量, 加上述第二虚拟机中运行上述第一应用本身所需的最大资源 量)。 又例如上述应急触发条件可包括: 上述第二虚拟机的空闲资源量, 大于 或等于在上述第二虚拟机中运行上述第一应用所需的平均资源量(其中, 当第 一应用无需要驻留于其它应用时,在上述第二虚拟机中运行上述第一应用所需 的平均资源量,等于在上述第二虚拟机中运行上述第一应用本身所需的平均资 源量。 而当第一应用需要驻留于其它应用时, 则在上述第二虚拟机中运行上述 第一应用所需的平均资源量,等于在上述第二虚拟机中运行第一应用所要驻留 的其它应用的平均资源量,加上述第二虚拟机中运行上述第一应用本身所需的 平均资源量)。
在本发明的一些实施例中, 处理器 302通过调用存储器 303中的代码, 以还 用于,在上述指示上述第二应用所驻留的第二虚拟机运行上述第二虚拟机中已 部署的上述第一应用之前,在确定上述第二虚拟机具有足够的空闲资源部署上 述第一应用后, 在上述第二虚拟机中部署上述第一应用。
在本发明的一些实施例中, 处理器 302通过调用存储器 303中的代码, 以还 用于,在上述指示上述第二应用所驻留的第二虚拟机运行上述第二虚拟机中已 部署的上述第一应用之前,将上述第二虚拟机中正在运行的部分或全部进程添 加到第一进程组, 并设定上述第一进程组的最大可用资源量。
在本发明的一些实施例中, 处理器 302通过调用存储器 303中的代码, 以还 用于在上述指示上述第二应用所驻留的第二虚拟机运行上述第二虚拟机中已 部署的上述第一应用之后,将上述第一应用的进程添加到第二进程组, 并设定 上述第二进程组的最大可用资源量。
在本发明一些实施例中, 处理器 302通过调用存储器 303中的代码, 以还用 于在上述第二虚拟机停止运行上述第二虚拟机中部署的上述第一应用之后,删 除上述第二进程组并解散上述第一进程组。
可以理解的是,通过引入进程组并为进程组设定最大的可用资源量,有利 于实现现有进程和应急进程之间的性能隔离,进而有利于减少应急策略的实施 对现有应用的不良影响。可以理解, 第二进程组的最大可用资源量和第一进程 组的最大可用资源量之和, 小于或等于第二虚拟机的最大可用资源量。
例如, 假设第一虚拟机中当前还运行有第五应用, 处理器 302通过调用存 储器 303中的代码, 以还可用于根据第一虚拟机中运行的第五应用对应的应急 策略,确定与上述第五应用具有应急关系的第六应用,指示上述第六应用所驻 留的第五虚拟机运行上述第五虚拟机中部署的第五应用;以及创建第四虚拟机 并在上述第四虚拟机中部署和启动上述第五应用;在上述第四虚拟机启动上述 第四虚拟机中部署的第五应用之后,指示第五虚拟机停止运行上述第五虚拟机 中部署的第五应用。由于第五虚拟机上运行第五应用是为应急第一虚拟机上运 行的第五应用, 暂时分担第一虚拟机上运行的第五应用的处理负荷, 因此第五 虚拟机上部署的第五应用可称之为第一虚拟机上运行的第五应用的应急应用。
可以理解的是, 本实施例的 CSP服务器 300可用于实现下述方法实施例中 描述的 CSP服务器的部分或全部功能, CSP服务器 300的各功能模块的功能可根 据下述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施 例的相关描述, 此处不再赘述。
可以看出, 本实施例的方案中, CSP服务器 300确定第一虚拟机的工作状 态满足虚拟机新增条件之后,根据上述第一虚拟机中运行的第一应用对应的应 急策略,确定与上述第一应用具有应急关系的第二应用, 指示上述第二应用所 驻留的第二虚拟机运行上述第二虚拟机中已部署的第一应用;以及创建第三虚 拟机并在上述第三虚拟机中部署和启动上述第一应用;在上述第三虚拟机运行 上述第三虚拟机中部署的第一应用之后, 上述 CSP服务器指示上述第二虚拟机 停止运行上述第二虚拟机中部署的第一应用。其中, 由于引入了第一应用与第 二应用之间的应急策略,基于应急策略可实现第二虚拟机暂时向第一虚拟机借 出资源, 因此, 可在第一虚拟机的工作状态满足虚拟机新增条件时才创建新的 虚拟机。相对于现有技术中在部署应用时就预先创建备用虚拟机的机制, 本发 明实施例的方案由于无需预先创建备用虚拟机,因此有利于提高虚拟机资源的 利用率。 并且, 由于在第一虚拟机的工作状态满足虚拟机新增条件时引入了虚 拟机之间的资源暂借机制,使得应急虚拟机可在新创建的备用虚拟机部署好之 前, 暂时分担第一虚拟机运行的第一应用的处理负荷,有利于极大的减小新创 建备用虚拟机过程中引起的业务波动, 有利于提升云服务可靠性。 参见图 4, 图 4是本发明另一实施例提供的 CSP服务器 400的结构框图。 其中, CSP服务器 400可以包括: 至少一个处理器 401, 至少一个网络接口 404或者其他用户接口 403, 存储器 405, 至少一个通信总线 402。 通信总线 402 用于实现这些组件之间的连接通信。 其中, 该 CSP服务器 400可选的包含用户 接口 403, 包括: 显示器(例如, 触摸屏、 LCD、 CRT,全息成像( Holographic ) 或者投影 (Projector )等)、 点击设备(例如, 鼠标, 轨迹球(trackball )触感 板或触摸屏等)、 摄像头和 /或拾音装置等。
其中, 存储器 402例如可包括只读存储器和随机存取存储器, 并向处理器 401提供指令和数据。
存储器 402中的一部分还包括非易失性内存(NVRAM )等。
在一些实施方式中, 存储器 405存储了如下的元素, 可执行模块或者数据 结构, 或者他们的子集, 或者他们的扩展集:
操作系统 4051, 包含各种系统程序, 用于实现各种基础业务以及处理基于 硬件的任务。
应用程序模块 4052, 包含各种应用程序, 用于实现各种应用业务。
例如应用程序模块 4052可包括如下单元的至少一个: 确定单元 270、 应急 单元 210、 创建单元 220、 停止单元 230、 接收单元 240、 部署单元 250和进程管 理单元 260。
在本发明实施例中, 通过调用存储器 405存储的程序或指令, 处理器 401 可用于,确定第一虚拟机的工作状态满足虚拟机新增条件,根据上述第一虚拟 机中运行的第一应用对应的应急策略,确定与上述第一应用具有应急关系的第 二应用,指示上述第二应用所驻留的第二虚拟机运行上述第二虚拟机中已部署 的上述第一应用;创建第三虚拟机并在上述第三虚拟机中部署和启动上述第一 应用; 在上述第三虚拟机中启动上述第一应用之后,指示上述第二虚拟机停止 运行上述第一应用。
其中, 第一应用可为第一虚拟机中当前运行的任意一个应用, 或者第一应 用可为上述第一虚拟机中当前运行的某个的特定应用。第一应用例如可为用户 应用或系统应用等。其中, 上述第二虚拟机为部署了与第一应用有应急关系的 第二应用, 以及部署了上述第一应用的虚拟机。
当然, 第一应用和第二应用之间除了具有应急关系,也还可以具有其它关 联关系, 例如第一应用和第二应用之间还可具有连接关系等。
其中, 由于第二应用和第一应用具有应急关系, 因此, 第二应用也可称为 第一应用的资源借出应用, 第一应用可称之为第二应用的资源借入应用(也可 称之为请求应急的应用)。 第二应用所驻留的第二虚拟机也可称之为第一虚拟 机的应急虚拟机(或称为资源借出虚拟机), 因为, 第二应用所驻留的第二虚 拟机允许借出资源给第一虚拟机应急。其中, 由于在第二虚拟机上运行第二虚 拟机中部署的第一应用是为应急第一虚拟机上运行的第一应用(即在第二虚拟 机上运行第二虚拟机中部署的第一应用暂时分担第一虚拟机上运行的第一虚 拟机中部署的第一应用的处理负荷), 因此, 第二虚拟机上部署的第一应用可 称之为第一虚拟机上运行的第一应用的应急应用。
可以理解,在上述第三虚拟机中启动上述第三虚拟机中部署的上述第一应 用之后,上述第三虚拟机运行的上述第三虚拟机中部署的第一应用可以分担第 一虚拟机运行上述第一应用的处理负荷,此时第二虚拟机运行的上述第二虚拟 机中部署的第一应用的应急使命完成, 因此, 上述 CSP服务器在上述第三虚拟 机运行上述第三虚拟机中部署的第一应用之后,可指示上述第二虚拟机停止运 行上述第二虚拟机中部署的第一应用。
在本发明的一些实施例中,上述虚拟机新增条件可以包括如下条件的至少 一种: 上述第一虚拟机的资源使用率超过第一阔值、上述第一虚拟机中运行的 第一应用的单位时间吞吐量超过了第二阔值、上述第一虚拟机中运行的第一应 用的响应延迟超过了第三阔值。
在本发明一些实施例中, 通过调用存储器 405存储的程序或指令, 处理器 401可用于在上述根据上述第一虚拟机中运行的第一应用对应的应急策略, 确 定与上述第一应用具有应急关系的第二应用之前,接收应用部署请求, 上述应 用部署请求携带上述第一应用对应的应急策略, 其中, 上述第一应用对应的应 急策略描述了上述第一应用和上述第二应用具有应急关系。
其中, 第一应用与第二应用具有应急关系, 具体可表示第一应用和第二应 用相互应急(即表示第二应用所驻留的虚拟机和第一应用所驻留的虚拟机之间 可以互相暂借虚拟机资源), 或第二应用为第一应用应急 (即表示第二应用所 驻留的虚拟机可以暂借虚拟机资源给第一应用所驻留的虚拟机;)。
在本发明的一些实施例中, 上述应用部署请求还携带有关系模板, 上述关 系模板描述的上述第一应用和第三应用之间的驻留关系为上述第一应用驻留 于上述第三应用, 或者, 上述关系模板描述的上述第一应用和第三应用之间的 驻留关系为上述第一应用和上述第三应用相互驻留。其中,通过调用存储器 405 存储的程序或指令, 处理器 401可用于指示上述第二应用所驻留的第二虚拟机 运行上述第二虚拟机中已部署的上述第一应用之前,在上述第二虚拟机中部署 与上述第一应用具有驻留关系的上述第三应用。
在本发明一些实施例中, 若应用部署请求还携带有第二关系模板(第二关 系模板可包含在应用部署请求携带的应用部署包中的应用描述文件中), 第二 关系模板描述了上述第一应用和第四应用之间具有连接关系,并且第二关系模 板描述的第一应用和第四应用之间的连接关系为第一应用连接到( connect To ) 第四应用,则在指示上述第二应用所驻留的第二虚拟机运行上述第二虚拟机中 已部署的上述第一应用之前, 通过调用存储器 405存储的程序或指令, 处理器 401可用于指示将第一应用连接到(connect To )第四应用。 此外, 若第二关系 模板描述的上述第一应用和第四应用之间的连接关系为上述第一应用和第四 应用相互连接,则在上述指示上述第二应用所驻留的第二虚拟机运行上述第二 虚拟机中已部署的上述第一应用之前,通过调用存储器 405存储的程序或指令, 处理器 401可用于指示建立第一应用和第四应用之间的互相连接。 此外, 若第 二关系模板描述的上述第一应用和第四应用之间的连接关系为上述第四应用 连接到第一应用,则在上述指示上述第二应用所驻留的第二虚拟机运行上述第 二虚拟机中已部署的上述第一应用之前或之后, 通过调用存储器 405存储的程 序或指令, 处理器 401可用于指示将第四应用连接到第一应用。
在本发明的一些实施例中, 上述应急策略包括应急触发条件,
其中,在上述指示上述第二应用所驻留的第二虚拟机运行上述第二虚拟机 中已部署的上述第一应用的方面,在本发明的一些实施例中,通过调用存储器 405存储的程序或指令, 处理器 401可具体用于,在确定上述应急触发条件满足 时,指示上述第二应用所驻留的第二虚拟机运行上述第二虚拟机中已部署的上 述第一应用。
其中, 上述应急触发条件可根据不同场景不同需求来设定。例如上述应急 触发条件, 可包括: 上述第二虚拟机的空闲资源量, 大于或等于在上述第二虚 拟机中运行上述第一应用所需的最小资源量(其中, 当第一应用无需要驻留于 其它应用时,在上述第二虚拟机中运行上述第一应用所需的最小资源量, 等于 在上述第二虚拟机中运行上述第一应用本身所需的最小资源量。而当第一应用 需要驻留于其它应用时,则在上述第二虚拟机中运行上述第一应用所需的最小 资源量,等于在上述第二虚拟机中运行第一应用所要驻留的其它应用的最小资 源量, 加上述第二虚拟机中运行上述第一应用本身所需的最小资源量)。 又例 如上述应急触发条件可包括: 上述第二虚拟机的空闲资源量, 大于或等于在上 述第二虚拟机中运行上述第一应用所需的最大资源量(其中, 当第一应用无需 要驻留于其它应用时,在上述第二虚拟机中运行上述第一应用所需的最大资源 量, 等于在上述第二虚拟机中运行上述第一应用本身所需的最大资源量。 而当 第一应用需要驻留于其它应用时,则在上述第二虚拟机中运行上述第一应用所 需的最大资源量,等于在上述第二虚拟机中运行第一应用所要驻留的其它应用 的最大资源量, 加上述第二虚拟机中运行上述第一应用本身所需的最大资源 量)。 又例如上述应急触发条件可包括: 上述第二虚拟机的空闲资源量, 大于 或等于在上述第二虚拟机中运行上述第一应用所需的平均资源量(其中, 当第 一应用无需要驻留于其它应用时,在上述第二虚拟机中运行上述第一应用所需 的平均资源量,等于在上述第二虚拟机中运行上述第一应用本身所需的平均资 源量。 而当第一应用需要驻留于其它应用时, 则在上述第二虚拟机中运行上述 第一应用所需的平均资源量,等于在上述第二虚拟机中运行第一应用所要驻留 的其它应用的平均资源量,加上述第二虚拟机中运行上述第一应用本身所需的 平均资源量)。
在本发明的一些实施例中, 通过调用存储器 405存储的程序或指令, 处理 器 401可用于在上述指示上述第二应用所驻留的第二虚拟机运行上述第二虚拟 机中已部署的上述第一应用之前,在确定上述第二虚拟机具有足够的空闲资源 部署上述第一应用后, 在上述第二虚拟机中部署上述第一应用。
在本发明的一些实施例中, 通过调用存储器 405存储的程序或指令, 处理 器 401可用于在上述指示上述第二应用所驻留的第二虚拟机运行上述第二虚拟 机中已部署的上述第一应用之前,将上述第二虚拟机中正在运行的部分或全部 进程添加到第一进程组, 并设定上述第一进程组的最大可用资源量。 在本发明的一些实施例中, 通过调用存储器 405存储的程序或指令, 处理 器 401可用于在上述指示上述第二应用所驻留的第二虚拟机运行上述第二虚拟 机中已部署的上述第一应用之后, 将上述第一应用的进程添加到第二进程组, 并设定上述第二进程组的最大可用资源量。
在本发明一些实施例中, 通过调用存储器 405存储的程序或指令, 处理器 401可用于在上述第二虚拟机停止运行上述第二虚拟机中部署的上述第一应用 之后, 删除上述第二进程组并解散上述第一进程组。
可以理解的是,通过引入进程组并为进程组设定最大的可用资源量,有利 于实现现有进程和应急进程之间的性能隔离,进而有利于减少应急策略的实施 对现有应用的不良影响。可以理解, 第二进程组的最大可用资源量和第一进程 组的最大可用资源量之和, 小于或等于第二虚拟机的最大可用资源量。
例如, 假设第一虚拟机中当前还运行有第五应用, 通过调用存储器 405存 储的程序或指令, 处理器 401可用于根据第一虚拟机中运行的第五应用对应的 应急策略,确定与上述第五应用具有应急关系的第六应用,触发上述第六应用 所驻留的第五虚拟机运行上述第五虚拟机中部署的第五应用; 以及创建第四虚 拟机并在上述第四虚拟机中部署和启动上述第五应用;在上述第四虚拟机启动 上述第四虚拟机中部署的第五应用之后,指示第五虚拟机停止运行上述第五虚 拟机中部署的第五应用。由于第五虚拟机上运行第五应用是为应急第一虚拟机 上运行的第五应用, 暂时分担第一虚拟机上运行的第五应用的处理负荷, 因此 第五虚拟机上部署的第五应用可称之为第一虚拟机上运行的第五应用的应急 应用。
可以理解的是, 本实施例的 CSP服务器 400可用于实现下述方法实施例中 描述的 CSP服务器的部分或全部功能, CSP服务器 400的各功能模块的功能可根 据下述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施 例的相关描述, 此处不再赘述。
可以看出, 本实施例的方案中, CSP服务器 400确定第一虚拟机的工作状 态满足虚拟机新增条件之后,根据上述第一虚拟机中运行的第一应用对应的应 急策略,确定与上述第一应用具有应急关系的第二应用, 指示上述第二应用所 驻留的第二虚拟机运行上述第二虚拟机中已部署的第一应用;以及创建第三虚 拟机并在上述第三虚拟机中部署和启动上述第一应用;在上述第三虚拟机运行 上述第三虚拟机中部署的第一应用之后, 上述 CSP服务器指示上述第二虚拟机 停止运行上述第二虚拟机中部署的第一应用。其中, 由于引入了第一应用与第 二应用之间的应急策略,基于应急策略可实现第二虚拟机暂时向第一虚拟机借 出资源, 因此, 可在第一虚拟机的工作状态满足虚拟机新增条件时才创建新的 虚拟机。相对于现有技术中在部署应用时就预先创建备用虚拟机的机制, 本发 明实施例的方案由于无需预先创建备用虚拟机,因此有利于提高虚拟机资源的 利用率。 并且, 由于在第一虚拟机的工作状态满足虚拟机新增条件时引入了虚 拟机之间的资源暂借机制,使得应急虚拟机可在新创建的备用虚拟机部署好之 前, 暂时分担第一虚拟机运行的第一应用的处理负荷,有利于极大的减小新创 建备用虚拟机过程中引起的业务波动, 有利于提升云服务可靠性。
参见图 5, 本发明实施例还提供一种云服务客户端 500, 可包括: 生成单元 510, 用于生成应用部署请求。
发送单元 520, 用于向云服务供应商 CSP服务器发送上述应用部署请求。 其中, 上述应用部署请求携带有第一应用对应的节点模版、第二应用对应 的节点模版,上述第一应用对应的节点模版中包含上述第一应用对应的应急策 略,上述第一应用对应的应急策略描述了上述第一应用和上述第二应用之间具 有应急关系。
在本发明的一些实施例中, 上述应用部署请求还携带有驻留关系模板, 上 述驻留关系模板描述的上述第一应用和第三应用之间的驻留关系为上述第一 应用驻留于上述第三应用, 或者, 上述驻留关系模板描述的上述第一应用和第 三应用之间的驻留关系为上述第一应用和上述第三应用相互驻留。
可以理解的是, 本实施例的云服务客户端 500可用于实现下述方法实施例 中描述的云服务客户端的部分或全部功能, 云服务客户端 500各功能模块的功 能可根据下述方法实施例中的方法具体实现,其具体实现过程可以参照上述方 法实施例的相关描述, 此处不再赘述。
可以看出, 本实施例的方案中, 由于引入了第一应用与第二应用之间的应 急策略,基于应急策略可实现第二应用所驻留的第二虚拟机暂时向第一应用所 驻留的第一虚拟机借出资源, 因此, 可便于在第一虚拟机的工作状态满足虚拟 机新增条件时才创建新的虚拟机。相对于现有技术中在部署应用时就预先创建 备用虚拟机的机制, 本实施例的方案由于可无需预先创建备用虚拟机, 因此有 利于提高虚拟机资源的利用率。 并且, 由于可在第一虚拟机的工作状态满足虚 拟机新增条件时引入了虚拟机之间的资源暂借机制,使得应急虚拟机可在新创 建的备用虚拟机部署好之前, 暂时分担第一虚拟机运行的第一应用的处理负 荷,有利于极大的减小新创建备用虚拟机过程中引起的业务波动,有利于提升 云服务可靠性。 参见图 6, 本发明实施例还提供另一种云服务客户端 600, 可包括: 至少一 个总线 601、与总线 601相连的至少一个处理器 602以及与总线 601相连的至少一 个存储器 603。
处理器 602通过调用存储器 603中的代码, 以用于生成应用部署请求; 向云 服务供应商 CSP服务器发送上述应用部署请求, 其中, 上述应用部署请求携带 有第一应用对应的节点模版、第二应用对应的节点模版, 上述第一应用对应的 节点模版中包含上述第一应用对应的应急策略,上述第一应用对应的应急策略 描述了上述第一应用和上述第二应用之间具有应急关系。
在本发明的一些实施例中, 上述应用部署请求还携带有驻留关系模板, 上 述驻留关系模板描述的上述第一应用和第三应用之间的驻留关系为上述第一 应用驻留于上述第三应用, 或者, 上述驻留关系模板描述的上述第一应用和第 三应用之间的驻留关系为上述第一应用和上述第三应用相互驻留。
可以理解的是, 本实施例的云服务客户端 600可用于实现下述方法实施例 中描述的云服务客户端的部分或全部功能, 云服务客户端 600的各功能模块的 功能可根据下述方法实施例中的方法具体实现,其具体实现过程可以参照上述 方法实施例的相关描述, 此处不再赘述。
可以看出, 本实施例的方案中, 由于引入了第一应用与第二应用之间的应 急策略,基于应急策略可实现第二应用所驻留的第二虚拟机暂时向第一应用所 驻留的第一虚拟机借出资源, 因此, 可便于在第一虚拟机的工作状态满足虚拟 机新增条件时才创建新的虚拟机。相对于现有技术中在部署应用时就预先创建 备用虚拟机的机制, 本实施例的方案由于可无需预先创建备用虚拟机, 因此有 利于提高虚拟机资源的利用率。 并且, 由于可在第一虚拟机的工作状态满足虚 拟机新增条件时引入了虚拟机之间的资源暂借机制,使得应急虚拟机可在新创 建的备用虚拟机部署好之前, 暂时分担第一虚拟机运行的第一应用的处理负 荷,有利于极大的减小新创建备用虚拟机过程中引起的业务波动,有利于提升 云服务可靠性。 参见图 7, 图 7是本发明另一实施例提供的云服务客户端 700的结构框图。 其中, 云服务客户端 700可以包括: 至少一个处理器 701, 至少一个网络接 口 704或者其他用户接口 703,存储器 705,至少一个通信总线 702。通信总线 702 用于实现这些组件之间的连接通信。 其中, 该云服务客户端 700可选的包含用 户接口 703, 包括:显示器(例如,触摸屏、 LCD、 CRT,全息成像( Holographic ) 或者投影 (Projector )等)、 点击设备(例如, 鼠标, 轨迹球(trackball )触感 板或触摸屏等)、 摄像头和 /或拾音装置等。
其中, 存储器 702例如可包括只读存储器和随机存取存储器, 并向处理器 701提供指令和数据。
存储器 702中的一部分还包括非易失性内存(NVRAM )等。
在一些实施方式中, 存储器 705存储了如下的元素, 可执行模块或者数据 结构, 或者他们的子集, 或者他们的扩展集:
操作系统 7051, 包含各种系统程序, 用于实现各种基础业务以及处理基于 硬件的任务。
应用程序模块 7052, 包含各种应用程序, 用于实现各种应用业务。
例如应用程序模块 7052可包括如下单元的至少一个: 生成单元 510和发送 单元 520。
在本发明实施例中, 通过调用存储器 705存储的程序或指令, 处理器 701 可用于, 生成应用部署请求; 向云服务供应商 CSP服务器发送上述应用部署请 求。 其中, 上述应用部署请求携带有第一应用对应的节点模版、 第二应用对应 的节点模版,上述第一应用对应的节点模版中包含上述第一应用对应的应急策 略,上述第一应用对应的应急策略描述了上述第一应用和上述第二应用之间具 有应急关系。
在本发明的一些实施例中, 上述应用部署请求还携带有驻留关系模板, 上 述驻留关系模板描述的上述第一应用和第三应用之间的驻留关系为上述第一 应用驻留于上述第三应用, 或者, 上述驻留关系模板描述的上述第一应用和第 三应用之间的驻留关系为上述第一应用和上述第三应用相互驻留。
可以理解的是, 本实施例的云服务客户端 700可用于实现下述方法实施例 中描述的云服务客户端的部分或全部功能, 云服务客户端 700各功能模块的功 能可根据下述方法实施例中的方法具体实现,其具体实现过程可以参照上述方 法实施例的相关描述, 此处不再赘述。
可以看出, 本实施例的方案中, 由于引入了第一应用与第二应用之间的应 急策略,基于应急策略可实现第二应用所驻留的第二虚拟机暂时向第一应用所 驻留的第一虚拟机借出资源, 因此, 可便于在第一虚拟机的工作状态满足虚拟 机新增条件时才创建新的虚拟机。相对于现有技术中在部署应用时就预先创建 备用虚拟机的机制, 本实施例的方案由于可无需预先创建备用虚拟机, 因此有 利于提高虚拟机资源的利用率。 并且, 由于可在第一虚拟机的工作状态满足虚 拟机新增条件时引入了虚拟机之间的资源暂借机制,使得应急虚拟机可在新创 建的备用虚拟机部署好之前, 暂时分担第一虚拟机运行的第一应用的处理负 荷,有利于极大的减小新创建备用虚拟机过程中引起的业务波动,有利于提升 云服务可靠性。
参见图 8, 本发明实施例还提供一种云服务系统, 包括: 至少一个云服务 供应商服务器 810, 其中, 云服务供应商服务器 810可如上述实施例中的云服务 供应商服务器 200、 云服务供应商服务器 300或云服务供应商服务器 400。
进一步的, 云服务系统还可包括云服务客户端, 云服务客户端可如上述实 施例中的云服务客户端 600或云服务客户端 500或云服务客户端 700。
本发明一种云应用处理方法的一个实施例, 其中, 一种云应用处理方法可 以包括: 云服务供应商服务器确定第一虚拟机的工作状态满足虚拟机新增条 件,根据上述第一虚拟机中运行的第一应用对应的应急策略,确定与上述第一 应用具有应急关系的第二应用,指示上述第二应用所驻留的第二虚拟机运行上 述第二虚拟机中已部署的上述第一应用;创建第三虚拟机并在上述第三虚拟机 中部署和启动上述第一应用; 在第三虚拟机中启动上述第一应用之后,指示上 述第二虚拟机停止运行上述第一应用。
请参见图 9,图 9为本发明的一个实施例提供的一种云应用处理方法的流程 示意图。 如图 9所示, 本发明的一个实施例提供的一种云应用处理方法, 可包 括以下内容:
901、 云服务供应商 CSP服务器确定第一虚拟机的工作状态满足虚拟机新 增条件。
其中, 上述虚拟机新增条件可根据不同场景不同需求来设定, 例如上述虚 拟机新增条件可包括如下条件的至少一个:第一虚拟机的资源使用率超过第一 阔值(其中, 第一阔值例如为 80%、 85%, 90%或 95%等)、 第一虚拟机中运行 的第一应用的单位时间吞吐量超过了第二阔值、 和 /或第一虚拟机中运行的第 一应用的响应延迟超过了第三阔值等。
其中, 新增虚拟机有时也可称之为 "弹出虚拟机", 因此, 虚拟机新增条 件有时也可称之为 "虚拟机弹出条件"。
902、 上述 CSP服务器根据上述第一虚拟机中运行的第一应用对应的应急 策略,确定与上述第一应用具有应急关系的第二应用,指示上述第二应用所驻 留的第二虚拟机运行上述第二虚拟机中已部署的上述第一应用。
举例来说, CSP服务器可以通过远程调用接口向第二虚拟机发送指令, 以 指示第二应用所驻留的第二虚拟机运行上述第二虚拟机中已部署的上述第一 应用, 当然 CSP服务器也可通过其他方式指示上述第二应用所驻留的第二虚拟 机运行上述第一应用。
其中, 第一应用可为第一虚拟机中当前运行的任意一个应用, 或者第一应 用可为上述第一虚拟机中当前运行的某个的特定应用。第一应用例如可为用户 应用或系统应用等。其中, 上述第二虚拟机为部署了与第一应用有应急关系的 第二应用, 以及部署了上述第一应用的虚拟机。
903、 上述 CSP服务器创建第三虚拟机并在上述第三虚拟机中部署和启动 上述第一应用。
其中, 由于第二应用和第一应用具有应急关系, 因此, 第二应用也可称为 第一应用的资源借出应用, 第一应用可称之为第二应用的资源借入应用(也可 称之为请求应急的应用)。 第二应用所驻留的第二虚拟机也可称之为第一虚拟 机的应急虚拟机(或称为资源借出虚拟机), 因为, 第二应用所驻留的第二虚 拟机允许借出资源给第一虚拟机在应急时使用。 其中, 由于在第二虚拟机上运 行第一应用是为应急第一虚拟机上运行的第一应用(即在第二虚拟机上运行第 一应用暂时分担第一虚拟机上运行的第一应用的处理负荷), 因此, 第二虚拟 机上部署的第一应用可称之为第一虚拟机上运行的第一应用的应急应用。
当然, 第一应用和第二应用之间除了具有应急关系,也还可以具有其它关 联关系, 例如第一应用和第二应用之间还可具有连接关系等。
904、 在上述第三虚拟机中启动上述第三虚拟机中部署的第一应用后, 上 述 CSP服务器指示上述第二虚拟机停止运行上述第二虚拟机上部署的第一应 用。
其中, 上述 CSP服务器可检测到在上述第三虚拟机中是否已经启动上述第 三虚拟机中部署的第一应用之后, 或者,在上述第三虚拟机中启动上述第三虚 拟机中部署的第一应用之后, 上述第三虚拟机可以向上述 CSP服务器发送通知 消息, 以通知上述 CSP服务器上述第三虚拟机中已启动上述第三虚拟机中部署 的第一应用。
可以理解,在上述第三虚拟机中启动上述第三虚拟机中部署的上述第一应 用之后,上述第三虚拟机运行的上述第三虚拟机中部署的第一应用可以分担第 一虚拟机运行上述第一应用的处理负荷,此时第二虚拟机运行的上述第二虚拟 机中部署的第一应用的应急使命完成, 因此, 上述 CSP服务器在上述第三虚拟 机运行上述第三虚拟机中部署的第一应用之后,可指示上述第二虚拟机停止运 行上述第二虚拟机中部署的第一应用。
其中, 上述虚拟机新增条件可根据不同场景不同需求来设定, 例如, 上述 虚拟机新增条件可包括如下条件的至少一个:第一虚拟机的资源使用率超过第 一阔值(其中, 第一阔值例如为 80%、 85%, 90%或 95%等)、 第一虚拟机中运 行的第一应用的单位时间吞吐量超过了第二阔值、 和 /或第一虚拟机中运行的 第一应用的响应延迟超过了第三阔值等。
可以理解的是, 步骤 802和步骤 803之间没有必然的先后顺序, 例如 CSP服 务器确定第一虚拟机的工作状态满足虚拟机新增条件, 则 CSP服务器根据 CSP 服务器的确定结果可以同步执行 "根据上述第一虚拟机中运行的第一应用对应 的应急策略,确定与上述第一应用具有应急关系的第二应用,指示上述第二应 用所驻留的第二虚拟机运行上述第二虚拟机中已部署的上述第一应用"的步骤 和 "创建第三虚拟机并在上述第三虚拟机中部署和启动过上述第一应用"的步 骤。 可以理解的是, CSP服务器也可先执行 "根据上述第一虚拟机中运行的第 一应用对应的应急策略,确定与上述第一应用具有应急关系的第二应用,指示 上述第二应用所驻留的第二虚拟机运行上述第二虚拟机中已部署的上述第一 应用" 的步骤。 而稍后, CSP服务器再执行上述 "创建第三虚拟机并在上述第 三虚拟机中部署和启动过上述第一应用" 的步骤。
可以看出, 本实施例的技术方案中, CSP服务器确定第一虚拟机的工作状 态满足虚拟机新增条件之后,根据上述第一虚拟机中运行的第一应用对应的应 急策略,确定与上述第一应用具有应急关系的第二应用, 指示上述第二应用所 驻留的第二虚拟机运行上述第二虚拟机中已部署的第一应用;以及创建第三虚 拟机并在上述第三虚拟机中部署和启动上述第一应用;在上述第三虚拟机运行 上述第三虚拟机中部署的第一应用之后, 上述 CSP服务器指示上述第二虚拟机 停止运行上述第二虚拟机中部署的第一应用。其中, 由于引入了第一应用与第 二应用之间的应急策略,基于应急策略可实现第二虚拟机暂时向第一虚拟机借 出资源, 因此, 可在第一虚拟机的工作状态满足虚拟机新增条件时才创建新的 虚拟机。相对于现有技术中在部署应用时就预先创建备用虚拟机的机制, 本发 明实施例的方案由于无需预先创建备用虚拟机,因此有利于提高虚拟机资源的 利用率。 并且, 由于在第一虚拟机的工作状态满足虚拟机新增条件时引入了虚 拟机之间的资源暂借机制,使得应急虚拟机可在新创建的备用虚拟机部署好之 前, 暂时分担第一虚拟机运行的第一应用的处理负荷,有利于极大的减小新创 建备用虚拟机过程中引起的业务波动, 有利于提升云服务可靠性。 在本发明一些实施例中, 上述第一虚拟机中可能运行若干个应用(例如 10 个应用), 这若干个应用中的至少一个应用 (例如 5个应用)中的每个应用可分 别对应一个应急策略。 其中, 对于第一虚拟机中运行有多个应用的情况, 针对 第一虚拟机中运行的每个应用, CSP服务器均可按照上述方式进行类似的应急 处理。
例如, 假设第一虚拟机中当前还运行有第五应用, CSP服务器若监测到第 一虚拟机的工作状态满足虚拟机新增条件, CSP服务器还可进一步根据第一虚 拟机中运行的第五应用对应的应急策略,确定与上述第五应用具有应急关系的 第六应用,指示上述第六应用所驻留的第五虚拟机运行上述第五虚拟机中部署 的第五应用;以及创建第四虚拟机并在上述第四虚拟机中部署和启动上述第五 应用;上述 CSP服务器在上述第四虚拟机启动上述第四虚拟机中部署的第五应 用之后,指示第五虚拟机停止运行上述第五虚拟机中部署的第五应用。 由于第 五虚拟机上运行第五应用是为应急第一虚拟机上运行的第五应用,暂时分担第 一虚拟机上运行的第五应用的处理负荷,因此第五虚拟机上部署的第五应用可 称之为第一虚拟机上运行的第五应用的应急应用。
在本发明一些实施例中,上述根据第一虚拟机中运行的第一应用对应的应 急策略,确定与上述第一应用具有应急关系的第二应用之前, 上述方法还可进 一步包括: 接收应用部署请求(如来自云服务客户端的应用部署请求, 该应用 部署请求可称之为与第一应用相关的应用部署请求, 其中, 所谓与第一应用相 关的应用部署请求,是指应用部署请求主要涉及到第一应用的部署, 当然该应 用部署请求还可能涉及到与第一应用具有连接关系、应急关系、驻留关系等相 关关系的其它应用的部署)。 其中, 上述应用部署请求可携带上述第一应用对 应的应急策略, 其中, 上述第一应用对应的应急策略描述了 K个应用之间的应 急关系, 上述 K个应用包括上述第一应用和上述第二应用, 其中, 上述 K为大 于或等于 2的正整数。 其中, 第一应用与第二应用具有应急关系, 具体可表示 为第一应用和第二应用相互应急(即表示第二应用所驻留的虚拟机和第一应用 所驻留的虚拟机之间可以互相暂借虚拟机资源), 或者第二应用为第一应用应 急(即表示第二应用所驻留的虚拟机可以暂借虚拟机资源给第一应用所驻留的 虚拟机)。 同理, 3个应用之间具有应急关系可表示 3个应用之间相互应急 (即 表示 3个应用所驻留的虚拟机之间可以互相暂借虚拟机资源), 也可表示 3个应 用中的 2个应用 (其中, 这 2个应用不包括第一应用, 例如为第二应用和应用 APP01 )为第一应用应急, 即, 表示 3个应用中的上述 2个应用 (第二应用和应 用 APP01 )所驻留的虚拟机可暂借虚拟机资源给第一应用所驻留的虚拟机, 更 多应用之间具有应急关系的情况可以以此类推。
在本发明一些实施例中,应用部署请求可携带应用部署包。应用部署包可 包含应用描述文件, 应用描述文件可包含若干个节点模版(其中, 应用描述文 件还可进一步包括一个或者多个关系模版), 其中, 不同的节点模块对应不同 的应用 (例如用户应用或系统应用)。 其中, 节点模版可包含应急策略, 应急 策略可描述应用间的应急关系,例如第一应用对应的节点模版可包含第一应用 对应的应急策略。 进一步的, 上述应急策略还可包括应急触发条件(当然应急 触发条件也可以由 CSP服务器确定的, 或事先配置在 CSP服务器中的, 即不携 带在应用部署请求中)。 例如上述指示上述第二应用所驻留的第二虚拟机运行 上述第二虚拟机中部署的第一应用, 可以包括: 在确定上述应急触发条件满足 时指示上述第二应用所驻留的上述第二虚拟机运行上述第二虚拟机中部署的 第一应用。 当然也可能不存在应急触发条件, 若不存在应急触发条件, 则 CSP 服务器指示上述第二应用所驻留的上述第二虚拟机运行上述第二虚拟机中部 署的第一应用时不受应急触发条件的限制。
其中, 上述应急触发条件可根据不同场景不同需求来设定。例如上述应急 触发条件, 可包括: 上述第二虚拟机的空闲资源量, 大于或等于在上述第二虚 拟机中运行上述第一应用所需的最小资源量。其中, 当第一应用无需要驻留于 其它应用时,在上述第二虚拟机中运行上述第一应用所需的最小资源量, 等于 在上述第二虚拟机中运行上述第一应用本身所需的最小资源量。而当第一应用 需要驻留于其它应用时,则在上述第二虚拟机中运行上述第一应用所需的最小 资源量,等于在上述第二虚拟机中运行第一应用所要驻留的其它应用的最小资 源量,加上述第二虚拟机中运行上述第一应用本身所需的最小资源量。 又例如 上述应急触发条件可包括: 上述第二虚拟机的空闲资源量, 大于或等于在上述 第二虚拟机中运行上述第一应用所需的最大资源量。其中, 当第一应用无需要 驻留于其它应用时, 在上述第二虚拟机中运行上述第一应用所需的最大资源 量, 等于在上述第二虚拟机中运行上述第一应用本身所需的最大资源量。 而当 第一应用需要驻留于其它应用时,则在上述第二虚拟机中运行上述第一应用所 需的最大资源量,等于在上述第二虚拟机中运行第一应用所要驻留的其它应用 的最大资源量, 加上述第二虚拟机中运行上述第一应用本身所需的最大资源 量。 又例如上述应急触发条件可包括: 上述第二虚拟机的空闲资源量, 大于或 等于在上述第二虚拟机中运行上述第一应用所需的平均资源量。其中, 当第一 应用无需要驻留于其它应用时,在上述第二虚拟机中运行上述第一应用所需的 平均资源量,等于在上述第二虚拟机中运行上述第一应用本身所需的平均资源 量。 而当第一应用需要驻留于其它应用时, 则在上述第二虚拟机中运行上述第 一应用所需的平均资源量,等于在上述第二虚拟机中运行第一应用所要驻留的 其它应用的平均资源量,加上述第二虚拟机中运行上述第一应用本身所需的平 均资源量。
其中, 一个关系模版用于描述两个或更多个应用之间具有关联关系, 关联 关系可以是驻留关系或连接关系等。其中,描述应用之间驻留关系的关系模版 也可称之为驻留关系模版, 其中,描述应用之间连接关系的关系模版也可称之 为连接关系模版。
在本发明一些实施例中, 若应用部署请求还携带有关系模板(关系模板可 包含在应用部署请求携带的应用部署包中的应用描述文件中), 且上述关系模 板描述了上述第一应用和第三应用之间具有驻留关系,则在上述指示上述第二 应用所驻留的第二虚拟机运行上述第二虚拟机中部署的第一应用之前,上述方 法还可进一步包括: 上述 CSP服务器在上述第二虚拟机中部署与上述第一应用 具有驻留关系的上述第三应用。上述关系模板描述的第一应用和第三应用之间 的驻留关系为上述第一应用驻留于(HostOn )第三应用, 或者上述第一应用和 第三应用相互驻留。
在本发明一些实施例中, 若应用部署请求还携带有第二关系模板(第二关 系模板可包含在应用部署请求携带的应用部署包中的应用描述文件中), 第二 关系模板描述了上述第一应用和第四应用之间具有连接关系,并且第二关系模 板描述的第一应用和第四应用之间的连接关系为第一应用连接到( connect To ) 第四应用,则在上述指示上述第二应用所驻留的第二虚拟机运行上述第二虚拟 机中部署的第一应用之前, 上述方法还可进一步包括: 上述 CSP服务器将上述 第二虚拟机中部署的第一应用连接到 (connect To )第四应用。 此外, 若第二 关系模板描述的上述第一应用和第四应用之间的连接关系为上述第一应用和 第四应用相互连接,则在上述指示上述第二应用所驻留的第二虚拟机运行上述 第二虚拟机中部署的第一应用之前, 上述方法还可进一步包括: 上述 CSP服务 器指示建立第二虚拟机中部署的第一应用和第四应用之间的互相连接。此外若 第二关系模板描述的上述第一应用和第四应用之间的连接关系为上述第四应 用连接到第一应用,则上述指示上述第二应用所驻留的第二虚拟机运行上述第 二虚拟机中部署的第一应用之前或之后, 上述方法还可进一步包括: 上述 CSP 服务器指示将第四应用连接到第二虚拟机中部署的第一应用。其中,将第一应 用连接到第四应用一般是指建立第一应用和第四应用之间的可通信关系,例如 将第四应用对应的 IP地址, 端口号等信息记录到第一应用的配置文件中, 以此 类推。
在本发明一些实施例中,在上述指示上述第二应用所驻留的第二虚拟机运 行上述第二虚拟机中部署的第一应用之前, 上述方法还可包括: 上述 CSP服务 器在确定上述第二虚拟机具有足够的空闲资源部署上述第一应用之后,在上述 第二虚拟机中部署上述第一应用。
在本发明另一些实施例中,在上述指示上述第二应用所驻留的第二虚拟机 运行上述第二虚拟机中部署的第一应用之前, 上述方法还包括: 上述 CSP服务 器在确定上述第二虚拟机具有足够的空闲资源部署上述第一应用和上述第一 应用所驻留的应用之后,在上述第二虚拟机中部署上述第一应用和上述第一应 用所驻留的应用。
在本发明一些实施例中,在上述指示上述第二应用所驻留的第二虚拟机运 行上述第二虚拟机中部署的第一应用之前, 上述方法还可包括: 上述 CSP服务 器将上述第二虚拟机中正在运行的部分或者全部进程添加到第一进程组,并设 定上述第一进程组的最大可用资源量。 可选的, 在上述指示上述第二应用所驻 留的第二虚拟机运行上述第二虚拟机中部署的第一应用之后,上述方法还可包 括: 上述 CSP服务器将上述第一应用的进程添加到第二进程组, 并设定上述第 二进程组的最大可用资源量。可选的,在上述第二虚拟机停止运行上述第二虚 拟机中部署的第一应用之后, 上述方法还可包括: 上述 CSP服务器删除上述第 二进程组并解散上述第一进程组。可以理解的是,通过引入进程组并为进程组 设定最大的可用资源量,有利于实现现有进程和应急进程之间的性能隔离, 进 而有利于减少应急策略的实施对现有应用的不良影响。可以理解, 第二进程组 的最大可用资源量和第一进程组的最大可用资源量之和,小于或等于第二虚拟 机的最大可用资源量。 为便于更好的理解和实施本发明实施例的上述方案,下面通过一些具体的 应用场景进行举例介绍。
参见图 10,图 10为本发明的另一个实施例提供的另一种云应用处理方法的 流程示意图。 其中, 如图 10所示, 本发明的另一个实施例提供的另一种云应用 处理方法可包括以下内容:
1001、 CSP服务器接收来自云服务客户端的应用部署请求。
其中, 应用部署请求可携带应用部署包, 其中, 上述应用部署包包含应用 描述文件。上述应用描述文件可包含若干个节点模版(例如可包含第一应用对 应的节点模板和第二应用对应的节点模板等)。 此外, 应用部署包还可进一步 包含一个或多个关系模版。 其中, 不同的节点模块对应不同的应用 (例如用户 应用或系统应用)。 例如应用部署包可包含 5个节点模版, 则 5个节点模版和 5 个应用——对应。 其中, 关系模版用于描述应用之间的关联关系(如驻留关系 或连接关系)。
其中, 由于上述应用部署请求涉及到第一应用的部署, 因此上述应用部署 请求可称之为与第一应用相关的应用部署请求, 其中, 所谓与第一应用相关的 应用部署请求,是指应用部署请求涉及到第一应用的部署, 当然该应用部署请 求还可能涉及到与第一应用具有连接关系、应急关系、驻留关系等相关关系的 其它应用的部署。 此外,应用描述文件还可包含应用拓朴结构描述信息,基于应用拓朴结构 描述信息可以得到应用拓朴结构图,应用拓朴结构图描述出应用描述文件中的 各节点模版之间的关系。
其中, 本实施例中, 主要以一个关系模版描述一对应用之间的一种关联关 系为例。 其中, 关联关系可包括驻留关系和连接关系等等。 举例来说, 若应用 APP002与 4个应用之间具有连接关系, 则可通过 4个关系模版来分别描述应用 APP002与这 4个应用之间的连接关系。 又例如, 若应用 APP002与 2个应用之间 具有驻留关系, 则可以通过 2个关系模版来分别描述应用 APP002与这 2个应用 之间的连接关系, 以此类推。
其中, 关系模版所描述的关联关系可为单向关联关系, 例如若某关系模版 描述应用 APP002与应用 APPOOl之间具有连接关系, 且该关系模板描述的上述 应用 APP002与应用 APPOOl之间的连接关系为上述应用 APP002连接到应用 APPOOl ( ^口应用 APP002 connect To应用 APPOOl ), 贝1 J表示应用 APP002需要连 接到应用 APPOOl。 又例如, 若某关系模版描述应用 APP002与应用 APPOOl之间 具有驻留关系, 且该关系模板描述的上述应用 APP002与应用 APPOOl之间的驻 留关系为上述应用 APP002驻留到应用 APPOOl (如应用 APP002 Hosted On应用 APPOOl ), 表示应用 APP002所驻留的虚拟机需要部署应用 APPOOl (但是应用 APPOOl所驻留的虚拟机中却并不一定需要部署应用 APP002 ), 此时应用 APP002可称之为该驻留关系的源应用, 应用 APPOOl可称之为该驻留关系的目 的应用。
当然关系模版所描述的关联关系也可为双向关联关系, 例如, 若某关系模 版描述应用 APPOOl与应用 APP002之间具有连接关系 (可通信关系), 且该关 系模版描述应用 APPOOl与应用 APP002之间的连接关系为上述应用 APPOOl与 应用 APP002相互连接, 可表示应用 APPOOl需要连接到应用 APP002 , 应用 APP002也需要连接到应用 APPOOl。 又例如, 若某关系模版描述应用 APP003 与应用 APP002之间具有驻留关系, 且该关系模版描述应用 APP003与应用 APP002之间的驻留关系为上述应用 APP003与应用 APP002相互驻留,则表示应 用 APP003所驻留的虚拟机需要部署应用 APP002, 并且,应用 APP002所驻留的 虚拟机也需要部署应用 APP003。
其中, 本实施例中主要以一个关系模版所描述的关联关系(如连接关系或 驻留关系) 为单向关联关系为例。
进一步的, 关系模版中还包含关联关系建立策略, 关联关系建立策略描述 应用之间如何建立关联关系。
在本发明的一些实施例中, 某个应用对应的节点模板可以包含: 节点类型 信息(即该应用的类型信息, 其中, 应用的类型信息所表示的应用类型例如可 为数据库应用、操作系统或数据库服务器应用等)和节点生命周期管理策略(即 该应用的生命周期管理策略)等信息。
其中,节点生命周期管理策略可包括:安装(install )策略、配置(configure ) 策略、 启动(start )策略、 停止(stop )策略、 卸载(uninstall )策略等。 这些 节点生命周期管理策略的名称是 CSP服务器可识别的标准名称, CSP服务器通 过节点生命周期管理策略的名称, 就可以判断该策略产生的管理作用。 其中, 虚拟机上运行的应用可看作是一个服务节点 (可简称节点), 节点例如可以是 用户应用或者系统应用 (甚至是虚拟机操作系统等)。
其中, 节点模版中还包含应急策略(例如, 第一应用对应的节点模版可以 包含第一应用对应的应急策略)。 其中, 一个应急策略可以描述几个应用之间 的应急关系, 其中, 本实施例中主要以一个应急策略描述出两个应用之间的应 急关系为例。 应急策略所描述的应急关系可为单向的, 例如应急策略 aOl所描 述的第二应用和第一应用之间的应急关系为:第二应用为第一应用的资源借出 应用(即表示第二应用所驻留的虚拟机可暂借虚拟机资源给第一应用所驻留的 虚拟机), 应急策略 a02所描述的第二应用和第一应用之间的应急关系为: 描述 第一应用为第二应用的资源借出应用(即表示第一应用所驻留的虚拟机可以暂 借虚拟机资源给第二应用所驻留的虚拟机)。 此外, 应急策略所描述的应急关 系也可为双向的, 例如, 应急策略 a03描述的第三应用和第一应用之间的应急 关系可为: 第三应用和第一应用互为资源借出应用(即表示第二应用所驻留的 虚拟机和第一应用所驻留的虚拟机可以暂借虚拟机资源给对方)。
为简化描述, 下面主要以上述应用部署包包含第一节点模版、第二节点模 版、 第三节点模版和第四节点模版, 其中, 第一节点模版为第一应用对应的节 点模版、第二节点模版为第二应用对应的节点模版、第三节点模版为第三应用 对应的节点模版、第四节点模版为第四应用对应的节点模版。上述应用部署包 还包含第一关系模版、 第二关系模版和第三关系模版。
其中, 第一关系模版描述出第一应用需要驻留于第三应用(即第一应用所 驻留的虚拟机中需要部署第三应用)。 第二关系模版描述出第二应用需要驻留 于第四应用 (即第二应用所驻留的虚拟机中需要部署第四应用)。 其中, 第一 应用对应的节点模版还包含第一应用对应的应急策略,其中, 第一应用对应的 应急策略描述出第二应用为第一应用的资源借出应用, 即, 第二应用所驻留的 虚拟机可以暂借资源给第一应用所驻留的虚拟机。其中, 第三关系模版还描述 出第三应用和第四应用之间具有连接关系, 具体为: 第三应用 connect To第四 应用。
进一步的, 第一应用对应的应急策略中还可包含应急触发条件(当然应急 触发条件也可以由 CSP服务器确定的, 或事先配置在 CSP服务器中的, 即不携 带在应用部署请求中)。 例如上述指示上述第二应用所驻留的第二虚拟机运行 上述第二虚拟机中部署的第一应用, 可以包括: 在确定上述应急触发条件满足 时指示上述第二应用所驻留的上述第二虚拟机运行上述第二虚拟机中部署的 第一应用。可以理解, 当指示在第二应用所驻留的第二虚拟机运行上述第二虚 拟机中部署的第一应用之后, 第二虚拟机和第一虚拟机上都运行起了第一应 用,由于第二虚拟机上运行第二虚拟机中部署的第一应用是为应急第一虚拟机 上运行的第一应用, 因此, 第二虚拟机上部署的第一应用可称之为第一虚拟机 上运行的第一应用的应急应用。
其中, 上述应急触发条件可根据不同场景不同需求来设定。例如上述应急 触发条件, 可以包括: 上述第二虚拟机的空闲资源量, 大于或等于在上述第二 虚拟机中运行上述第一应用所需的最小资源量(其中, 由于第一应用需要驻留 于第三应用,在上述第二虚拟机中运行上述第一应用所需的最小资源量, 可等 于在上述第二虚拟机中运行第一应用所要驻留的第三应用的最小资源量,加上 述第二虚拟机中运行上述第一应用本身所需的最小资源量)。 又例如, 上述应 急触发条件可包括: 上述第二虚拟机的空闲资源量, 大于或等于在上述第二虚 拟机中运行上述第一应用所需的最大资源量(其中, 由于第一应用需要驻留于 第三应用,在上述第二虚拟机中运行上述第一应用所需的最大资源量, 可等于 在上述第二虚拟机中运行第一应用所要驻留的第三应用的最大资源量,加上述 第二虚拟机中运行上述第一应用本身所需的最大资源量)。 又例如上述应急触 发条件可包括: 上述第二虚拟机的空闲资源量, 大于或等于在上述第二虚拟机 中运行上述第一应用所需的平均资源量(其中, 由于第一应用需要驻留于第三 应用,在上述第二虚拟机中运行上述第一应用所需的平均资源量, 可等于在上 述第二虚拟机中运行第一应用所要驻留的第三应用的平均资源量,加上述第二 虚拟机中运行上述第一应用本身所需的平均资源量)。
1002、 CSP服务器解析应用部署请求携带的应用描述文件, 得到上述描述 文件包含的节点模板和关系模板。 CSP服务器基于上述节点模板和关系模板得 到节点模板的遍历顺序, CSP服务器基于遍历顺序在虚拟机上部署上述节点模 板所对应的应用。
例如, CSP服务器可根据应用描述文件包含的应用拓朴结构描述信息得到 应用拓朴结构图 (应用拓朴结构图中的每个节点对应一个节点模板), 按照应 用拓朴结构图上箭头方向反向调用图遍历算法计算得到节点模板顺序序列。当 然 CSP服务器也可直接根据应用描述文件包含的应用拓朴结构描述信息, 计算 得到节点模板顺序序列,而无需执行基于应用拓朴结构描述信息得到应用拓朴 结构图的步骤。
此外, CSP服务器还可进一步将节点模板顺序序列记录到数据库。
CSP服务器计算部署应用所需的虚拟机数量, 并确定各个虚拟机上需要部 署的应用, CSP服务器按照上述节点模板顺序序列, 依次在各个虚拟机上通过 调用相应的节点生命周期管理策略和关联关系建立策略来部署应用、建立应用 之间关联关系和启动应用等。
其中, CSP服务器计算部署应用所需虚拟机的方式可包括: 在应用拓朴结 构图查找这样的节点模板, 该节点模板所对应的应用不属于任何一个 HostOn 关系模板所描述的 HostOn关系的源应用,即该节点模板在应用拓朴结构图的最 底层, 查找到的这样的节点模板的数量即部署应用所需虚拟机的数量。 CSP服 务器可根据 HostOn关系, 判断哪些应用要部署在同一台虚拟机上(其中, 具有 HostOn关系的应用需部署在同一台虚拟机上), 并从 CSP服务器所管理的虚拟 机中获取相应数量的虚拟机(其中, CSP服务器所管理的每一台虚拟机都具有 唯一标识的该虚拟机的虚拟机 ID ), CSP服务器利用基于 Declarative Mode部署 策略在各个虚拟机上部署应用, 还可进一步启动部署好的应用, 其中, CSP服 务器利用基于 Declarative Mode部署策略在各个虚拟机上部署和启动应用的方 式是现有技术, 此处不作具体详述。
在本发明的一些实施例中, CSP服务器调用节点模板中的节点生命周期管 理策略部署应用时,若执行策略名称为 install的节点生命周期管理策略,则 CSP 服务器将安装该节点模板所对应应用的部署制品。若运行策略名称为 configure 的节点生命周期管理策略, 则 CSP服务器可以将对该节点模板所对应的应用进 行配置。 若运行策略名称为 start的节点生命周期管理策略, 则 CSP服务器将启 动该节点模板所对应的应用。 类似的, 若运行策略名称为 stop的节点生命周期 管理策略, 则 CSP服务器将停止运行该节点模板所对应的应用。 若运行策略名 称为 uninstall的节点生命周期管理策略, 则 CSP服务器将卸载该节点模板所对 应应用的部署制品。
例如,当节点模板中的节点生命周期管理策略包括: install策略和 configure 策略, 则部署该节点模板对应的应用时可先执行 install策略, 再执行 configure 策略。例如,当节点模板中的节点生命周期管理策略包括: install策略、 configure 策略和 start策略, 则部署该节点模板对应的应用时可先执行 install策略、 再执 行 configure策略、 最后执行 start策略。
CSP服务器还可根据关系模板中包含的关联关系建立策略来建立应用之 间的关联关系, 例如应用之间的关系类型为 ConnectTo, 关联关系建立策略包 括 connect或 disconnect, 则 CSP服务器可建立应用之间的连接关系或者断开应 用之间的连接关系。 当两个具有特定关联关系 (例如 ConnectTo关系) 的应用 部署完毕之后, 可调用关联关系建立策略来建立二者之间的关联关系, 例如 CSP服务器可调用 ConnectTo关系模板中给出的 connect策略建立两个应用之间 的连接关系。
例如 CSP服务器将第一应用和第三应用部署在第一虚拟机 VM-1中, 将第 二应用和第四应用部署在第二虚拟机 VM-2中, 并指示建立第三应用到第四应 用的连接。
CSP服务器部署完应用部署包中的各节点模板所对应的应用之后, 将节点 模板 ID及其对应应用的应用 ID、 应用所驻留虚拟机的虚拟机 ID、 安装节点模 板所对应应用所消耗的磁盘空间量等信息记录入数据库中。
1003、 CSP服务器根据节点模板包含的应急策略, 在资源借出应用所驻留 的虚拟机上部署资源借入应用。例如, 可根据第一应用所对应的节点模板包含 的应急策略, 在第一应用 (即资源借入应用) 的资源借出应用 (即第二应用) 所驻留的第二虚拟机 VM-2上部署第一应用, 其中, 第二虚拟机 VM-2上部署的 第一应用可称之为第一虚拟机 VM- 1上部署的第一应用的应急应用。
其中,对于具有应急关系的每一对应用(例如具有应急关系的第一应用和 第二应用), CSP服务器在数据库中查找已部署的资源借入应用 (如第一应用) 所驻留虚拟机的虚拟机 ID (如 VM-1 ), 在数据库中查找部署资源借入应用(如 第一应用 )所需消耗的磁盘空间等, 比较资源借出应用 (例如第二应用 )所驻 留的虚拟机(如 VM-2 )上剩余的磁盘空间, 是否足够部署资源借入应用 (如 第一应用), 若足够, CSP服务器在资源借出应用 (例如第二应用)所驻留的 虚拟机(如 VM-2 )上基于 Declarative Mode策略部署资源借入应用 (例如第一 应用), 若不足够, 则可不在资源借出应用(如第二应用)所驻留的虚拟机(如 VM-2 )上部署资源借入应用 (如第一应用)。
进一步的, 由于第一应用需驻留于第三应用, 因此 CSP服务器还可在数据 库中查找部署第三应用所需消耗的磁盘空间等, 比较资源借出应用(如第二应 用 ) 所驻留的虚拟机(如 VM-2 )上剩余的磁盘空间, 是否足够部署资源借入 应用 (如第一应用)和第三应用, 若足够, CSP服务器在资源借出应用 (如第 二应用)所驻留的虚拟机(如 VM-2 )上基于 Declarative Mode策略部署资源借 入应用 (如第一应用)和第三应用, 若不足够, 则可不在资源借出应用 (如第 二应用) 所驻留的虚拟机(如 VM-2 )上部署资源借入应用 (如第一应用)和 第三应用。
其中, 在资源借出应用 (如第二应用) 所驻留虚拟机(如 VM-2 )在部署 好资源借入应用 (如第一应用)后, 即在第二虚拟机 VM-2上部署好驻留在第 一虚拟机 VM-1上的第一应用的应急应用之后, 无需启动该应急应用, 可只需 在第二虚拟机 VM-2安装和配置好应急应用即可。
进一步的, 在第二虚拟机 VM-2上部署好第一应用的应急应用之后, CSP 服务器还将第一应用需要驻留到的其它应用(第三应用)也部署在例如虚拟机 VM-2中, 当然, 第二虚拟机 VM-2上的剩余磁盘空间也需足够部署第一应用需 要驻留到的其他应用。
进一步的, CSP服务器在第二虚拟机 VM-2上部署好第一应用的应急应用 之后, 可将该应急应用对应的节点模板 ID、应急应用的应用、 该应急应用所驻 留虚拟机(第二虚拟机 VM-2 ) 的虚拟机 ID、 应急应用当前状态等信息记录在 数据库中。其中,由于此时应急应用还没有启动,因此应急应用当前状态为 "待 命" 状态。
至此, CSP服务器基于接收的上述应用部署请求完成了相关应用的相关部 署操作。
1004、 CSP服务器监测第一虚拟机 VM-1和第二虚拟机 VM-2的工作状态。 其中, 在第一虚拟机 VM-1部署的第一应用和第三应用启动之后, 以及在 第二虚拟机 VM-2部署的第二应用和第四应用启动之后, CSP服务器监测第一 虚拟机 VM- 1和第二虚拟机 VM-2的工作状态。
1005、 CSP服务器根据第一虚拟机 VM-1的工作状态确定第一虚拟机 VM-1 的工作状态满足了虚拟机新增条件。
其中, 上述虚拟机新增条件可根据不同场景不同需求来设定, 例如, 上述 虚拟机新增条件可包括如下条件的至少一个:第一虚拟机的资源使用率超过第 一阔值(其中, 第一阔值例如为 80%、 85%, 90%或 95%等)、 第一虚拟机中运 行的第一应用的单位时间吞吐量超过了第二阔值、第一虚拟机中运行的第一应 用的响应延迟超过了第三阔值等。
1006、 CSP服务器根据第一虚拟机中运行的第一应用对应的应急策略, 确 定与上述第一应用具有应急关系的第二应用,指示上述第二应用所驻留的第二 虚拟机运行上述第二虚拟机中已部署的上述第一应用(即,指示上述第二应用 所驻留的第二虚拟机运行上述第一虚拟机中运行的上述第一应用的应急应 用)。
具体的, CSP服务器基于步骤 705中的第一虚拟机 VM-1的工作状态满足了 虚拟机新增条件的确定结果,在数据库中查找第一虚拟机中运行的第一应用对 应的应急策略, 并根据查找到的应急策略,确定与上述第一应用具有应急关系 的第二应用,指示上述第二应用所驻留的第二虚拟机运行上述第二虚拟机中已 部署的上述第一应用。
举例来说, CSP服务器可以通过远程调用接口向第二虚拟机发送指令, 以 指示第二应用所驻留的第二虚拟机运行上述第二虚拟机中已部署的上述第一 应用, 当然 CSP服务器也可通过其他方式指示上述第二应用所驻留的第二虚拟 机运行上述第二虚拟机中已部署的上述第一应用。
1007、 CSP服务器创建第三虚拟机 VM-3, 并在第三虚拟机 VM-3中部署和 启动上述第一应用。
进一步的, 由于第一应用 Hosted On第三应用, 因此, CSP服务器在指示上 述第三虚拟机 VM-3运行上述第三虚拟机 VM-3部署的第一应用之前,还进一步 在第三虚拟机 VM-3部署第三应用,并建立第三虚拟机 VM-3部署的第三应用与 第二虚拟机 VM-2部署的第四应用之间的连接。
进一步的, CSP服务器在第三虚拟机 VM-3上部署和启动第一应用和第三 应用之后, 可将第三虚拟机 VM-3中运行的第一应用对应的节点模板 ID、 第三 应用对应的节点模板 ID、 第一应用的应用 ID、 第三应用的应用 ID、 第三应用 和第一应用所驻留虚拟机 VM-3的虚拟机 ID、 安装第三应用和第一应用所消耗 的磁盘空间量等信息记录入数据库之中。 CSP服务器在数据库中将第三虚拟机 中部署的第一应用和第三应用的状态设置为 "运行中"。
可以理解, 步骤 1006和步骤 1007之间没有必然的先后顺序, 例如 CSP服务 器若确定第一虚拟机的工作状态满足虚拟机新增条件, 则 CSP服务器可同步执 行 "根据第一虚拟机中运行的第一应用对应的应急策略, 确定与上述第一应用 具有应急关系的第二应用,指示上述第二应用所驻留的第二虚拟机运行上述第 二虚拟机中已部署的上述第一应用" 的步骤和 "创建第三虚拟机 VM-3, 并在 第三虚拟机 VM-3中部署和启动上述第一应用" 的步骤。 可以理解的是, CSP 服务器也可先执行 "根据第一虚拟机中运行的第一应用对应的应急策略,确定 与上述第一应用具有应急关系的第二应用,指示上述第二应用所驻留的第二虚 拟机运行上述第二虚拟机中已部署的上述第一应用" 的步骤, 稍后 CSP服务器 再执行上述 "创建第三虚拟机 VM-3, 并在第三虚拟机 VM-3中部署和启动上述 第一应用" 的步骤。
1008、在上述第三虚拟机运行上述第三虚拟机中部署的第一应用之后, 上 述 CSP服务器指示上述第二虚拟机停止运行上述第二虚拟机中部署的上述第 一应用。
进一步的, 由于 CSP服务器还在第二虚拟机部署有与第一应用具有驻留关 系的第三应用, 因此, CSP服务器还可指示上述第二虚拟机停止运行上述第二 虚拟机中部署的第三应用。
在本发明一些实施例中,在上述指示上述第二应用所驻留的第二虚拟机运 行上述第二虚拟机中部署的第一应用之前, 上述方法还可包括: 上述 CSP服务 器将上述第二虚拟机中正在运行的部分或者全部进程添加到第一进程组,并设 定上述第一进程组的最大可用资源量。 可选的, 在上述指示上述第二应用所驻 留的第二虚拟机运行上述第二虚拟机中部署的第一应用之后,上述方法还可包 括: 上述 CSP服务器将上述第一应用的进程添加到第二进程组, 并设定上述第 二进程组的最大可用资源量。可选的,在上述第二虚拟机停止运行上述第二虚 拟机中部署的第一应用之后, 上述方法还可包括: 上述 CSP服务器删除上述第 二进程组并解散上述第一进程组。可以理解的是,通过引入进程组并为进程组 设定最大的可用资源量,有利于实现现有进程和应急进程之间的性能隔离, 进 而有利于减少应急策略的实施对现有应用的不良影响。可以理解, 第二进程组 的最大可用资源量和第一进程组的最大可用资源量之和,小于或等于第二虚拟 机的最大可用资源量。
可以看出, 本实施例的技术方案中, CSP服务器确定第一虚拟机的工作状 态满足虚拟机新增条件之后,根据上述第一虚拟机中运行的第一应用对应的应 急策略,确定与上述第一应用具有应急关系的第二应用, 指示上述第二应用所 驻留的第二虚拟机运行上述第二虚拟机中已部署的第一应用;以及创建第三虚 拟机并在上述第三虚拟机中部署和启动上述第一应用;在上述第三虚拟机运行 上述第三虚拟机中部署的第一应用之后, 上述 CSP服务器指示上述第二虚拟机 停止运行上述第二虚拟机中部署的第一应用。其中, 由于引入了第一应用与第 二应用之间的应急策略,基于应急策略可实现第二虚拟机暂时向第一虚拟机借 出资源, 因此, 可在第一虚拟机的工作状态满足虚拟机新增条件时才创建新的 虚拟机。相对于现有技术中在部署应用时就预先创建备用虚拟机的机制, 本发 明实施例的方案由于无需预先创建备用虚拟机,因此有利于提高虚拟机资源的 利用率。 并且, 由于在第一虚拟机的工作状态满足虚拟机新增条件时引入了虚 拟机之间的资源暂借机制,使得应急虚拟机可在新创建的备用虚拟机部署好之 前, 暂时分担第一虚拟机运行的第一应用的处理负荷,有利于极大的减小新创 建备用虚拟机过程中引起的业务波动, 有利于提升云服务可靠性。
为便于更好理解和实施本发明实施例的上述方案, 下面通过基于 TOSCA 的一些更为具体的应用场景进行举例介绍。
假设, CSP服务器接收来自云服务客户端的应用部署请求 ql。
其中, 应用部署请求 ql携带应用部署包, 其中, 上述应用部署包包含应用 描述文件, 上述应用描述文件包含如下 6个节点模版: 节点模版 aVM、 节点模 版 dVM、 节点模版 appContainer、 节点模版 dbContainer、 节点模版 DB和节点模 版 App。 其中, 上述应用描述文件还包含 4个类型为 HostOn的关系模板和 1个类 型为 ConnectTo的关系模板。 其中, 6个节点模版对应 6个应用, 这 6个应用的应 用 ID分别如下: appVMl、 dbVM、 appCl、 dbC、 db、 appl。
节点模版 aVM对应于应用 appVMl、
节点模版 dVM对应于应用 app dbVM、
节点模版 appContainer对应于应用 appCl、
节点模版 dbContainer对应于应用 dbC、
节点模版 DB对应于应用 db、 节点模版 App对应于应用 appl。
其中,基于应用描述文件包含的应用拓朴结构描述信息得到的应用拓朴结 构图可如图 11所示, 其中, 图 11示出了节点模版 aVM、 节点模版 dVM、 节点模 版 appContainer、 节点模版 dbContainer、 节点模版 DB和节点模版 App的顺序序 列。 此外,
CSP服务器还可进一步将上述节点模板的顺序序列记录到数据库。 图 11中 示出应用 db HostOn应用 dbC、 应用 dbC HostOn应用 app dbVM、 应用 appl HostOn应用 appCl、 应用 appCl HostOn应用 app VM1。 图 11中还示出应用 appCl connect to应用 dbC。
CSP服务器计算部署上述 6个应用所需的虚拟机数量, 并确定各个虚拟机 上需要部署的应用, CSP服务器按照上述节点模板顺序序列, 依次在各虚拟机 上通过调用相应的节点生命周期管理策略来部署应用和启动应用,通过调用关 联关系建立策略建立应用 appCl到应用 dbC的连接。
其中, CSP服务器计算部署应用所需虚拟机的方式可包括: 在应用拓朴结 构图查找这样的节点模板, 该节点模板所对应的应用不属于任何一个 HostOn 关系模板所描述的 HostOn关系的源应用,即该节点模板在应用拓朴结构图的最 底层(即节点模版 aVM和节点模版 dVM ), 查找到的这样的节点模板的数量即 部署应用所需虚拟机的数量, 因此需要两个虚拟机来部署 6个应用。 CSP服务 器可根据 HostOn关系, 判断哪些应用要部署在同一台虚拟机上 (其中, 具有 HostOn关系的应用需部署在同一台虚拟机上), 并从 CSP服务器所管理的虚拟 机中获取相应数量的虚拟机(其中, CSP服务器所管理的每一台虚拟机都具有 唯一标识的该虚拟机的虚拟机 ID )。
假设, CSP服务器创建的两个虚拟机的可用磁盘空间如表 1所示:
节点模版、 应用和虚拟机之间的映射关系可如下表 2所示: 表 2
其中, CSP服务器利用基于 Declarative Mode部署策略在各个虚拟机上部署 应用, 还可进一步启动部署好的部分或全部应用。
具体部署过程可如下:
51、 启动应用 appVMl和 dbVM: start ap VMl , start dbVM。
52、 署和启动应用 appCl : install appCl , configure appCl , start appCl。
53、 部署和启动应用 dbC: install dbC, configure dbC, start dbC。
54、 建立应用 appCl与应用 dbC之间的连接关系: connect appCl to dbC。
55、 署和启动应用 appl : install appl , start appl。
56、 部署和启动应用 db: install db, start db。
应用 appVMl、 应用 appCl和应用 appl被部署在第一虚拟机 VM-1上。 应用 dbVM、 应用 dbC和应用 db被部署在第二虚拟机 VM-2上。 CSP服务器部署和启 动各应用之后, 将各应用的状态设置为 "运行中", 具体可如表 3所示:
表 3
节点模板 ID 应用 ID 虚拟机 ID 状态
aVM appVMl VM-1 运行中 dVM dbVM VM-2 运行中 appContainer appCl VM-1 运行中 dbContainer dbC VM-2 运行中
DB db VM-2 运行中
App appl VM-1 运行中 其中, 各应用所消耗的磁盘空间如表 4所示:
CSP服务器根据节点模板 App包含的应急策略, 在资源借出应用 db所驻留 的虚拟机 VM-2上部署资源借入应用 appl。 其中, 第二虚拟机 VM-2上部署的应 用 appl可称之为第一虚拟机 VM-1上部署的应用 appl的应急应用。
其中, 对于具有应急关系的应用 db和应用 appl, CSP服务器在表 4中查找 部署应用 appl所需消耗的磁盘空间等, 比较应用 db所驻留的第二虚拟机 VM-2 上剩余的磁盘空间是否足够部署应用 Appl。 由于应用 Appl需驻留于应用 appCl , 因此 CSP服务器还在表 4中查找部署应用 appCl所需消耗磁盘空间, 比 较应用 db所驻留的第二虚拟机 VM-2上剩余的磁盘空间, 是否足够部署应用 appl和应用 appCl。 由表 4和表 1可知, 第二虚拟机 VM-2上剩余的磁盘空间为 11GB , 而部署应用 appl和应用 appCl只需 250MB , 因此, 应用 db所驻留的第二 虚拟机 VM-2上剩余的磁盘空间足够部署应用 appl和应用 appCl。
因此, CSP服务器在第二虚拟机 VM-2上也部署应用 appl和应用 appCl。 CSP 服务器在第二虚拟机 VM-2上部署应用 appl和应用 appCl的过程可如下:
511、 署和启动应用 appCl : install appCl , configure appCl , start appCl。
512、 建立应用 appCl与应用 dbC之间的连接关系: connect appCl to dbC。
513、 部署和启动应用 appl : install appl , start appl 0
CSP服务器在第二虚拟机 VM-2上部署应用 appl和应用 appCl之后, 将其状 态设置为 "待命", 具体可如表 5所示:
表 5 节点模板 ID 应用 ID 虚拟机 ID 状态 aVM ap VMl VM_1 运行中
dVM dbVM VM_2 运行中
appContainer appCl VM_1 运行中 dbContainer dbC VM_2 运行中
DB db VM_2 运行中
App appl VM_1 运行中
appContainer appCl VM_2 待命
App appl VM_2 待命
至此, CSP服务器基于接收的上述应用部署请求完成了相关应用的相关部 署操作。
CSP服务器监测第一虚拟机 VM-1和第二虚拟机 VM-2的工作状态。
假设 CSP服务器若监测到第一虚拟机 VM-1的工作状态满足了虚拟机新增 条件, 根据第一虚拟机中当前运行的应用 appl对应的应急策略, 确定与上述第 一应用具有应急关系的应用 db, 指示上述应用 db所驻留的第二虚拟机 VM-2运 行第二虚拟机 VM-2中部署的应用 appl (即, 指示上述应用 db所驻留的第二虚 拟机 VM-2运行应用 app 1的应急应用 app 1 )。
其中, 上述虚拟机新增条件可根据不同场景不同需求来设定, 例如, 上述 虚拟机新增条件可包括如下条件的至少一个:第一虚拟机的资源使用率超过第 一阔值(其中, 第一阔值例如为 80%、 85%, 90%或 95%等)、 第一虚拟机中运 行的应用 appl的单位时间吞吐量超过了第二阔值、 第一虚拟机中运行的应用 appl的响应延迟超过了第三阔值等。
CSP服务器若确定上述第一虚拟机 VM-1的工作状态满足上述虚拟机新增 条件, CSP服务器还创建第三虚拟机 VM-3, 并在第三虚拟机 VM-3中部署和启 动上述应用 appl。
进一步的, 由于应用 appl Hosted On应用 appCl , 因此, CSP月良务器在指示 上述第三虚拟机 VM-3运行上述第三虚拟机 VM-3中部署的应用 appl之前,还进 一步在第三虚拟机 VM-3部署应用 appC 1, 并建立第三虚拟机 VM-3部署的应用 appC 1与第二虚拟机 VM-2部署的应用 dbC之间的连接。
进一步的, 由于应用 appCl Hosted On应用 appVMl , 因此, CSP服务器在 指示上述第三虚拟机 VM-3运行上述第三虚拟机 VM-3中部署的上述应用 appl 之前, 还进一步在第三虚拟机 VM-3部署应用 appVMl。
CSP服务器在第三虚拟机新增操作执行过程中, 第三虚拟机 VM-3上正在 部署的应用 appVMl、 应用 appCl和应用 appl的工作状态如表 6所示: 表 6
在上述第三虚拟机 VM-3的新增操作完成之后,即第三虚拟机 VM-3上运行 第三虚拟机 VM-3中部署的应用 appl之后, 上述 CSP服务器指示上述第二虚拟 机 VM-2停止运行第二虚拟机 VM-2中部署的上述应用 appl。进一步的,由于 CSP 服务器还在第二虚拟机 VM-2部署有与应用 appl具有驻留关系的应用 appCl,因 此, CSP服务器还可指示第二虚拟机 VM-2停止运行第二虚拟机 VM-2中部署的 应用 appCl。 此时, 第二虚拟机 VM-2上部署的应用 appCl和应用 appl被设置为 待命状态, 而第三虚拟机 VM-3上部署的应用 appCl、 应用 appl和应用 appVMl 设置为 "运行中状态"。 具体如表 7所示: 表 7
其中, CSP服务器新增第三虚拟机之后, 三个虚拟机上运行的应用可如图 12所示, 其中, 第三虚拟机和第一虚拟机上都运行了应用 appCl、 应用 appl和 应用 appVMl。
可以看出, 上述应用场景中, CSP服务器若确定第一虚拟机的工作状态满 足虚拟机新增条件,可根据上述第一虚拟机中当前运行的应用 appl对应的应急 策略, 确定与应用 appl具有应急关系的应用 db, 指示上述应用 db所驻留的第二 虚拟机运行第二虚拟机 VM-2中部署的应用 appl ; 上述 CSP服务器若确定上述 第一虚拟机的工作状态满足上述虚拟机新增条件,创建第三虚拟机并在上述第 三虚拟机中部署和启动应用 appl; 在上述第三虚拟机运行第三虚拟机 VM-3中 部署的应用 appl之后, 上述 CSP服务器指示上述第二虚拟机停止运行第二虚拟 机 VM-2中部署的应用 appl。 其中, 由于引入了应用之间的应急策略, 基于应 急策略可实现第二虚拟机暂时向第一虚拟机借出资源, 因此, 可在第一虚拟机 的工作状态满足虚拟机新增条件时才创建新的虚拟机,相对于现有技术中在部 署应用时就预先创建虚拟机的机制,本发明实施例的方案由于无需预先创建虚 拟机, 因此, 有利于提高虚拟机资源的利用率。 并且, 由于在第一虚拟机的工 作状态满足虚拟机新增条件时引入了虚拟机之间的资源暂借机制,使得应急虚 拟机可以在新创建的虚拟机部署好之前,暂时分担第一虚拟机运行的应用 appl 的处理负荷,有利于极大减小创建新虚拟机过程中引起的业务波动,有利于提 升云服务可靠性。
参见图 13、 本发明实施例还提供一种云应用部署方法, 可包括:
1301、 云服务客户端生成应用部署请求。
1302、 向云服务供应商 CSP服务器发送上述应用部署请求。
其中, 上述应用部署请求携带有第一应用对应的节点模版、第二应用对应 的节点模版,上述第一应用对应的节点模版中包含上述第一应用对应的应急策 略,上述第一应用对应的应急策略描述了上述第一应用和上述第二应用之间具 有应急关系。
其中, 云服务供应商 CSP服务器在接收到上述应用部署请求之后, 可以创 建第一虚拟机和第二虚拟机,并根据第一应用对应的节点模版在在第一虚拟机 中部署第一应用,并根据第二应用对应的节点模版在在第二虚拟机中部署第二 应用,根据第一应用对应的应急策略,在上述第二应用所驻留的第二虚拟机中 部署所述第一应用。 后续, CSP服务器确定第一虚拟机的工作状态满足虚拟 机新增条件; 根据所述第一虚拟机中运行的第一应用对应的应急策略,确定与 所述第一应用具有应急关系的第二应用,指示所述第二应用所驻留的第二虚拟 机运行所述第二虚拟机中已部署的所述第一应用;创建第三虚拟机并在所述第 三虚拟机中部署和启动所述第一应用;在所述第三虚拟机中启动所述第一应用 之后, 指示所述第二虚拟机停止运行所述第一应用。
在本发明的一些实施例中, 上述应用部署请求还携带有驻留关系模板, 上 述驻留关系模板描述的上述第一应用和第三应用之间的驻留关系为上述第一 应用驻留于上述第三应用, 或者, 上述驻留关系模板描述的上述第一应用和第 三应用之间的驻留关系为上述第一应用和上述第三应用相互驻留。
进一步的, 上述第一应用对应的应急策略还可包括应急触发条件。
其中, 上述应急触发条件可根据不同场景不同需求来设定。例如上述应急 触发条件, 可包括: 上述第二虚拟机的空闲资源量, 大于或等于在上述第二虚 拟机中运行上述第一应用所需的最小资源量。其中, 当第一应用无需要驻留于 其它应用时,在上述第二虚拟机中运行上述第一应用所需的最小资源量, 等于 在上述第二虚拟机中运行上述第一应用本身所需的最小资源量。而当第一应用 需要驻留于其它应用时,则在上述第二虚拟机中运行上述第一应用所需的最小 资源量,等于在上述第二虚拟机中运行第一应用所要驻留的其它应用的最小资 源量,加上述第二虚拟机中运行上述第一应用本身所需的最小资源量。 又例如 上述应急触发条件可包括: 上述第二虚拟机的空闲资源量, 大于或等于在上述 第二虚拟机中运行上述第一应用所需的最大资源量。其中, 当第一应用无需要 驻留于其它应用时, 在上述第二虚拟机中运行上述第一应用所需的最大资源 量, 等于在上述第二虚拟机中运行上述第一应用本身所需的最大资源量。 而当 第一应用需要驻留于其它应用时,则在上述第二虚拟机中运行上述第一应用所 需的最大资源量,等于在上述第二虚拟机中运行第一应用所要驻留的其它应用 的最大资源量, 加上述第二虚拟机中运行上述第一应用本身所需的最大资源 量。 又例如上述应急触发条件可包括: 上述第二虚拟机的空闲资源量, 大于或 等于在上述第二虚拟机中运行上述第一应用所需的平均资源量。其中, 当第一 应用无需要驻留于其它应用时,在上述第二虚拟机中运行上述第一应用所需的 平均资源量,等于在上述第二虚拟机中运行上述第一应用本身所需的平均资源 量。 而当第一应用需要驻留于其它应用时, 则在上述第二虚拟机中运行上述第 一应用所需的平均资源量,等于在上述第二虚拟机中运行第一应用所要驻留的 其它应用的平均资源量,加上述第二虚拟机中运行上述第一应用本身所需的平 均资源量。
可以看出, 本实施例的方案中, 由于引入了第一应用与第二应用之间的应 急策略,基于应急策略可实现第二应用所驻留的第二虚拟机暂时向第一应用所 驻留的第一虚拟机借出资源, 因此, 可便于在第一虚拟机的工作状态满足虚拟 机新增条件时才创建新的虚拟机。相对于现有技术中在部署应用时就预先创建 备用虚拟机的机制, 本实施例的方案由于可无需预先创建备用虚拟机, 因此有 利于提高虚拟机资源的利用率。 并且, 由于可在第一虚拟机的工作状态满足虚 拟机新增条件时引入了虚拟机之间的资源暂借机制,使得应急虚拟机可在新创 建的备用虚拟机部署好之前, 暂时分担第一虚拟机运行的第一应用的处理负 荷,有利于极大的减小新创建备用虚拟机过程中引起的业务波动,有利于提升 云服务可靠性。
本发明实施例还提供一种计算机存储介质, 其中, 该计算机存储介质可存 储有程序,该程序执行时包括上述方法实施例中记载的任意一种云应用处理方 法的部分或全部步骤。
本发明实施例还提供另一种计算机存储介质, 其中, 该计算机存储介质可 存储有程序,该程序执行时包括上述方法实施例中记载的任意一种云应用部署 方法的部分或全部步骤。
在上述实施例中,对各个实施例的描述都各有侧重, 某个实施例中没有详 述的部分, 可以参见其他实施例的相关描述。
需要说明的是, 对于前述的各方法实施例, 为了简单描述, 故将其都表述 为一系列的动作组合,但是本领域技术人员应该知悉, 本发明并不受所描述的 动作顺序的限制,因为依据本发明,某些步骤可以釆用其他顺序或者同时进行。 其次, 本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施 例, 所涉及的动作和模块并不一定是本发明所必须的。
在本申请所提供的几个实施例中, 应该理解到, 所揭露的装置, 可通过其 它的方式实现。 例如, 以上所描述的装置实施例仅仅是示意性的, 例如上述单 元的划分, 仅仅为一种逻辑功能划分, 实际实现时可以有另外的划分方式, 例 如多个单元或组件可以结合或者可以集成到另一个系统, 或一些特征可以忽 略, 或不执行。 另一点, 所显示或讨论的相互之间的耦合或直接辆合或通信连 接可以是通过一些接口, 装置或单元的间接辆合或通信连接, 可以是电性或其 它的形式。 单元显示的部件可以是或者也可以不是物理单元, 即可以位于一个地方, 或者 也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部 单元来实现本实施例方案的目的。
另外,在本发明各实施例中的各功能单元可以集成在一个处理单元中,也 可以是各个单元单独物理存在, 也可以两个或两个以上单元集成在一个单元 中。上述集成的单元既可以釆用硬件的形式实现,也可以釆用软件功能单元的 形式实现。
上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售 或使用时, 可以存储在一个计算机可读取存储介质中。 基于这样的理解, 本发 明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全 部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储 介质中, 包括若干指令用以使得一台计算机设备(可以为个人计算机、 服务器 或者网络设备等, 具体可以是计算机设备中的处理器)执行本发明各个实施例 上述方法的全部或部分步骤。 其中, 而前述的存储介质可包括: U盘、 移动硬 盘、 磁碟、 光盘、 只读存储器 (ROM, Read-Only Memory )或者随机存取存 储器(RAM, Random Access Memory )等各种可以存储程序代码的介质。
以上上述, 以上实施例仅用以说明本发明的技术方案, 而非对其限制; 尽 管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理 解: 其依然可以对前述各实施例所记载的技术方案进行修改, 或者对其中部分 技术特征进行等同替换; 而这些修改或者替换, 并不使相应技术方案的本质脱 离本发明各实施例技术方案的精神和范围。

Claims (21)

  1. 权 利 要 求
    1、 一种云服务供应商服务器, 其特征在于, 包括:
    确定单元, 用于确定第一虚拟机的工作状态满足虚拟机新增条件; 应急单元, 用于根据确定单元的确定结果,根据所述第一虚拟机中运行的 第一应用对应的应急策略确定与所述第一应用具有应急关系的第二应用,指示 所述第二应用所驻留的第二虚拟机运行所述第二虚拟机中已部署的所述第一 应用;
    创建单元, 用于根据所述确定单元的确定结果,创建第三虚拟机并在所述 第三虚拟机中部署和启动所述第一应用;
    停止单元, 用于在所述第三虚拟机中启动所述第一应用之后,指示所述第 二虚拟机停止运行所述第一应用。
  2. 2、 根据权利要求 1所述的云服务供应商服务器, 其特征在于,
    所述云服务供应商服务器还包括: 接收单元, 用于在所述确定与所述第一 应用具有应急关系的第二应用之前, 接收应用部署请求, 其中, 所述应用部署 请求携带所述第一应用对应的应急策略, 其中, 所述第一应用对应的应急策略 描述了所述第一应用和所述第二应用具有应急关系。
  3. 3、根据权利要求 2所述的云服务供应商服务器, 其特征在于, 所述应用部 署请求还携带有驻留关系模板,所述驻留关系模板描述的所述第一应用和第三 应用之间的驻留关系为所述第一应用驻留于所述第三应用, 或者, 所述驻留关 系模板描述的所述第一应用和第三应用之间的驻留关系为所述第一应用和所 述第三应用相互驻留;
    所述云服务供应商服务器还包括:
    部署单元,用于在所述指示所述第二应用所驻留的第二虚拟机运行所述第 二虚拟机中已部署的第一应用之前,在所述第二虚拟机中部署与所述第一应用 具有驻留关系的所述第三应用。
  4. 4、 根据权利要求 1至 3任一项所述的云服务供应商服务器, 其特征在于, 所述应急策略包括应急触发条件, 其中, 所述应急触发条件包括: 所述第 二虚拟机的空闲资源量,大于或等于在所述第二虚拟机中运行所述第一应用所 需的最小资源量;
    其中,所述应急单元指示所述第二应用所驻留的第二虚拟机运行所述第二 虚拟机中已部署的所述第一应用具体包括:在根据所述第二虚拟机的运行状态 确定所述应急触发条件满足时,指示所述第二应用所驻留的第二虚拟机运行所 述第二虚拟机中已部署的所述第一应用。
  5. 5、 根据权利要求 1至 4任一项所述的云服务供应商服务器, 其特征在于, 所述应急单元在所述指示所述第二应用所驻留的第二虚拟机运行所述第 二虚拟机中已部署的所述第一应用之前,还用于,确定所述第二虚拟机具有足 够的空闲资源部署所述第一应用, 在所述第二虚拟机中部署所述第一应用。
  6. 6、 一种云服务客户端, 其特征在于, 包括:
    生成单元, 用于生成应用部署请求;
    发送单元, 用于向云服务供应商 CSP服务器发送所述应用部署请求, 其中, 所述应用部署请求携带有第一应用对应的节点模版、第二应用对应 的节点模版,所述第一应用对应的节点模版中包含所述第一应用对应的应急策 略,所述第一应用对应的应急策略描述了所述第一应用和所述第二应用之间具 有应急关系。
  7. 7、 根据权利要求 6所述的云服务客户端, 其特征在于,
    所述应用部署请求还携带有驻留关系模板,所述驻留关系模板描述的所述 第一应用和第三应用之间的驻留关系为所述第一应用驻留于所述第三应用,或 者,所述驻留关系模板描述的所述第一应用和第三应用之间的驻留关系为所述 第一应用和所述第三应用相互驻留。
  8. 8、 一种云服务供应商服务器, 其特征在于, 包括:
    处理器和存储器,
    其中, 所述处理器通过调用所述存储器中的代码, 以用于确定第一虚拟机 的工作状态满足虚拟机新增条件,根据所述第一虚拟机中运行的第一应用对应 的应急策略,确定与所述第一应用具有应急关系的第二应用,指示所述第二应 用所驻留的第二虚拟机运行所述第二虚拟机中已部署的所述第一应用;创建第 三虚拟机并在所述第三虚拟机中部署和启动所述第一应用;在所述第三虚拟机 中启动所述第一应用之后, 指示所述第二虚拟机停止运行所述第一应用。
  9. 9、 根据权利要求 8所述的云服务供应商服务器, 其特征在于,
    所述虚拟机新增条件包括如下条件的至少一种:
    所述第一虚拟机的资源使用率超过第一阔值、所述第一虚拟机中运行的第 一应用的单位时间吞吐量超过了第二阔值和所述第一虚拟机中运行的第一应 用的响应延迟超过了第三阔值。
  10. 10、 根据权利要求 8或 9所述的云服务供应商服务器, 其特征在于, 所述处理器通过调用所述存储器中的代码,以还用于在所述确定与所述第 一应用具有应急关系的第二应用之前, 接收应用部署请求, 其中, 所述应用部 署请求携带所述第一应用对应的应急策略, 其中, 所述第一应用对应的应急策 略描述了所述第一应用和所述第二应用具有应急关系。
  11. 11、 一种云服务客户端, 其特征在于, 包括:
    处理器和存储器,
    其中, 所述处理器通过调用所述存储器中的代码, 以用于生成应用部署请 求; 向云服务供应商 CSP服务器发送所述应用部署请求, 其中, 所述应用部署 请求携带有第一应用对应的节点模版、 第二应用对应的节点模版, 所述第一应 用对应的节点模版中包含所述第一应用对应的应急策略,所述第一应用对应的 应急策略描述了所述第一应用和所述第二应用之间具有应急关系。
  12. 12、 根据权利要求 11所述的云服务客户端, 其特征在于,
    所述应用部署请求还携带有驻留关系模板,所述驻留关系模板描述的所述 第一应用和第三应用之间的驻留关系为所述第一应用驻留于所述第三应用,或 者,所述驻留关系模板描述的所述第一应用和第三应用之间的驻留关系为所述 第一应用和所述第三应用相互驻留。
  13. 13、 一种云应用处理的方法, 其特征在于, 包括:
    云服务供应商 CSP服务器确定第一虚拟机的工作状态满足虚拟机新增条 件;
    根据所述第一虚拟机中运行的第一应用对应的应急策略,确定与所述第一 应用具有应急关系的第二应用,指示所述第二应用所驻留的第二虚拟机运行所 述第二虚拟机中已部署的所述第一应用;
    创建第三虚拟机并在所述第三虚拟机中部署和启动所述第一应用; 在所述第三虚拟机中启动所述第一应用之后,指示所述第二虚拟机停止运 行所述第一应用。
  14. 14、 根据权利要求 13所述的方法, 其特征在于,
    所述虚拟机新增条件包括如下条件的至少一种:
    所述第一虚拟机的资源使用率超过第一阔值、所述第一虚拟机中运行的第 一应用的单位时间吞吐量超过了第二阔值和所述第一虚拟机中运行的第一应 用的响应延迟超过了第三阔值。
  15. 15、 根据权利要求 13或 14所述的方法, 其特征在于,
    所述根据所述第一虚拟机中运行的第一应用对应的应急策略,确定与所述 第一应用具有应急关系的第二应用之前, 所述方法还包括:
    所述 CSP服务器接收应用部署请求, 其中, 所述应用部署请求携带所述第 一应用对应的应急策略,所述第一应用对应的应急策略描述了所述第一应用和 所述第二应用具有应急关系。
  16. 16、 根据权利要求 15所述的方法, 其特征在于,
    所述应用部署请求还携带有驻留关系模板,所述驻留关系模板描述的所述 第一应用和第三应用的驻留关系为所述第一应用驻留于所述第三应用,或者所 述驻留关系模板描述的所述第一应用和第三应用的驻留关系为所述第一应用 和所述第三应用相互驻留;
    其中,在所述指示所述第二应用所驻留的第二虚拟机运行所述第二虚拟机 已部署的第一应用之前, 所述方法还包括: 所述 CSP服务器在所述第二虚拟机 中部署与所述第一应用具有驻留关系的所述第三应用。
  17. 17、 根据权利要求 15至 16任一项所述的方法, 其特征在于, 所述应急策略 还包括应急触发条件,
    其中,所述指示所述第二应用所驻留的第二虚拟机运行所述第二虚拟机中 已部署的所述第一应用之前, 所述方法进一步包括: 根据所述第二虚拟机的运 行状态确定所述应急触发条件满足; 其中, 所述应急触发条件包括: 所述第二虚拟机的空闲资源量, 大于或等 于在所述第二虚拟机中运行所述第一应用所需的最小资源量。
  18. 18、 根据权利要求 13至 17任一项所述的方法, 其特征在于,
    在所述指示所述第二应用所驻留的第二虚拟机运行所述第二虚拟机中已 部署的所述第一应用之前, 所述方法还包括:
    确定所述第二虚拟机具有足够的空闲资源部署所述第一应用,在所述第二 虚拟机中部署所述第一应用。
  19. 19、 一种云应用部署方法, 其特征在于, 包括:
    生成应用部署请求;
    向云服务供应商 CSP服务器发送所述应用部署请求, 其中, 所述应用部署 请求携带有第一应用对应的节点模版、 第二应用对应的节点模版, 所述第一应 用对应的节点模版中包含所述第一应用对应的应急策略,所述第一应用对应的 应急策略描述了所述第一应用和所述第二应用之间具有应急关系。
  20. 20、 根据权利要求 19所述的方法, 其特征在于,
    所述应用部署请求还携带有驻留关系模板,所述驻留关系模板描述的所述 第一应用和第三应用之间的驻留关系为所述第一应用驻留于所述第三应用,或 者,所述驻留关系模板描述的所述第一应用和第三应用之间的驻留关系为所述 第一应用和所述第三应用相互驻留。
  21. 21、 一种计算机存储介质, 其特征在于,
    所述计算机存储介质存储有程序,所述程序执行时包括如权利要求 13至 20 任一项所述的步骤。
CN201480000879.8A 2014-04-23 2014-04-23 云应用处理方法和应用部署方法及相关装置和系统 Active CN105210326B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2014/076057 WO2015161472A1 (zh) 2014-04-23 2014-04-23 云应用处理方法和应用部署方法及相关装置和系统

Publications (2)

Publication Number Publication Date
CN105210326A true CN105210326A (zh) 2015-12-30
CN105210326B CN105210326B (zh) 2019-02-01

Family

ID=54331609

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201480000879.8A Active CN105210326B (zh) 2014-04-23 2014-04-23 云应用处理方法和应用部署方法及相关装置和系统

Country Status (5)

Country Link
US (1) US10313424B2 (zh)
EP (1) EP3125468B1 (zh)
JP (1) JP6293306B2 (zh)
CN (1) CN105210326B (zh)
WO (1) WO2015161472A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106406980A (zh) * 2016-09-06 2017-02-15 青岛海信传媒网络技术有限公司 一种虚拟机的部署方法和装置
CN108337289A (zh) * 2017-12-15 2018-07-27 中金数据(武汉)超算技术有限公司 一种操作指令处理方法及系统
CN112698908A (zh) * 2019-10-23 2021-04-23 阿里巴巴集团控股有限公司 云计算资源的伸缩处理方法及装置、存储介质及处理器

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9813421B2 (en) * 2014-05-20 2017-11-07 Box, Inc. Systems and methods for secure resource access and network communication
CN106548262B (zh) 2015-09-21 2020-11-06 阿里巴巴集团控股有限公司 用于处理任务的资源的调度方法、装置和系统
TWI598744B (zh) * 2017-03-16 2017-09-11 廣達電腦股份有限公司 雲端資源之管理系統及其管理方法
US11513828B1 (en) * 2017-04-03 2022-11-29 Parallels International Gmbh System and method for rapid cloning of virtual machines under load balancing
US20190250946A1 (en) * 2018-02-13 2019-08-15 International Business Machines Corporation Migrating a software container taking into account resource constraints
JP7166765B2 (ja) * 2018-02-28 2022-11-08 富士フイルム株式会社 アプリケーション提供装置、アプリケーション提供方法、およびアプリケーション提供プログラム
US11301285B1 (en) 2020-01-30 2022-04-12 Parallels International Gmbh Methods and systems for seamless virtual machine changing for software applications
CN112256348B (zh) * 2020-10-23 2023-12-22 北京浪潮数据技术有限公司 一种云服务平台创建方法、系统及电子设备和存储介质
US11368539B1 (en) * 2021-05-27 2022-06-21 International Business Machines Corporation Application deployment in a multi-cluster environment

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101883029A (zh) * 2009-05-05 2010-11-10 埃森哲环球服务有限公司 云中的应用移植方法和系统
US20120254443A1 (en) * 2011-03-30 2012-10-04 International Business Machines Corporation Information processing system, information processing apparatus, method of scaling, program, and recording medium
CN103197952A (zh) * 2012-01-09 2013-07-10 华为技术有限公司 基于云基础设施的针对应用系统维护部署的管理系统和方法
CN103634128A (zh) * 2012-08-21 2014-03-12 中兴通讯股份有限公司 虚拟机放置策略的配置方法及装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4189379B2 (ja) * 2004-12-27 2008-12-03 株式会社日立製作所 アプリケーション運用制御方法およびシステム
WO2008084826A1 (ja) * 2007-01-11 2008-07-17 Nec Corporation プロビジョニングシステム、方法、及び、プログラム
WO2010127365A1 (en) * 2009-05-01 2010-11-04 Citrix Systems, Inc. Systems and methods for establishing a cloud bridge between virtual storage resources
JP5487951B2 (ja) 2009-12-22 2014-05-14 富士通株式会社 運用管理プログラム、運用管理装置および運用管理方法
US8631403B2 (en) * 2010-01-04 2014-01-14 Vmware, Inc. Method and system for managing tasks by dynamically scaling centralized virtual center in virtual infrastructure

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101883029A (zh) * 2009-05-05 2010-11-10 埃森哲环球服务有限公司 云中的应用移植方法和系统
US20120254443A1 (en) * 2011-03-30 2012-10-04 International Business Machines Corporation Information processing system, information processing apparatus, method of scaling, program, and recording medium
CN103197952A (zh) * 2012-01-09 2013-07-10 华为技术有限公司 基于云基础设施的针对应用系统维护部署的管理系统和方法
CN103634128A (zh) * 2012-08-21 2014-03-12 中兴通讯股份有限公司 虚拟机放置策略的配置方法及装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106406980A (zh) * 2016-09-06 2017-02-15 青岛海信传媒网络技术有限公司 一种虚拟机的部署方法和装置
CN108337289A (zh) * 2017-12-15 2018-07-27 中金数据(武汉)超算技术有限公司 一种操作指令处理方法及系统
CN108337289B (zh) * 2017-12-15 2020-09-08 中金数据(武汉)超算技术有限公司 一种操作指令处理方法及系统
CN112698908A (zh) * 2019-10-23 2021-04-23 阿里巴巴集团控股有限公司 云计算资源的伸缩处理方法及装置、存储介质及处理器

Also Published As

Publication number Publication date
EP3125468A4 (en) 2017-04-12
CN105210326B (zh) 2019-02-01
EP3125468A1 (en) 2017-02-01
US20170041379A1 (en) 2017-02-09
JP6293306B2 (ja) 2018-03-14
US10313424B2 (en) 2019-06-04
EP3125468B1 (en) 2019-01-02
WO2015161472A1 (zh) 2015-10-29
JP2017514235A (ja) 2017-06-01

Similar Documents

Publication Publication Date Title
CN105210326A (zh) 云应用处理方法和应用部署方法及相关装置和系统
EP3200393B1 (en) Method and device for virtual network function management
US20150111567A1 (en) Apparatus for End-User Transparent Utilization of Computational, Storage, and Network Capacity of Mobile Devices, and Associated Methods
CN105183554A (zh) 高性能计算与云计算混合计算系统及其资源管理方法
CN102594861A (zh) 一种多服务器负载均衡的云存储系统
CN108132827B (zh) 一种网络切片资源映射方法、相关设备及系统
CN107818104B (zh) 一种数据库部署方法、数据库部署装置、控制设备及系统
CN107920117B (zh) 一种资源管理方法、控制设备和资源管理系统
CN107122229A (zh) 一种虚拟机恢复方法及装置
CN109347716B (zh) 消费者vnf的实例化方法及装置
CN105095103A (zh) 用于云环境下的存储设备管理方法和装置
CN110262893A (zh) 配置镜像内存的方法、装置及计算机存储介质
CN110083433A (zh) 嵌入式软件运行方法及装置、终端和计算机可读存储介质
Hu et al. A green private cloud architecture with global collaboration
CN105404530A (zh) 一种实现简易部署和使用私有云的系统及方法
CN114546648A (zh) 任务处理方法及任务处理平台
CN104219290B (zh) 一种多模块云应用弹性配置方法
CN109347661A (zh) 消费者vnf的实例化方法及装置
CN105159784A (zh) 一种虚拟服务器的部署方法及系统
CN113590304A (zh) 一种业务数据处理方法、装置、计算机设备及存储介质
CN111221620B (zh) 存储方法、装置及存储介质
CN114944971B (zh) Kubernetes部署网络的方法及装置、电子设备和存储介质
CN107704618B (zh) 一种基于aufs文件系统的热迁徙方法和系统
CN109343935A (zh) 消费者vnf的实例化方法及装置
CN112015515B (zh) 一种虚拟网络功能的实例化方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant