CN106095524B - 一种虚拟机部署方法、系统和装置 - Google Patents

一种虚拟机部署方法、系统和装置 Download PDF

Info

Publication number
CN106095524B
CN106095524B CN201610370615.2A CN201610370615A CN106095524B CN 106095524 B CN106095524 B CN 106095524B CN 201610370615 A CN201610370615 A CN 201610370615A CN 106095524 B CN106095524 B CN 106095524B
Authority
CN
China
Prior art keywords
virtual machine
operating system
physical server
buffer scheduling
shared memory
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.)
Active
Application number
CN201610370615.2A
Other languages
English (en)
Other versions
CN106095524A (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.)
China Mobile Communications Group Co Ltd
Original Assignee
China Mobile Communications Group 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 China Mobile Communications Group Co Ltd filed Critical China Mobile Communications Group Co Ltd
Priority to CN201610370615.2A priority Critical patent/CN106095524B/zh
Publication of CN106095524A publication Critical patent/CN106095524A/zh
Application granted granted Critical
Publication of CN106095524B publication Critical patent/CN106095524B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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
    • 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/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

本发明的实施例提供了一种虚拟机部署方法、系统和装置。该方法包括:识别虚拟机的是否高可用属性标签,根据所述是否高可用属性标签,判断该虚拟机是否具有高可用属性,如果是,将该虚拟机的映像文件存储在共享存储空间上,否则,将该虚拟机的映像文件存储在物理服务器的本地存储空间上;其中,所述是否高可用属性标签用于标识虚拟机是否是具有高可用属性。应用本发明能提高虚拟机的I/O性能。

Description

一种虚拟机部署方法、系统和装置
技术领域
本发明涉及虚拟机技术领域,尤其涉及一种虚拟机部署方法、系统和装置。
背景技术
服务器虚拟化是一种对服务器计算资源的抽象,通过在一台物理服务器的基础上将资源划分为多个相互独立的“虚拟”的软件运行环境,即划分为多个相互独立的虚拟机,从而将CPU、内存、I/O等服务器物理资源转化为一组统一管理、可灵活调度、动态分配的逻辑资源,每个虚拟机各自拥有计算、存储和网络等逻辑资源,并在其基础上运行各自的操作系统和应用。
虚拟化技术有利于提高服务器的资源利用率,解决不同应用系统资源利用不均衡的问题,满足业务应用对资源的动态变化需求,降低企业IT系统TCO(Total CostofOwnership),是云计算的核心基础技术之一。目前,应用在基于X86标准架构的PC服务器(以下简称X86服务器)上的虚拟化技术比较成熟,正在得到越来越广泛的应用。
X86服务器多采用底层硬件模拟技术实现虚拟化,利用虚拟机管理程序Hypervisor(也叫虚拟机监视器VMM-Virtual Machine Monitor)来模拟底层硬件的功能,为上层操作系统提供虚拟的运行环境-虚拟机。
Hypervisor是运行于物理服务器上的软件层,管理其上的虚拟机,帮助虚拟机分享物理服务器的硬件资源。通过Hypervisor的软件功能,将物理服务器中的CPU、内存、I/O等资源进行抽象化,将原先与具体物理服务器和物理设备绑定的资源转化为可以统一分配和管理的一组逻辑资源。Hypervisor实现从虚拟资源到物理资源的映射,当虚拟机中的操作系统通过指令访问系统资源时,Hypervisor将接管其请求,并进行相应的处理。
虚拟机为用户提供与原有物理服务器类似的运行环境,用于安装并使用操作系统和应用程序。虚拟服务器使用物理服务器的部分资源,在用户看来它与物理服务器的使用完全相同。从操作系统的角度来看,运行在虚拟机上与运行在其对应的物理服务器上几乎没有区别。
在企业级应用中,X86服务器虚拟化主要采用裸金属架构,即直接将Hypervisor安装在服务器硬件设备中,以获得服务器的最佳性能。Hypervisor运行在物理机的裸硬件上,充当主机操作系统,而由Hypervisor管理的虚拟机运行客户端操作系统(GuestOS)。
图1是目前的虚拟机部署示意图。
图1中,为了保证一个服务器集群的高可用性(High Availability,HA),X86服务器采用共享存储的方式实现虚拟化。
具体地,虚拟机以一个特定的文件封装格式储存在共享存储系统的磁盘上,虚拟化管理系统确定虚拟机启动时在哪个物理服务器上运行,并对各个物理服务器上的虚拟机监视器进行管理。
其中,共享存储系统是通过各种存储设备和网络设备形成的虚拟化环境中的集中存储,通常包括SAN、iSCSI、NAS等不同类型的共享存储设备。物理服务器通过SAN交换机或光纤、IP网络等连接相应的共享存储设备,当虚拟机启动时,虚拟化管理系统可以根据所需的策略选择在某个物理服务器上运行该虚拟机。
采取共享存储的方式实现X86服务器虚拟化存在如下缺点:
当一个服务器集群中同时运行的的虚拟机数量比较多时,受到共享存储的磁盘I/O能力限制,或者连接共享存储的网络带宽限制,当众多虚拟机同时访问共享存储时,各虚拟机会出现存储I/O性能降低的情况,导致存储成为整个系统的瓶颈。
另外,对于存储在共享存储设备上的虚拟机,无论其上是否运行存储密集型的应用,该虚拟机上的GuestOS都需要频繁的访问共享存储进行读写操作,也导致了虚拟机I/O性能降低。
发明内容
有鉴于此,本发明提供了一种虚拟机部署方法、系统和装置,从而提高虚拟机的I/O性能。
本发明的技术方案具体是这样实现的:
一种虚拟机部署方法,该方法包括:
识别虚拟机的是否高可用属性标签,根据所述是否高可用属性标签,判断该虚拟机是否具有高可用属性,如果是,将该虚拟机的映像文件存储在共享存储空间上,否则,将该虚拟机的映像文件存储在物理服务器的本地存储空间上;
其中,所述是否高可用属性标签用于标识虚拟机是否是具有高可用属性。
一种虚拟机部署方法,该方法包括:
识别在共享存储空间上存储映像文件的虚拟机的缓存调度属性标签,根据所述缓存调度属性标签,判断是否需要将该虚拟机的操作系统缓存调度到该虚拟机当前运行的物理服务器的本地存储空间上;
在需要将所述虚拟机的操作系统缓存调度到该虚拟机当前运行的物理服务器的本地存储空间上时,在该物理服务器预先划分的专门存储区域上,生成该虚拟机的操作系统缓存文件或分区;
其中,在每台物理服务器的本地存储空间中,预先划分有专门存储区域,用于存储在该物理服务器上运行的虚拟机的操作系统缓存。
一种虚拟机部署系统,该系统包括属性配置模块和部署管理模块;
所述属性配置模块,用于根据虚拟机是否具有高可用属性,为所述虚拟机配置是否高可用属性标签;
所述部署管理模块,用于识别虚拟机的是否高可用属性标签,根据所述是否高可用属性标签,判断该虚拟机是否具有高可用属性,如果是,将该虚拟机的映像文件存储在共享存储空间上,否则,将该虚拟机的映像文件存储在物理服务器的本地存储空间上。
一种虚拟机部署系统,该系统包括属性配置模块和部署管理模块;
所述属性配置模块,用于为在共享存储空间上存储映像文件的虚拟机配置缓存调度属性标签;
所述部署管理模块,用于识别在共享存储空间上存储映像文件的虚拟机的缓存调度属性标签,根据所述缓存调度属性标签,判断是否需要将该虚拟机的操作系统缓存调度到该虚拟机当前运行的物理服务器的本地存储空间上,在需要将所述虚拟机的操作系统缓存调度到该虚拟机当前运行的物理服务器的本地存储空间上时,在该物理服务器预先划分的专门存储区域上,生成该虚拟机的操作系统缓存文件或分区,其中,所述部署管理模块在每台物理服务器的本地存储空间中,预先划分有专门存储区域,用于存储在该物理服务器上运行的虚拟机的操作系统缓存。
一种虚拟机部署装置,该装置包括识别模块和部署模块;
所述识别模块,用于识别虚拟机的是否高可用属性标签;
所述部署模块,用于根据所述是否高可用属性标签,判断该虚拟机是否具有高可用属性,如果是,将该虚拟机的映像文件存储在共享存储空间上,否则,将该虚拟机的映像文件存储在物理服务器的本地存储空间上。
一种虚拟机部署装置,该装置包括识别模块和部署模块;
所述识别模块,用于识别在共享存储空间上存储映像文件的虚拟机的缓存调度属性标签,根据所述缓存调度属性标签,判断是否需要将该虚拟机的操作系统缓存调度到该虚拟机当前运行的物理服务器的本地存储空间上;
所述部署模块,用于在需要将所述虚拟机的操作系统缓存调度到该虚拟机当前运行的物理服务器的本地存储空间上时,在该物理服务器预先划分的专门存储区域上,生成该虚拟机的操作系统缓存文件或分区,其中,所述部署模块在每台物理服务器的本地存储空间中,预先划分有专门存储区域,用于存储在该物理服务器上运行的虚拟机的操作系统缓存。
由上述技术方案可见,本发明根据虚拟机的是否高可用属性标签,在虚拟机不具有高可用属性时,将虚拟机的映像文件存储在物理服务器的本地存储空间,或者根据在共享存储空间上存储映像文件的虚拟机的缓存调度属性标签,将虚拟机的操作系统缓存调度到该虚拟机当前运行的物理服务器的本地存储空间上,由于充分利用了物理服务器本地的存储空间,避免了将所有虚拟机、或者所有虚拟机的操作系统缓存都存储在共享存储空间,从而避免了由于共享存储空间存储的虚拟机映像文件和操作系统缓存过多而导致的I/O性能降低问题,提高了虚拟机的I/O性能。
附图说明
图1是目前的虚拟机部署示意图。
图2是本发明提供的虚拟机映像文件在共享存储和本地存储之间部署的方法流程图。
图3是本发明提供的虚拟机映像文件在共享存储和本地存储之间调度的方法流程图。
图4是本发明提供的虚拟机的操作系统缓存在共享存储和本地存储之间部署的方法流程图。
图5是在虚拟机启动或重启时的操作系统缓存调度方法流程图。
图6是虚拟机进行在线迁移时的操作系统缓存调度方法流程图。
图7是当虚拟机关闭时的操作系统缓存调度方法流程图。
图8是本发明提供的虚拟机部署系统的组成示意图。
图9是本发明提供的虚拟机部署装置结构图。
图10是对虚拟机的操作系统缓存进行调度的示意图。
具体实施方式
本发明提供的技术方案,根据虚拟机的是否高可用属性标签,在虚拟机不具有高可用属性时,将虚拟机的映像文件存储在物理服务器的本地存储空间,或者根据在共享存储空间上存储映像文件的虚拟机的缓存调度属性标签,将虚拟机的操作系统缓存调度到该虚拟机当前运行的物理服务器的本地存储空间上,从而充分利用了物理服务器的本地存储空间,避免了将所有虚拟机和其操作系统缓存都存储在共享存储空间所导致的I/O性能降低问题。
另外,由于本发明提供的技术方案在虚拟机具有高可用属性时,将虚拟机的映像文件存储在共享存储空间上,因此,也能够保证服务器集群的高可用性:当集群中某个物理服务器出现故障时,在该物理服务器上运行的、具有高可用属性的虚拟机,由于其映像文件存储在共享存储空间上,因此能够在集群内的其他物理服务器上重新启动,虚拟机上的应用系统也能得到及时的恢复,并且,具有高可用属性的虚拟机还能够在集群内方便地进行在线迁移。
本发明对虚拟机在共享存储和物理服务器本地存储之间的部署和调度包含两个层面:其一,虚拟机映像文件在共享存储和本地存储之间的部署和调度,其二,对于映像文件存储在共享存储空间的虚拟机,其操作系统(GuestOS)的系统缓存在共享存储和本地存储之间的部署和调度。下面分别进行介绍:
图2是本发明提供的虚拟机映像文件在共享存储和本地存储之间部署的方法流程图。
如图2所示,该方法包括:
步骤201,识别虚拟机的是否高可用属性标签。
本步骤中,所述是否高可用属性标签用于标识虚拟机是否是具有高可用属性,通过预先为每个虚拟机进行配置得到。
步骤202,根据所述是否高可用属性标签,判断该虚拟机是否具有高可用属性,如果是,执行步骤203,否则,执行步骤204。
步骤203,将该虚拟机的映像文件存储在共享存储空间上。
本步骤中,通过将虚拟机的映像文件存储在共享存储空间上,实现了将虚拟机部署在共享存储空间。
步骤204,将该虚拟机的映像文件存储在物理服务器的本地存储空间上。
本步骤中,通过将虚拟机的映像文件存储在物理服务器的本地存储空间上,实现了将虚拟机部署在物理服务器的本地存储空间。
图2所示方法中,在将该虚拟机的映像文件存储在物理服务器的本地存储空间上时,可以采用负载均衡或者节能省电的模式。
当采用负载均衡模式时,系统监控并计算每个物理服务器当前运行的虚拟机数量和/或系统负荷,根据所述虚拟机数量和/或系统负荷,优先将虚拟机部署在系统负荷较小的物理服务器上,以使整个虚拟化系统中的物理服务器的负荷相对均衡。其中,可以简单地根据虚拟机数量判断系统负荷,进而选择系统负荷较小的物理服务器,也可以根据具体的系统负荷监测值选择系统负荷较小的物理服务器,或者,也可以综合考虑虚拟机数量和具体的系统负荷监测值,选择系统负荷较小的物理服务器。
当采用节能省电模式时,系统仍然监控并计算每个物理机当前运行的虚拟机数量和/或系统负荷,优先将虚拟机部署在已经有一定数量虚拟机运行的物理服务器上,从而将没有虚拟机运行的物理服务器释放并关闭,以达到节能省电的目的。
图3是本发明提供的虚拟机映像文件在共享存储和本地存储之间调度的方法流程图。
如图3所示,该方法包括:
步骤301,监控虚拟机的是否高可用属性标签是否发生变更,如果虚拟机的是否高可用属性标签由不具有高可用属性变为具有高可用属性,执行步骤302,如果虚拟机的是否高可用属性标签由具有高可用属性变为不具有高可用属性,执行步骤303。
步骤302,将该虚拟机的映像文件从物理服务器的本地存储空间迁移至所述共享存储空间上。
步骤303,将该虚拟机的映像文件从所述共享存储空间迁移至物理服务器的本地存储空间上。
按照图3所示方法将虚拟机在共享存储空间和物理服务器的本地存储空间之间进行迁移时,仍然可以采用所述负载均衡或者节能省电的模式,此处不赘述。
本发明在将虚拟机的操作系统缓存在共享存储空间和物理服务器本地存储空间之间进行部署和调度时,需要预先为每个虚拟机新增缓存调度属性标签,该属性标签可以包括进行缓存调度,不进行缓存调度和系统自动三种取值,该属性标签仅对其映像文件存储在共享存储上的虚拟机有效。
图4是本发明提供的虚拟机的操作系统缓存在共享存储和本地存储之间部署的方法流程图。
如图4所示,该方法包括:
步骤401,识别在共享存储空间上存储映像文件的虚拟机的缓存调度属性标签。
步骤402,根据所述缓存调度属性标签,判断是否需要将该虚拟机的操作系统缓存调度到该虚拟机当前运行的物理服务器的本地存储空间上。
步骤403,在需要将所述虚拟机的操作系统缓存调度到该虚拟机当前运行的物理服务器的本地存储空间上时,在该物理服务器预先划分的专门存储区域上,生成该虚拟机的操作系统缓存文件或分区。
其中,在每台物理服务器的本地存储空间中,预先划分有专门存储区域,用于存储在该物理服务器上运行的虚拟机的操作系统缓存。
下面针对缓存调度标签的不同取值,对其缓存调度的具体方法进行介绍。
当缓存调度标签取值为进行缓存调度时,虚拟机操作系统缓存的调度方法流程参见图5~图7。
图5是在虚拟机启动或重启时的操作系统缓存调度方法流程图。
如图5所示,该流程包括:
步骤501,根据资源分配策略在相应的物理服务器上,从共享存储中载入需要启动的虚拟机映像文件。
步骤502,根据虚拟机GuestOS上设置的系统缓存大小要求,在物理服务器本地存储事先划分的区域中分配相应的存储空间。
步骤503,将虚拟机GuestOS的系统缓存指向分配好的物理服务器本地存储,对于Windows操作系统,将页面文件,对于Linux操作系统,将交换分区或交换文件储存在虚拟机运行的物理服务器的本地存储上。
当虚拟机完全启动以后,虚拟机操作系统的其他内容与应用程序仍然储存于共享存储空间。
图6是虚拟机进行在线迁移时的操作系统缓存调度方法流程图。
如图6所示,该流程包括:
步骤601,根据虚拟机GuestOS的系统缓存大小要求,在目标物理服务器本地存储事先划分的区域中分配相应的存储空间。
步骤602,对虚拟机进行迁移,在拷贝虚拟机内存的同时,将虚拟机在原物理服务器本地存储上的系统缓存拷贝至目标物理服务器上分配好的本地存储中。
步骤603,释放虚拟机在原物理服务器本地存储中的系统缓存空间。
图7是当虚拟机关闭时的操作系统缓存调度方法流程图。其中,对于虚拟化系统,虚拟机关闭状态通常为系统休眠状态。
如图7所示,该流程包括:
步骤701,将虚拟机的所有相关内容在共享存储上对应的映像文件中进行保存。
步骤702,释放虚拟机在物理服务器本地存储上的系统缓存空间。
当缓存调度标签取值为不进行缓存调度时,虚拟化系统按照传统的运行方式,不对虚拟机的GuestOS系统缓存进行调度操作,虚拟机的操作系统缓存仍然储存于共享存储上。
当缓存调度标签取值为自动进行缓存调度时,需要对虚拟机的磁盘I/O性能数据进行监控、收集和分析。当虚拟机的磁盘I/O性能出现瓶颈,达到预设的上限,和/或占用共享存储带宽过多,达到预设的上限时,将虚拟机GuestOS的系统缓存从共享存储转移至该虚拟机所运行的物理服务器的本地存储上。系统缓存调度的具体方法与缓存调度标签取值为进行缓存调度时相同。
当缓存调度标签取值为自动进行缓存调度时,本发明还可以在虚拟机的磁盘I/O减少,达到预设的下限,和/或占用共享存储带宽较小,达到预设的下限时,将虚拟机GuestOS的系统缓存从该虚拟机所运行的物理服务器的本地存储转移至共享存储上。
由于虚拟机在其物理服务器本地存储上储存的是系统缓存,与其使用的物理服务器的物理内存情况类似,不包含虚拟机内重要的应用数据与操作系统数据。当需要对虚拟机进行故障重启或者在线迁移等操作时,虚拟机的系统缓存可以很容易的在集群内任意物理服务器的本地存储上重启或拷贝,不会影响集群系统的高可用性。
本发明采用共享存储与本地存储相结合的方法,对虚拟机的映像文件或虚拟机的操作系统缓存进行部署和调度,从而提高虚拟机的I/O性能。
在实际虚拟机系统中,可以通过在虚拟机系统中增加配置模块,用于为虚拟机配置相应的属性标签,在虚拟机系统中的虚拟化管理系统中和/或虚拟机监视器中增加部署管理模块,用于根据所述属性标签来进行虚拟机的部署和调度,来实现本发明提供的虚拟机部署和调度方法,具体请参见图8。
图8是本发明提供的虚拟机部署系统的组成示意图。
如图8所示,在虚拟化管理系统增加了第一部署管理模块801、在Hypervisor中增加了第二部署管理模块802,用于实现本发明中根据属性标签对虚拟机或者其操作系统缓存在共享存储和本地存储之间进行调度的功能。在图8所示系统中,还存在配置模块(图8未示出),所述配置模块可以部署在虚拟化管理系统中,也可以部署在Hypervisor中,用于为虚拟机配置属性标签。
当根据虚拟机的是否高可用属性标签,对虚拟机在共享存储和本地存储之间进行调度时,可以只在虚拟化管理系统中增加第一部署管理模块801。
所述属性配置模块,用于根据虚拟机是否具有高可用属性,为所述虚拟机配置是否高可用属性标签。
第一部署管理模块801,用于识别虚拟机的是否高可用属性标签,根据所述是否高可用属性标签,判断该虚拟机是否具有高可用属性,如果是,将该虚拟机的映像文件存储在共享存储空间上,否则,将该虚拟机的映像文件存储在物理服务器的本地存储空间上。
第一部署管理模块801,用于监控并计算每个物理服务器当前的系统负荷和/或当前运行的虚拟机数量,在虚拟机不具有高可用属性时,根据每个物理服务器当前的系统负荷和/或当前运行的虚拟机数量,依据系统负载均衡原则或节能省电原则选择物理服务器,将所述虚拟机的映像文件存储在选定的物理服务器上。
第一部署管理模块801,用于监控虚拟机的是否高可用属性标签是否发生变更,在虚拟机的是否高可用属性标签由不具有高可用属性变为具有高可用属性时,将该虚拟机的映像文件从物理服务器的本地存储空间迁移至所述共享存储空间上,在虚拟机的是否高可用属性标签由具有高可用属性变为不具有高可用属性时,将该虚拟机的映像文件从所述共享存储空间迁移至物理服务器的本地存储空间上。
当根据虚拟机的缓存调度属性标签,对虚拟机的操作系统缓存在共享存储和本地存储之间进行调度时,通常需要在虚拟化管理系统中增加第一部署管理模块801、并在虚拟机监视器中增加第二部署管理模块802,也可以仅在虚拟化管理系统中增加第一部署管理模块801或仅在虚拟机监视器中增加第二部署管理模块802。具体地:
所述属性配置模块,用于为在共享存储空间上存储映像文件的虚拟机配置缓存调度属性标签。
部署管理模块,用于识别在共享存储空间上存储映像文件的虚拟机的缓存调度属性标签,根据所述缓存调度属性标签,判断是否需要将该虚拟机的操作系统缓存调度到该虚拟机当前运行的物理服务器的本地存储空间上,在需要将所述虚拟机的操作系统缓存调度到该虚拟机当前运行的物理服务器的本地存储空间上时,在该物理服务器预先划分的专门存储区域上,生成该虚拟机的操作系统缓存文件或分区,其中,所述部署管理模块在每台物理服务器的本地存储空间中,预先划分有专门存储区域,用于存储在该物理服务器上运行的虚拟机的操作系统缓存。
所述部署管理模块,用于在所述缓存调度属性标签为进行缓存调度时,将映像文件存储在共享存储空间的虚拟机的操作系统缓存,调度到该虚拟机当前运行的物理服务器的本地存储空间上;或者,在所述缓存调度属性标签为不进行缓存调度时,将映像文件存储在共享存储空间的虚拟机的操作系统缓存,也存储在共享存储空间;或者,在所述缓存调度属性标签为自动进行缓存调度时,对映像文件存储在共享存储空间的虚拟机的磁盘I/O性能数据和/或占用的共享存储带宽进行监控和分析,在所述磁盘I/O性能数据达到预设上限值和/或所述占用的共享存储带宽达到预设上限值时,将所述虚拟机的操作系统缓存从共享存储空间调度到所述虚拟机当前运行的物理服务器的本地存储空间,和/或,在所述磁盘I/O性能数据达到预设下限值和/或所述占用的共享存储带宽达到预设下限值时,将所述虚拟机的操作系统缓存从所述虚拟机当前运行的物理服务器的本地存储空间调度到共享存储空间。
当在虚拟化管理系统中增加第一部署管理模块801、并在虚拟机监视器中增加第二部署管理模块802时:
第一部署管理模块801,用于识别在共享存储空间上存储映像文件的虚拟机的缓存调度属性标签,根据所述缓存调度属性标签,判断是否需要将该虚拟机的操作系统缓存调度到该虚拟机当前运行的物理服务器的本地存储空间上,在需要将所述虚拟机的操作系统缓存调度到该虚拟机当前运行的物理服务器的本地存储空间上时,在每台物理服务器的本地存储空间中,划分专门存储区域,用于存储在该物理服务器上运行的虚拟机的操作系统缓存。
第二部署管理模块802,用于在需要将所述虚拟机的操作系统缓存调度到该虚拟机当前运行的物理服务器的本地存储空间上时,在该物理服务器预先划分的专门存储区域上,生成该虚拟机的操作系统缓存文件或分区。
第一部署管理模块801,可以具体用于在所述缓存调度属性标签为进行缓存调度时,判定需要将映像文件存储在共享存储空间的虚拟机的操作系统缓存调度到该虚拟机当前运行的物理服务器的本地存储空间上,在所述缓存调度属性标签为不进行缓存调度时,判定不需要将映像文件存储在共享存储空间的虚拟机的操作系统缓存调度到该虚拟机当前运行的物理服务器的本地存储空间上,在所述缓存调度属性标签为自动进行缓存调度时,对映像文件存储在共享存储空间的虚拟机的磁盘I/O性能数据和/或占用的共享存储带宽进行监控和分析,在所述磁盘I/O性能数据达到预设上限值和/或所述占用的共享存储带宽达到预设上限值时,判定需要将所述虚拟机的操作系统缓存从共享存储空间调度到所述虚拟机当前运行的物理服务器的本地存储空间,和/或,在所述磁盘I/O性能数据达到预设下限值和/或所述占用的共享存储带宽达到预设下限值时,判定需要将所述虚拟机的操作系统缓存从所述虚拟机当前运行的物理服务器的本地存储空间调度到共享存储空间。
第二部署管理模块802,还可以用于在需要将所述虚拟机的操作系统缓存从所述虚拟机当前运行的物理服务器的本地存储空间调度到共享存储空间时,将所述虚拟机的操作系统缓存存储在所述共享存储空间,并释放所述虚拟机的操作系统缓存在物理服务器上占用的本地存储空间。
本发明还提供了虚拟机部署装置,具体请参见图9。
图9是本发明提供的虚拟机部署装置结构图。
如图9所示,该虚拟机部署装置包括识别模块901和部署模块902。
识别模块901,用于识别虚拟机的是否高可用属性标签。
部署模块902,用于根据所述是否高可用属性标签,判断该虚拟机是否具有高可用属性,如果是,将该虚拟机的映像文件存储在共享存储空间上,否则,将该虚拟机的映像文件存储在物理服务器的本地存储空间上。或者:
识别模块901,用于识别在共享存储空间上存储映像文件的虚拟机的缓存调度属性标签,根据所述缓存调度属性标签,判断是否需要将该虚拟机的操作系统缓存调度到该虚拟机当前运行的物理服务器的本地存储空间上。
部署模块902,用于在需要将所述虚拟机的操作系统缓存调度到该虚拟机当前运行的物理服务器的本地存储空间上时,在该物理服务器预先划分的专门存储区域上,生成该虚拟机的操作系统缓存文件或分区,其中,所述部署模块在每台物理服务器的本地存储空间中,预先划分有专门存储区域,用于存储在该物理服务器上运行的虚拟机的操作系统缓存。
由上述方案可见,本发明通过在X86等虚拟化系统的虚拟化管理中新增模块,为每一个虚拟机新增是否需要高可用的属性标签,新增模块根据所述属性标签对虚拟机在共享存储和本地存储之间进行调度,既满足了X86虚拟化系统的高可用性需求,又解决了现有系统采用共享存储时的I/O瓶颈问题,还充分利用了物理服务器的本地存储。
本发明通过在X86等虚拟化系统的虚拟化管理和物理服务器的Hypervisor中新增模块,为每个在共享存储上存储映像文件的虚拟机新增是否进行缓存调度的属性标签,新增模块对在共享存储上存储映像文件的虚拟机的GuestOS缓存迁移至本地存储进行相应的管理,具体请参见图10。
图10是对虚拟机的操作系统缓存进行调度的示意图。
如图10所示,当虚拟机进行缓存调度时,虚拟机按照其事先设置好的存储路径或位置,在其运行的物理服务器的本地存储上生成所需的缓存文件或分区,维持虚拟机GuestOS的正常运行。其中,对于GuestOS为Windows操作系统的虚拟机,其系统缓存为页面文件(Pagefile);对于GuestOS为Linux操作系统的虚拟机,其系统缓存为交换分区(SWAP)或交换文件。
其中,系统在配置虚拟机时,通过虚拟化管理系统中新增的部署管理模块进行设置,在集群中每台物理服务器的本地存储中划分专门的存储区域,用于存放本机上运行的虚拟机GuestOS的虚拟内存,并对虚拟机的启动、迁移、关闭、重启等操作进行相应的管理操作。
由于虚拟机GuestOS对共享存储的操作主要集中在对操作系统缓存的读写,操作系统缓存在传统架构下与虚拟机的其他内容共同存储于共享存储上,虚拟机的操作系统在运行时需要频繁的对系统缓存进行读写操作,占用了共享存储的部分I/O能力。
本发明采用将虚拟机GuestOS操作系统的缓存迁移至本地存储的方法,将原先与虚拟机和其GuestOS存储位置绑定的系统缓存分离,通过将磁盘操作密集的操作系统级存储操作转移至本地存储,减少虚拟机对共享存储的磁盘操作数量,从而降低共享存储出现访问瓶颈的概率,提升整个系统的虚拟机存储I/O性能。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

Claims (8)

1.一种虚拟机部署方法,其特征在于,该方法包括:
识别在共享存储空间上存储映像文件的虚拟机的缓存调度属性标签,根据所述缓存调度属性标签,判断是否需要将该虚拟机的操作系统缓存调度到该虚拟机当前运行的物理服务器的本地存储空间上;
在需要将所述虚拟机的操作系统缓存调度到该虚拟机当前运行的物理服务器的本地存储空间上时,在该物理服务器预先划分的专门存储区域上,生成该虚拟机的操作系统缓存文件或分区;
其中,在每台物理服务器的本地存储空间中,预先划分有专门存储区域,用于存储在该物理服务器上运行的虚拟机的操作系统缓存;根据所述缓存调度属性标签,判断是否需要将该虚拟机的操作系统缓存调度到该虚拟机当前运行的物理服务器的本地存储空间上包括:
在所述缓存调度属性标签为进行缓存调度时,将映像文件存储在共享存储空间的虚拟机的操作系统缓存,调度到该虚拟机当前运行的物理服务器的本地存储空间上;
或者,在所述缓存调度属性标签为不进行缓存调度时,将映像文件存储在共享存储空间的虚拟机的操作系统缓存,也存储在共享存储空间;
或者,在所述缓存调度属性标签为自动进行缓存调度时,对映像文件存储在共享存储空间的虚拟机的磁盘I/O性能数据和/或占用的共享存储带宽进行监控和分析;在所述磁盘I/O性能数据达到预设上限值和/或所述占用的共享存储带宽达到预设上限值时,将所述虚拟机的操作系统缓存从共享存储空间调度到所述虚拟机当前运行的物理服务器的本地存储空间;和/或,在所述磁盘I/O性能数据达到预设下限值和/或所述占用的共享存储带宽达到预设下限值时,将所述虚拟机的操作系统缓存从所述虚拟机当前运行的物理服务器的本地存储空间调度到共享存储空间。
2.根据权利要求1所述的方法,其特征在于,所述在该物理服务器预先划分的专门存储区域上,生成该虚拟机的操作系统缓存文件或分区包括:
在虚拟机启动或重启时,根据虚拟机的操作系统缓存大小,在该虚拟机当前运行的物理服务器的本地存储空间预先划分的专门存储区域上,分配相应的存储空间,将该虚拟机的操作系统缓存文件或分区存储在所述相应的存储空间上。
3.根据权利要求1所述的方法,其特征在于,所述在该物理服务器预先划分的专门存储区域上,生成该虚拟机的操作系统缓存文件或分区包括:
在映像文件存储在共享存储空间的虚拟机从原物理服务器迁移到目标物理服务器上运行时,根据该虚拟机的操作系统缓存大小,在该目标物理服务器本地预先划分的专门存储区域内,分配相应的存储空间,将该虚拟机在原物理服务器本地存储空间上的操作系统缓存,拷贝至目标物理服务器上分配的相应存储空间,释放该虚拟机的操作系统缓存在原物理服务器上占用的本地存储空间。
4.根据权利要求1所述的方法,其特征在于,该方法还包括:
在映像文件存储在共享存储空间的虚拟机关闭时,释放该虚拟机的操作系统缓存在物理服务器本地占用的存储空间。
5.一种虚拟机部署系统,其特征在于,该系统包括属性配置模块和部署管理模块;
所述属性配置模块,用于为在共享存储空间上存储映像文件的虚拟机配置缓存调度属性标签;
所述部署管理模块,用于识别在共享存储空间上存储映像文件的虚拟机的缓存调度属性标签,根据所述缓存调度属性标签,判断是否需要将该虚拟机的操作系统缓存调度到该虚拟机当前运行的物理服务器的本地存储空间上,在需要将所述虚拟机的操作系统缓存调度到该虚拟机当前运行的物理服务器的本地存储空间上时,在该物理服务器预先划分的专门存储区域上,生成该虚拟机的操作系统缓存文件或分区,其中,所述部署管理模块在每台物理服务器的本地存储空间中,预先划分有专门存储区域,用于存储在该物理服务器上运行的虚拟机的操作系统缓存;
所述部署管理模块,用于在所述缓存调度属性标签为进行缓存调度时,将映像文件存储在共享存储空间的虚拟机的操作系统缓存,调度到该虚拟机当前运行的物理服务器的本地存储空间上;或者,在所述缓存调度属性标签为不进行缓存调度时,将映像文件存储在共享存储空间的虚拟机的操作系统缓存,也存储在共享存储空间;或者,在所述缓存调度属性标签为自动进行缓存调度时,对映像文件存储在共享存储空间的虚拟机的磁盘I/O性能数据和/或占用的共享存储带宽进行监控和分析,在所述磁盘I/O性能数据达到预设上限值和/或所述占用的共享存储带宽达到预设上限值时,将所述虚拟机的操作系统缓存从共享存储空间调度到所述虚拟机当前运行的物理服务器的本地存储空间,和/或,在所述磁盘I/O性能数据达到预设下限值和/或所述占用的共享存储带宽达到预设下限值时,将所述虚拟机的操作系统缓存从所述虚拟机当前运行的物理服务器的本地存储空间调度到共享存储空间。
6.根据权利要求5所述的系统,其特征在于,所述部署管理模块包括第一部署管理模块和第二部署管理模块,所述第一部署管理模块位于虚拟化管理系统中,所述第二部署管理模块位于虚拟机监视器中;
所述第一部署管理模块,用于识别在共享存储空间上存储映像文件的虚拟机的缓存调度属性标签,根据所述缓存调度属性标签,判断是否需要将该虚拟机的操作系统缓存调度到该虚拟机当前运行的物理服务器的本地存储空间上,在需要将所述虚拟机的操作系统缓存调度到该虚拟机当前运行的物理服务器的本地存储空间上时,在每台物理服务器的本地存储空间中,划分专门存储区域,用于存储在该物理服务器上运行的虚拟机的操作系统缓存;
所述第二部署管理模块,用于在需要将所述虚拟机的操作系统缓存调度到该虚拟机当前运行的物理服务器的本地存储空间上时,在该物理服务器预先划分的专门存储区域上,生成该虚拟机的操作系统缓存文件或分区。
7.根据权利要求6所述的系统,其特征在于,
所述第一部署管理模块,用于在所述缓存调度属性标签为进行缓存调度时,判定需要将映像文件存储在共享存储空间的虚拟机的操作系统缓存调度到该虚拟机当前运行的物理服务器的本地存储空间上,在所述缓存调度属性标签为不进行缓存调度时,判定不需要将映像文件存储在共享存储空间的虚拟机的操作系统缓存调度到该虚拟机当前运行的物理服务器的本地存储空间上,在所述缓存调度属性标签为自动进行缓存调度时,对映像文件存储在共享存储空间的虚拟机的磁盘I/O性能数据和/或占用的共享存储带宽进行监控和分析,在所述磁盘I/O性能数据达到预设上限值和/或所述占用的共享存储带宽达到预设上限值时,判定需要将所述虚拟机的操作系统缓存从共享存储空间调度到所述虚拟机当前运行的物理服务器的本地存储空间,和/或,在所述磁盘I/O性能数据达到预设下限值和/或所述占用的共享存储带宽达到预设下限值时,判定需要将所述虚拟机的操作系统缓存从所述虚拟机当前运行的物理服务器的本地存储空间调度到共享存储空间;
所述第二部署管理模块,还用于在需要将所述虚拟机的操作系统缓存从所述虚拟机当前运行的物理服务器的本地存储空间调度到共享存储空间时,将所述虚拟机的操作系统缓存存储在所述共享存储空间,并释放所述虚拟机的操作系统缓存在物理服务器上占用的本地存储空间。
8.一种虚拟机部署装置,其特征在于,该装置包括识别模块和部署模块;
所述识别模块,用于识别在共享存储空间上存储映像文件的虚拟机的缓存调度属性标签,根据所述缓存调度属性标签,判断是否需要将该虚拟机的操作系统缓存调度到该虚拟机当前运行的物理服务器的本地存储空间上;
所述部署模块,用于在需要将所述虚拟机的操作系统缓存调度到该虚拟机当前运行的物理服务器的本地存储空间上时,在该物理服务器预先划分的专门存储区域上,生成该虚拟机的操作系统缓存文件或分区,其中,所述部署模块在每台物理服务器的本地存储空间中,预先划分有专门存储区域,用于存储在该物理服务器上运行的虚拟机的操作系统缓存;
其中,根据所述缓存调度属性标签,判断是否需要将该虚拟机的操作系统缓存调度到该虚拟机当前运行的物理服务器的本地存储空间上包括:
在所述缓存调度属性标签为进行缓存调度时,将映像文件存储在共享存储空间的虚拟机的操作系统缓存,调度到该虚拟机当前运行的物理服务器的本地存储空间上;
或者,在所述缓存调度属性标签为不进行缓存调度时,将映像文件存储在共享存储空间的虚拟机的操作系统缓存,也存储在共享存储空间;
或者,在所述缓存调度属性标签为自动进行缓存调度时,对映像文件存储在共享存储空间的虚拟机的磁盘I/O性能数据和/或占用的共享存储带宽进行监控和分析;在所述磁盘I/O性能数据达到预设上限值和/或所述占用的共享存储带宽达到预设上限值时,将所述虚拟机的操作系统缓存从共享存储空间调度到所述虚拟机当前运行的物理服务器的本地存储空间;和/或,在所述磁盘I/O性能数据达到预设下限值和/或所述占用的共享存储带宽达到预设下限值时,将所述虚拟机的操作系统缓存从所述虚拟机当前运行的物理服务器的本地存储空间调度到共享存储空间。
CN201610370615.2A 2011-12-22 2011-12-22 一种虚拟机部署方法、系统和装置 Active CN106095524B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610370615.2A CN106095524B (zh) 2011-12-22 2011-12-22 一种虚拟机部署方法、系统和装置

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201610370615.2A CN106095524B (zh) 2011-12-22 2011-12-22 一种虚拟机部署方法、系统和装置
CN201110435661.3A CN103176845B (zh) 2011-12-22 2011-12-22 一种虚拟机部署方法、系统和装置

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201110435661.3A Division CN103176845B (zh) 2011-12-22 2011-12-22 一种虚拟机部署方法、系统和装置

Publications (2)

Publication Number Publication Date
CN106095524A CN106095524A (zh) 2016-11-09
CN106095524B true CN106095524B (zh) 2019-04-02

Family

ID=48636746

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201610370615.2A Active CN106095524B (zh) 2011-12-22 2011-12-22 一种虚拟机部署方法、系统和装置
CN201110435661.3A Active CN103176845B (zh) 2011-12-22 2011-12-22 一种虚拟机部署方法、系统和装置

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201110435661.3A Active CN103176845B (zh) 2011-12-22 2011-12-22 一种虚拟机部署方法、系统和装置

Country Status (1)

Country Link
CN (2) CN106095524B (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103389884A (zh) * 2013-07-29 2013-11-13 华为技术有限公司 处理输入/输出请求的方法、宿主机、服务器和虚拟机
CN103412828B (zh) * 2013-08-13 2016-12-28 华为技术有限公司 一种数据处理的方法和设备
CN104699521B (zh) * 2013-12-05 2017-12-01 中国移动通信集团公司 一种虚拟机在线迁移的方法、系统及装置
CN105022658B (zh) * 2014-04-30 2019-03-05 中国移动通信集团公司 一种虚拟机迁移方法、系统及相关装置
CN105306285B (zh) * 2014-05-29 2018-12-18 中国移动通信集团公司 虚机迁移时的邻节点时延检测方法及系统
CN105577904B (zh) * 2015-03-27 2019-04-12 酷派软件技术(深圳)有限公司 一种文件共享方法及移动终端
CN106528263B (zh) * 2016-10-21 2019-08-02 郑州云海信息技术有限公司 虚拟化环境中向虚拟机注入元信息并进行初始化的方法
CN108475201B (zh) * 2016-11-24 2021-02-26 华为技术有限公司 一种虚拟机启动过程中的数据获取方法和云计算系统
CN107544868B (zh) * 2017-05-11 2020-06-09 新华三云计算技术有限公司 数据恢复方法和装置
CN107145310A (zh) * 2017-05-24 2017-09-08 珠海金山网络游戏科技有限公司 一种实现网络存储io瓶颈优化的方法、装置及系统
CN107506230B (zh) * 2017-07-27 2020-10-27 努比亚技术有限公司 一种应用程序试用方法、设备及计算机可读存储介质
CN110908609B (zh) * 2019-11-22 2021-09-17 苏州浪潮智能科技有限公司 一种磁盘处理的方法、系统、设备及可读存储介质
CN112000606A (zh) * 2020-07-22 2020-11-27 中国建设银行股份有限公司 适用于部署应用集群的计算机集群和基础设施集群

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1696902A (zh) * 2004-05-11 2005-11-16 国际商业机器公司 迁移虚拟机的系统、方法和程序
CN101763226A (zh) * 2010-01-19 2010-06-30 北京航空航天大学 一种虚拟存储设备的缓存方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7203944B1 (en) * 2003-07-09 2007-04-10 Veritas Operating Corporation Migrating virtual machines among computer systems to balance load caused by virtual machines
US20060143256A1 (en) * 2004-12-28 2006-06-29 Galin Galchev Cache region concept
US7624240B1 (en) * 2006-10-17 2009-11-24 Vmware, Inc. Separate swap files corresponding to different virtual machines in a host computer system
CN101452406B (zh) * 2008-12-23 2011-05-18 北京航空航天大学 一种对操作系统透明的机群负载平衡方法
US8832683B2 (en) * 2009-11-30 2014-09-09 Red Hat Israel, Ltd. Using memory-related metrics of host machine for triggering load balancing that migrate virtual machine
US8327060B2 (en) * 2009-11-30 2012-12-04 Red Hat Israel, Ltd. Mechanism for live migration of virtual machines with memory optimizations

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1696902A (zh) * 2004-05-11 2005-11-16 国际商业机器公司 迁移虚拟机的系统、方法和程序
CN101763226A (zh) * 2010-01-19 2010-06-30 北京航空航天大学 一种虚拟存储设备的缓存方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Wei Huang、 Matthew J. Koop、 Qi Gao、 Dhabaleswar K. Panda.Virtual machine aware communication libraries for high performance computing.《SC "07 Proceedings of the 2007 ACM/IEEE conference on Supercomputing》.ACM New York, NY, USA ©2007,2007,

Also Published As

Publication number Publication date
CN103176845B (zh) 2016-07-06
CN106095524A (zh) 2016-11-09
CN103176845A (zh) 2013-06-26

Similar Documents

Publication Publication Date Title
CN106095524B (zh) 一种虚拟机部署方法、系统和装置
US11704166B2 (en) Load balancing of resources
US11226750B2 (en) Flexible deprovisioning of distributed storage
US11216314B2 (en) Dynamic reallocation of resources in accelerator-as-a-service computing environment
US11729113B2 (en) Translating high level requirements policies to distributed storage configurations
US11102282B2 (en) Method for managing and allocating resources in a clustered computing environment
US9582221B2 (en) Virtualization-aware data locality in distributed data processing
US11106508B2 (en) Elastic multi-tenant container architecture
US9183016B2 (en) Adaptive task scheduling of Hadoop in a virtualized environment
US9268394B2 (en) Virtualized application power budgeting
Graubner et al. Energy-efficient virtual machine consolidation
US20180095776A1 (en) Resource based virtual computing instance scheduling
US8601201B2 (en) Managing memory across a network of cloned virtual machines
EP3647966A1 (en) Scalable distributed storage architecture
US11579908B2 (en) Containerized workload scheduling
US20180287955A1 (en) Predicting resource demand in computing environments
US11403150B1 (en) Replenishment-aware resource usage management
Kumar et al. A load balancing based cloud computing techniques and challenges
Zhang et al. HybridSwap: A scalable and synthetic framework for guest swapping on virtualization platform
US20220318044A1 (en) Load balancing virtual computing instances associated with virtual graphics processing units
Anadiotis et al. A system design for elastically scaling transaction processing engines in virtualized servers

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