一种资源管理方法和系统的制作方法
【专利摘要】本发明提供了一种资源管理方法和系统。本发明中,资源管理系统提供了统一的服务器引导流程。在创建服务器(虚拟机或物理机)时,为所创建的服务器分配地址、生成系统内核文件、驱动程序文件和系统镜像,并在服务器的引导过程中,将为该服务器分配的地址配置给该服务器,将为该服务器生成的系统内核文件、驱动程序文件和系统镜像提供给该服务器进行系统配置和启动。在服务器与虚拟机之间迁移时,通过统一的引导过程完成资源迁移。本发明实现了对虚拟机资源和物理机资源进行统一管理。
【专利说明】一种资源管理方法和系统
【技术领域】
[0001]本发明涉及通信领域,尤其涉及一种资源管理方法和系统。
【背景技术】
[0002]在目前的云计算平台中,通常将物理机和虚拟机资源分开进行管理,即分成物理机资源池和虚拟机资源池,分别提供不同类型的资源。当应用运行在某个物理机中或者某个虚拟机中,无法在物理机和虚拟机中快速切换。
[0003]对于虚拟机的管理,主要采用专门用于虚拟化的产品和系统,这些系统通过虚拟机镜像的方式对虚机进行动态调度和分配。物理机只是作为运行虚拟机的底层载体进行分配,预装了特定虚拟化软件的运行和管理环境(称为VMM,即Virtual Machine Monitor的缩写,中文表达为虚拟机监视器),不安装通用的操作系统及直接运行应用。
[0004]但是,由于虚拟机存在一定的性能损耗,云计算平台中的很多基础服务和应用需要直接运行在物理机上。这些物理机通常直接安装各种业务需要的操作系统,分配给业务使用。
[0005]针对云计算平台对虚拟机资源和物理机资源进行管理的需求,现有的一些解决方案中,将物理机和虚拟机放在同一个资源目录下进行统一管理。但是其功能仅限于对物理机和虚拟机管理功能通过统一门户进行呈现和操作,实际上物理机和虚拟机仍然在不同的资源池中进行调度,缺乏统一的资源管理机制,一旦某个应用运行于物理机资源池中的某台机器上,很难将其迁移到虚拟机资源池中的某台虚拟机上。
[0006]由于现有技术中,物理机和虚拟机的资源无法统一调度和分配,导致两种资源池的使用不均,应用在两种资源中无法进行快速和平滑的迁移。
[0007]由此可见,现有IT管理系统无法对虚拟化环境和运行物理操作系统的环境进行统一调度,造成了资源使用的忙闲不均,以及应用无法在两种环境中平滑迁移。
【发明内容】
[0008]本发明实施例提供了一种资源管理方法及设备和系统,用于对虚拟机资源和物理机资源进行统一管理。
[0009]本发明实施例提供的资源管理方法,包括:接收申请服务器资源的请求,根据所述申请服务器资源的请求分配服务器;其中,若所申请的服务器资源为物理机资源,则分配物理机,若所申请的服务器资源为虚拟机资源,则分配虚拟机;
[0010]为所述服务器分配地址,并为所述服务器生成系统内核文件、驱动程序文件和系统镜像;
[0011]启动所述服务器的引导过程,并在所述服务器的引导过程中,将为所述服务器分配的地址配置给所述服务器,将为所述服务器生成的系统内核文件、驱动程序文件和系统镜像提供给所述服务器进行系统配置和启动。
[0012]本发明另一实施例提供的资源管理方法,包括:[0013]接收迁移服务器资源的请求,所述请求用以请求将源服务器资源迁移到目标服务器,所述源服务器和所述目标服务器为物理机或虚拟机;
[0014]根据所述迁移服务器资源的请求确定目标服务器,并为目标服务器生成系统内核文件和驱动程序文件,建立目标服务器的系统内核文件和驱动程序文件,与源服务器的地址和系统镜像的对应关系;
[0015]根据所述迁移服务器资源的请求,释放源服务器资源;
[0016]启动目标服务器的引导过程,并在目标服务器引导过程中,将所述源服务器的地址配置给所述目标服务器,将为所述目标服务器生成的系统内核文件、驱动程序文件,以及所述源服务器使用的系统镜像,提供给所述目标服务器进行系统配置和启动。
[0017]本发明实施例提供的资源管理系统,包括:资源调度器、引导管理器、镜像管理器,其中:
[0018]资源调度器,用于接收申请服务器资源的请求,根据所述申请服务器资源的请求分配服务器,其中,若所申请的服务器资源为物理机资源,则分配物理机,若所申请的服务器资源为虚拟机资源,则分配虚拟机;为所述服务器分配地址,并指示所述引导管理模块为所述服务器生成系统内核文件和驱动程序文件,指示所述镜像管理模块为所述服务器生成系统镜像;
[0019]所述镜像管理模块,用于为所述服务器生成系统镜像,并在所述服务器的引导过程中,将为所述服务器生成的系统镜像提供给所述服务器进行系统配置和启动;
[0020]所述引导管理模块,用于为所述服务器生成系统内核文件和驱动程序文件,并在所述服务器的引导过程中,将为所述服务器分配的地址配置给所述服务器,将为所述服务器生成的系统内核文件和驱动程序文件提供给所述服务器进行系统配置和启动。
[0021]本发明的上述实施例,通过为物理机和虚拟机提供统一的引导流程,从而为物理机资源和虚拟机资源的统一管理和调度提供了基础,进而实现了对服务器计算资源池和块设备存储资源池进行统一管理和调度。
【专利附图】
【附图说明】
[0022]图1为本发明实施例提供的资源管理架构示意图;
[0023]图2为本发明实施例提供的虚拟资源请求流程示意图;
[0024]图3为本发明实施例提供的物理资源请求流程示意图;
[0025]图4为本发明实施例提供的引导流程示意图;
[0026]图5为本发明实施例提供的资源迁移流程示意图;
[0027]图6为本发明实施例提供的资源管理系统的结构示意图。
【具体实施方式】
[0028]现有的虚拟机和物理机资源管理技术中,将应用在物理机和虚拟机之间进行迁移时,主要采用P2V (物理机到虚拟机)技术。P2V技术是指将操作系统、应用程序或者数据,从计算机的物理硬盘中迁移到一个虚拟机环境中。P2V的主要步骤包括:第一步制作镜像:通过镜像制作工具将物理机的系统整体制作成物理机的镜像;第二步选择驱动:替换掉镜像中与特定硬件设备相关的驱动程序或者磁盘驱动器,并且保证镜像中新的驱动程序和其它驱动程序在系统初始化时有序启动,以使镜像能够在虚拟环境中运行;第三步定制配置:用户手动输入必要的参数,例如虚拟机的CPU、内存、MAC (Media Access Control,媒体访问控制)地址等,P2V软件根据数据的参数生成能够让镜像被VMM (虚拟机监视器)所识别的配置文件。
[0029]类似的,从虚拟机向物理机的转化称为V2P技术,其实现原理为P2V的逆过程。
[0030]完成P2V或V2P操作需要以上复杂的步骤和消耗大量的时间,通常消耗的时间与物理机磁盘大小成正比。而且,P2V和V2P只能实现单个物理机向单个虚机的转化。
[0031]因此,在实际的使用中,为了更好的使用资源,需要将提供物理机计算实体和虚拟机计算实体的基础设施构造为统一的资源池进行管理和调度。而且,应用可以在物理机和虚拟机之间进行批量的迁移操作。即,用户可以根据应用的要求将其动态部署于资源池中的物理机或虚拟机之上,并根据需要在二者之间迁移。
[0032]为了满足以上需求,本发明实施例提供了一种资源管理技术,实现了通过对服务器资源池和块存储资源池进行统一管理和调度,基于动态镜像管理和映射机制,通过引入新的配置策略和引导流程,提供了物理机和虚拟机统一资源调度和切换的方法,确保了物理机和虚拟机的资源池可以合二为一,进行统一调度,并且应用可以在物理机和虚拟机之间进行快速迁移。
[0033]下面结合附图对本发明实施例进行详细描述。
[0034]参见图1,为本发明实施例提供的资源管理架构示意图。
[0035]如图1所示,该资源管理架构中包括资源管理系统,以及服务器资源池和块存储资源池。服务器资源池中包含可用的物理机的资源信息(如物理机的MAC地址,以及CPU、内存规格等),块存储资源池中包含以卷的形式存储的系统镜像。
[0036]系统镜像包括两类,一类为OS (操作系统)镜像,即特定的操作系统镜像,物理机或虚拟机通过引导程序支持可以直接挂载OS镜像,并启动和运行;另一类为VMM镜像,可以将VMM镜像视为某种专用于进行虚拟化管理的OS,如用来运行KVM (Kernel-based VirtualMachine,基于内核的虚拟机)或XEN Hypervisor (一种开放源代码虚拟机监视器,其中,Hypervisor是指一种运行在基础物理服务器和操作系统之间的中间软件层,可允许多个操作系统和应用共享硬件)的操作系统。块存储资源池中还可包含已创建的VMM的相关信息,如VMM所在的物理机、为VMM分配的物理资源、VMM上创建的虚拟机资源(包括虚拟机数量、虚拟机的内存规格等)等。
[0037]资源管理系统中主要包括资源调度器、引导管理器和镜像管理器等模块。资源调度器主要用于维护服务器和块存储的资源列表,即,记录和跟踪已经创建和运行的物理机和虚拟机的运行情况和资源使用情况,资源调度器还用于接受和处理外部的资源创建和切换等请求,进行资源调度。引导管理器主要负责为服务器(即物理机或虚拟机)在引导过程中提供系统内核及相应的驱动程序,辅助服务器完成引导过程。镜像管理器主要负责对块存储资源池中以卷的形式存储的各种系统镜像进行管理。
[0038]上述资源管理系统的主要功能是,针对用户的请求,完成物理机或虚拟机的创建,以及根据需要进行虚拟机和物理机之间的迁移。
[0039]参见图2,为本发明实施例提供的基于上述资源管理系统实现的虚拟资源请求流程。如图所示,该流程可包括:[0040]步骤201,资源调度器接收申请虚拟资源的请求。该请求是用户(通常为应用)向资源管理系统提交的,申请内容可包括以下信息:
[0041]资源类型:虚拟机资源还是物理机资源(本流程以用户提交的资源类型为虚拟机资源为例描述);
[0042]资源规格:CPU、内存、磁盘等资源规格;
[0043]操作系统模板:需要安装的操作系统镜像类型,如为OS镜像还是VMM镜像。
[0044]步骤202,资源调度器对该请求中携带的信息的格式和内容进行检查,如检查资源规格和操作系统模板是否符合块存储资源池要求。如果检查失败,则转入步骤210,提示出错信息,其中可包括失败原因,否则转入步骤203。
[0045]该步骤通过对信息格式和内容进行检查,资源调度器可判断该申请资源的请求是否符合规定,对于不符合规定的请求予以拒绝,从而提高安全性。该步骤为可选步骤。
[0046]步骤203,资源调度器查询是否存在处于运行状态的VMM,且该VMM所在的物理机上的空闲资源是否满足资源申请中所要求的虚拟机资源规格;如果存在这样的VMM,则转入步骤204 ;否则转入步骤205。
[0047]该步骤中,资源调度器可根据其所维护的资源列表进行查询,该资源列表是资源调度器实时维护的(比如在资源创建、删除时进行维护,定期维护,或者根据物理机和虚拟机上报的资源使用情况进行维护等),通过查询该资源列表可以得知正在运行的各虚拟机的资源使用情况,从而得知这些虚拟机所在的VMM的资源使用情况,进而得知VMM所在的物理机的资源使用情况。当然,在块存储资源池中包含已创建的VMM的相关信息的情况下,资源调度器也可以向块存储资源池进行查询。
[0048]步骤204,资源调度器选择满足虚拟机资源规格要求的VMM,转入步骤206。
[0049]步骤205,资源调度器创建VMM,并转入步骤206。可以将VMM视为运行于物理机之上的特殊的操作系统,因此,该请求的执行流程与在物理机上安装操作系统的流程基本相同,简单来说可包括:根据创建VMM的请求选择符合资源规格要求的物理服务器,并根据VMM的规格确定需要使用的物理资源(如硬盘空间、内存空间),在该物理资源上安装VMM系统。
[0050]步骤206,资源调度器为请求创建的虚拟机分配IP地址和MAC地址,指示镜像管理设备根据资源申请中所要求的资源规格分配块设备(如分配硬盘空间),并指示镜像管理器在该块设备中以克隆方式创建符合所要求的系统镜像类型的系统镜像,形成系统镜像块设备;指示引导管理器为请求创建的虚拟机生成系统内核文件和initrd(initial RAM disk,初始化内存磁盘)文件;记录该虚拟机的MAC地址、IP地址、系统内核文件、系统镜像块设备的对应关系。
[0051]镜像管理器根据资源调度器的指示,为虚拟机分配块设备,在块设备中创建系统镜像,并更新块存储资源池。引导管理器根据资源调度器的指示,为虚拟机生成系统内核文件和initrd文件。
[0052]Initrd文件是在系统引导过程中挂载的一个临时根文件系统,用来支持两阶段的引导过程。initrd文件中包含了各种可执行程序和驱动程序,它们可以用来挂载实际的根文件系统。同一类型的操作系统对于虚拟机,会根据使用的驱动程序不同,而生成不同的initrd 文件。[0053]步骤207,资源调度器为请求创建的虚拟机生成配置文件,该配置文件描述虚拟机的资源信息(如CPU,内存配置信息)和配置信息(包括MAC地址配置等),并向VMM发送创建和启动该虚拟机的命令,该VMM是指在步骤104选择出来的VMM,或者在步骤105中创建的VMM0
[0054]步骤208,虚拟机启动后执行引导流程。本发明实施例中,虚拟机和物理机执行统一的操作系统引导流程。流程图见图4,稍后详细介绍。
[0055]步骤209,引导流程完成后,资源调度器返回虚拟机创建成功的信息,其中可包括虚拟机的相关信息。进一步的,资源调度器维护其上的资源列表。
[0056]上述流程中,如果申请创建的虚拟机数量为多个,则资源管理系统可一次为多个虚拟机分别分配地址以及生成系统内核文件、initrd文件和系统镜像,并分别启动这些虚拟机的引导过程。如果在为申请创建的多个虚拟机选择VMM时,所选择的VMM仅能满足所申请创建的多个虚拟机中部分虚拟机的资源规格要求,则在该VMM上创建虚拟机后,再选择满足其它还未创建的虚拟机规格要求的VMM或新创建VMM,以在该VMM上创建其余还未创建的虚拟机。
[0057]参见图3,为本发明实施例提供的基于上述资源管理系统实现的物理资源请求流程。如图所示,该流程可包括:
[0058]步骤301,资源调度器接收申请物理资源的请求。该请求是用户(通常为应用)向资源管理系统提交的,申请内容可包括以下信息:
[0059]资源类型:虚拟机资源还是物理机资源(本流程以用户提交的资源类型为物理机资源为例描述);
[0060]资源规格:CPU、内存、磁盘等资源规格;
[0061]操作系统模板:需要安装的操作系统镜像类型,如为OS镜像还是VMM镜像。
[0062]步骤302,资源调度器对该请求中携带的信息的格式和内容进行检查,如果检查失败,则转入步骤308,提示出错信息,其中可包括失败原因,否则转入步骤303。
[0063]步骤303,资源调度器从服务器资源池中选择满足物理机资源规格要求的物理机(即服务器设备),转入步骤304。
[0064]步骤304,资源调度器为请求创建的物理机分配IP地址;指示镜像管理器根据资源申请中所要求的资源规格分配块设备,并指示镜像管理器在该块设备中以克隆方式创建符合所要求的系统镜像类型的系统镜像;指示引导管理器为请求创建的物理机生成系统内核文件和initrd文件;记录该物理机的MAC地址、IP地址、系统内核文件、系统镜像块设备的对应关系。
[0065]镜像管理器根据资源调度器的指示,为物理机分配块设备,在块设备中创建系统镜像。引导管理器根据资源调度器的指示,为物理机生成系统内核文件和initrd文件。同一类型的操作系统对于物理机,会根据使用的驱动程序不同,而生成不同的initrd文件。
[0066]步骤305,资源调度器通过IPMI( Intelligent Platform Management Interface,智能平台管理接口)启动物理机,之后转入步骤306执行引导流程。
[0067]步骤306,物理机启动后执行引导流程。本发明实施例中,物理机和虚拟机执行统一的操作系统引导流程。流程图见图4,稍后详细介绍。
[0068]步骤307,引导流程完成后,资源调度器返回虚拟机创建成功的信息,其中可包括虚拟机的相关信息。进一步的,资源调度器维护其上的资源列表。
[0069]下面详细描述本发明实施例中的服务器弓I导流程。
[0070]通常,服务器的引导流程主要通过以下步骤实现:
[0071]I) BIOS (Basic Input Output System,基本输入输出系统)自检;
[0072]2)从本地磁盘的引导扇区读取引导程序;
[0073]3)引导程序加载磁盘中的本地操作系统的内核文件和initrd文件,initrd文件提供内核运行过程使用的临时的根文件系统及设备驱动,通过initrd文件中的init初始化脚本加载驱动程序;
[0074]4)内核进行系统初始化后,将根文件系统切换到磁盘分区中的根文件系统,并按照新的根文件系统中的配置执行其余的引导流程。
[0075]本发明实施例所实现的引导流程,与上述服务器引导流程的不同之处在于:
[0076]-将某种类型的操作系统分为两部分存储,一部分为操作系统的内核文件和initrd文件,以文件形式存在于引导管理器中;另一部分为操作系统的根文件系统,包括操作系统的文件结构、各种系统程序和应用程序、预留的空闲磁盘空间等,整体以镜像的形式存储于块存储资源池的块设备中;
[0077]-根据用户请求的服务器类型(如为虚拟机还是物理机)和操作系统类型(如为OS系统还是VMM系统),生成系统内核文件,并配置initrd文件,存储于引导管理器中,根据服务器(即虚拟机或物理机)的地址与系统内核文件的映射关系提供给服务器,使其能够正确连接和挂载对应的系统镜像块设备。
[0078]参见图4,为本发明实施例提供的引导流程。其中,对于图2中的引导过程,这里的“服务器”是指虚拟机;对于图3中的引导过程,这里的“服务器”是指物理机。该引导流程可包括:
[0079]步骤401,当服务器启动后,在BIOS中设置为PXE (Preboot ExecuteEnvironment,预引导执行环境)方式进行网络引导。
[0080]PXE工作于Client/Server (客户端/服务器)的网络模式,支持工作站通过网络从远端服务器下载映像,并由此支持来自网络的操作系统的启动过程,其启动过程中,终端要求服务器分配IP地址,再用TFTP (Trivial File Transfer Protocol,简单文件传输协议)或 MTFTP (Multicast Trivial Tile Transfer Protocol,多点 TFTP)协议下载一个启动软件包到本机内存中并执行,由这个启动软件包完成终端基本软件设置,从而引导预先安装在服务器中的终端操作系统。
[0081]步骤402,服务器发送 DHCP (Dynamic Host Configuration Protocol,动态主机配置协议)请求,该DHCP请求中携带有自身的MAC地址;
[0082]步骤403,由于引导管理器中运行有DHCP服务程序,因此接受该DHCP请求,并根据该服务器的IP地址和MAC地址的对应关系,将与该服务器的MAC地址对应的IP地址分配给该服务器。对于图2所示的虚拟机创建流程,该对应关系是在步骤206中建立的;对于图3所示的物理机创建流程,该对应关系是在步骤304中建立的。
[0083]步骤404,服务器通过DHCP响应接受IP地址并进行配置,并通过TFTP协议从弓I导管理器下载系统内核文件和initrd文件;引导管理器根据该服务器的MAC地址,根据之前建立的服务器MAC地址与系统内核文件和initrd文件的对应关系,将为该服务器生成的系统内核文件和initrd文件发送给该服务器。对于图2所示的虚拟机创建流程,该系统内核文件和initrd文件是在步骤206中生成的;对于图3所示的物理机创建流程,该系统内核文件和initrd文件是在步骤304中生成的。
[0084]步骤405,服务器根据收到的系统内核文件加载系统内核,并执行initrd文件中的初始化脚本,对服务器的设备驱动进行初始化,包括初始化和连接服务器所使用的镜像块设备。由于在initrd文件中包含SAN (Storage Area Network,存储区域网络)共享存储设备的驱动程序和配置信息,因此内核引导程序根据此信息可以连接操作系统镜像所在的块设备并加载块设备中的文件系统。资源调度器会自动根据服务器的信息更新initrd文件中的驱动程序和配置信息。
[0085]引导程序根据服务器的配置信息更新该服务器的系统镜像块设备中的驱动配置和系统设置,相关的系统设置包括文件系统配置文件、网络配置文件等与块设备相关或与所分配的IP地址等相关特定配置。这里,如果服务器为虚拟机,则将加载的驱动内核模块配置为虚拟机对应的驱动,如果服务器为物理机,则将加载的驱动内核模块配置为物理设备对应的驱动。
[0086]步骤406?408,服务器的系统内核挂载连接到的系统镜像块设备中的文件系统,进行根文件系统切换,切换到系统镜像块设备中的文件系统,并继续执行系统初始化流程。
[0087]步骤409,服务器引导成功。
[0088]针对图4所示的引导流程,需要说明的是,该流程中所使用的协议,比如DHCP协议、TFTP协议,仅为一种具体应用场景下所可能使用的协议,本发明实施例并不排除使用其它协议以达到相同或类似的目的。
[0089]在本发明实施例中,引导流程是物理机和虚拟机得以统一调度和平滑迁移的关键环节。由于本发明实施例实现了计算资源和存储资源的完全分离,并执行统一的系统引导流程,因此可以在物理机和物理机之间,虚拟机和虚拟机之间,以及物理机和虚拟机之间进行快速平滑迁移。各种迁移流程基本相同,主要为删除原有的服务器,基于新的服务器形态创建新的驱动和配置文件,将这些配置与原有服务器的系统镜像建立关联,从而快速创建新的服务器。
[0090]下面以从虚拟机到物理机的迁移为例,说明服务器之间的迁移流程。
[0091]参见图5,为本发明实施例提供的从虚拟机迁移到物理机的流程,该流程可包括:
[0092]步骤501,资源调度器接收服务器迁移请求,以请求将虚拟机资源迁移到物理机。该请求是用户(通常为应用)向资源管理系统提交的,该请求的内容可包括:所要迁移的虚拟机的ID,目标物理机资源的规格。
[0093]步骤502,资源调度器对该请求中携带的信息的格式和内容进行检查,如检查资源规格是否符合服务器资源池要求。如果检查失败,则转入步骤507,提示出错信息,其中可包括失败原因,否则转入步骤503。该步骤可选。
[0094]步骤503,资源调度器根据迁移请求中所要求的目标物理资源的规格,选择符合资源规格要求的物理机,为该物理机生成系统内核文件和initrd文件,将该物理机的MAC地址、系统内核文件和initrid文件与被迁移的虚拟机所使用的IP地址和系统镜像建立对应关系。
[0095]步骤504,资源调度器根据所要迁移的虚拟机的ID,关闭对应的虚拟机,删除该虚拟机,并收回分配该虚拟机的计算资源和镜像存储资源,并转入步骤505。
[0096]步骤505,资源调度器启动该物理机执行引导流程。该流程可如图4所示。
[0097]步骤506,迁移成功后,资源调度器可进一步返回迁移成功响应。
[0098]从物理机迁移到虚拟机的过程与上述流程类似,其过程简单描述如下:资源管理系统接收到从物理机迁移到虚拟机的请求后,选择满足资源规格要求的虚拟机,为该虚拟机生成系统内核文件和驱动程序文件,建立该虚拟机的系统内核文件和驱动程序文件,与被迁移的物理机所使用的IP地址和系统镜像的对应关系。资源管理系统关闭被迁移的物理机,释放该物理机的资源;启动该目标虚拟机的引导过程,并在引导过程中,将该物理机的IP地址配置给该目标虚拟机,将为该目标虚拟机生成的系统内核文件、驱动程序文件,以及该物理机使用的系统镜像,提供给该目标虚拟机进行系统配置和启动。
[0099]其中,资源管理系统在选择满足资源规格要求的虚拟机的过程为:根据该请求中携带的目标虚拟机的资源规格,查询运行状态下的虚拟机的空闲资源是否符合要求,若有虚拟机处于运行状态且空闲资源符合要求,则确定该虚拟机为目标虚拟机,否则,创建符合资源规格要求的VMM,并在该VMM上创建虚拟机,将该虚拟机作为目标虚拟机。
[0100]需要说明的是,本发明的上述实施例是以如图1和图6所示的系统架构为例描述的,该架构中的各模块是以逻辑功能划分的,能够实现本发明实施例的目的的任何其它模块划分方式,以及基于该种模块划分方式所实现的资源管理流程,均在本发明的保护范围之内。
[0101]综上所述,本发明实施例实现了通过对服务器计算资源池和块设备存储资源池进行统一管理和调度,基于动态镜像管理和映射机制,通过统一的引导流程,实现了物理机和虚拟机统一资源调度和切换,确保了物理机和虚拟机的资源池可以合二为一,进行统一调度,并且应用可以在物理机和虚拟机之间进行批量的快速迁移。
[0102]基于相同的技术构思,本发明实施例还提供了一种资源管理系统。
[0103]参见图6,为本发明实施例提供的资源管理系统的结构示意图。
[0104]该资源管理系统可包括:资源调度器601、引导管理器602、镜像管理器603,其中:
[0105]资源调度器601,用于接收申请服务器资源的请求,根据所述申请服务器资源的请求分配服务器,其中,若所申请的服务器资源为物理机资源,则分配物理机,若所申请的服务器资源为虚拟机资源,则分配虚拟机;为所述服务器分配地址,并指示引导管理模块602为所述服务器生成系统内核文件和驱动程序文件,指示镜像管理模块603为所述服务器生成系统镜像;
[0106]镜像管理模块603,用于为所述服务器生成系统镜像,并在所述服务器的引导过程中,将为所述服务器生成的系统镜像提供给所述服务器进行系统配置和启动;
[0107]引导管理模块602,用于为所述服务器生成系统内核文件和驱动程序文件,并在所述服务器的引导过程中,将为所述服务器分配的地址配置给所述服务器,将为所述服务器生成的系统内核文件和驱动程序文件提供给所述服务器进行系统配置和启动。
[0108]进一步的,资源调度器601还可在接收到申请服务器资源的请求之后,对所述申请服务器资源的请求进行合法性检查,在合法性检查通过后,根据所述申请服务器资源的请求分配服务器。[0109]进一步的,在所述申请服务器资源的请求中携带有服务器资源规格的情况下,资源调度器601还可根据所述申请服务器资源的请求中携带的服务器资源规格,分配符合资源规格要求的服务器。具体的,若所申请的服务器资源为物理机资源,则资源调度器601根据所述申请服务器资源的请求中携带的服务器资源规格,从物理服务器资源池中选择符合资源规格要求的物理机进行分配;若所申请的服务器资源为虚拟机资源,则资源调度器601根据所述申请服务器资源的请求中携带的服务器资源规格,查询运行状态下的VMM所在的物理机的空闲资源是否符合资源规格要求,若有VMM处于运行状态且所在的物理机的空闲资源符合资源规格要求,则在该VMM上创建虚拟机,否则,根据服务器资源规格创建VMM,并在该VMM上创建虚拟机。
[0110]具体的,在服务器引导过程中,引导管理器602可在接收到所述服务器发送的地址分配请求后,将为所述服务器分配的IP地址携带于地址分配响应返回给所述服务器,以使所述服务器进行IP地址配置;在接收到所述服务器发送的下载请求后,将为所述服务器生成的系统内核文件和驱动程序文件发送给所述服务器,以使所述服务器加载系统内核和进行驱动初始化配置。镜像管理器603可在接收到所述服务器发送的系统镜像挂载请求后,将为所述服务器生成的系统镜像发送给所述服务器,以使所述服务器将文件系统从系统内核文件系统切换到所述系统镜像中的文件系统,并根据切换后的文件系统进行初始化配置。
[0111]进一步的,该资源管理系统还可实现服务器资源迁移处理。以下是相应功能模块在服务器资源迁移过程中的功能描述。
[0112]资源调度器601接收迁移服务器资源的请求后(所述请求用以请求将源服务器资源迁移到目标服务器,所述源服务器和所述目标服务器为物理机或虚拟机),根据所述迁移服务器资源的请求确定目标服务器,指示引导管理器602为目标服务器生成系统内核文件和驱动程序文件,建立目标服务器的系统内核文件和驱动程序文件,与源服务器的地址和系统镜像的对应关系;根据所述迁移服务器资源的请求,释放源服务器资源;启动目标服务器的引导过程。
[0113]在目标服务器的引导过程中,引导管理器602将所述源服务器的地址配置给所述目标服务器,将为所述目标服务器生成的系统内核文件、驱动程序文件提供给所述目标服务器进行系统配置和启动;镜像管理器603将所述源服务器使用的系统镜像提供给所述目标服务器进行系统配置和启动。
[0114]进一步的,资源管理器601在接收到迁移服务器的请求之后,对所述迁移服务器的请求进行合法性检查;在合法性检查通过后,根据所述迁移服务器的请求确定目标服务器。
[0115]进一步的,在所述迁移服务器的请求中携带有目标服务器的资源规格的情况下,资源管理器601根据所述迁移服务器的请求中携带的目标服务器规格,确定符合要求的目标服务器。具体的,若所述迁移服务器的请求是从虚拟机迁移到物理机的请求,则资源调度器601根据所述迁移服务器的请求中携带的目标服务器资源规格,从物理服务器资源池中选择符合资源规格要求的物理机;若所述迁移服务器的请求是从物理机迁移到虚拟机的请求,则资源调度器601根据所述迁移服务器的请求中携带的目标服务器资源规格,查询运行状态下的虚拟机的空闲资源是否符合资源规格要求,若有虚拟机处于运行状态且空闲资源符合资源规格要求,则确定该虚拟机为目标虚拟机,否则,创建符合目标服务器资源规格要求的VMM,并在该VMM上创建虚拟机作为目标虚拟机。
[0116]具体的,在目标服务器引导过程中,引导管理器602在接收到所述目标服务器发送的地址分配请求后,将所述源服务器使用的IP地址携带于地址分配响应返回给所述目标服务器,以使所述目标服务器进行IP地址配置;在接收到所述目标服务器发送的下载请求后,将为所述目标服务器生成的系统内核文件和驱动程序文件发送给所述目标服务器,以使所述目标服务器加载系统内核和进行驱动初始化配置。镜像管理器603在接收到所述目标服务器发送的系统镜像挂载请求后,将所述源服务器使用的系统镜像发送给所述目标服务器,以使所述目标服务器将文件系统从系统内核文件系统切换到所述系统镜像中的文件系统,并根据切换后的文件系统进行初始化配置。
[0117]通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台终端设备(可以是手机,个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
[0118]以上所述仅是本发明的优选实施方式,应当指出,对于本【技术领域】的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视本发明的保护范围。
【权利要求】
1.一种资源管理方法,其特征在于,该方法包括: 接收申请服务器资源的请求,根据所述申请服务器资源的请求分配服务器;其中,若所申请的服务器资源为物理机资源,则分配物理机,若所申请的服务器资源为虚拟机资源,则分配虚拟机; 为所述服务器分配地址,并为所述服务器生成系统内核文件、驱动程序文件和系统镜像; 启动所述服务器的引导过程,并在所述服务器的引导过程中,将为所述服务器分配的地址配置给所述服务器,将为所述服务器生成的系统内核文件、驱动程序文件和系统镜像提供给所述服务器进行系统配置和启动。
2.如权利要求1所述的方法,其特征在于,接收到申请服务器资源的请求之后,还包括:对所述申请服务器资源的请求进行合法性检查; 根据所述申请服务器资源的请求分配服务器,具体为:在合法性检查通过后,根据所述申请服务器资源的请求分配服务器。
3.如权利要求1所述的方法,其特征在于,所述申请服务器资源的请求中携带有服务器资源规格; 根据所述申请服务器资源的请求分配服务器,具体为:根据所述申请服务器资源的请求中携带的服务器资源规格,分配符合资源规格要求的服务器。
4.如权利要求3所述的方法,其特征在于,若所申请的服务器资源为物理机资源,则根据所述申请服务器资源的请求中携带的服务器资源规格,分配符合资源规格要求的服务器,具体包括: 根据所述申请服务器资源的请求中携带的服务器资源规格,从物理服务器资源池中选择符合资源规格要求的物理机进行分配; 若所申请的服务器资源为虚拟机资源,则根据所述申请服务器资源的请求中携带的服务器资源规格,分配符合资源规格要求的服务器,具体包括: 根据所述申请服务器资源的请求中携带的服务器资源规格,查询运行状态下的虚拟机监视器VMM所在的物理机的空闲资源是否符合资源规格要求,若有VMM处于运行状态且所在的物理机的空闲资源符合资源规格要求,则在该VMM上创建虚拟机,否则,根据服务器资源规格创建VMM,并在该VMM上创建虚拟机。
5.如权利要求1-4之一所述的方法,其特征在于,所述服务器的引导过程,包括: 接收到所述服务器发送的地址分配请求后,将为所述服务器分配的IP地址携带于地址分配响应返回给所述服务器,以使所述服务器进行IP地址配置; 接收到所述服务器发送的下载请求后,将为所述服务器生成的系统内核文件和驱动程序文件发送给所述服务器,以使所述服务器加载系统内核和进行驱动初始化配置; 接收到所述服务器发送的系统镜像挂载请求后,将为所述服务器生成的系统镜像发送给所述服务器,以使所述服务器将文件系统从系统内核文件系统切换到所述系统镜像中的文件系统,并根据切换后的文件系统进行初始化配置。
6.一种资源管理方法,其特征在于,该方法包括: 接收迁移服务器资源的请求,所述请求用以请求将源服务器资源迁移到目标服务器,所述源服务器和所述目标服务器为物理机或虚拟机;根据所述迁移服务器资源的请求确定目标服务器,并为目标服务器生成系统内核文件和驱动程序文件,建立目标服务器的系统内核文件和驱动程序文件,与源服务器的地址和系统镜像的对应关系; 根据所述迁移服务器资源的请求,释放源服务器资源; 启动目标服务器的引导过程,并在目标服务器引导过程中,将所述源服务器的地址配置给所述目标服务器,将为所述目标服务器生成的系统内核文件、驱动程序文件,以及所述源服务器使用的系统镜像,提供给所述目标服务器进行系统配置和启动。
7.如权利要求6所述的方法,其特征在于,接收到迁移服务器的请求之后,还包括:对所述迁移服务器的请求进行合法性检查; 根据所述迁移服务器的请求确定目标服务器,具体为:在合法性检查通过后,根据所述迁移服务器的请求确定目标服务器。
8.如权利要求6所述的方法,其特征在于,所述迁移服务器的请求中携带有目标服务器的规格; 所述根据所述迁移服务器的请求确定目标服务器,具体为:根据所述迁移服务器的请求中携带的目标服务器规格,确定符合要求的目标服务器。
9.如权利要求8所述的方法,其特征在于,若所述迁移服务器的请求是从虚拟机迁移到物理机的请求,则根据所述迁移服务器的请求中携带的目标服务器资源规格,确定符合资源规格要求的目标服务器,具体包括: 根据所述迁移服务器的请求中携带的目标服务器资源规格,从物理服务器资源池中选择符合资源规格要求的物理 机; 若所述迁移服务器的请求是从物理机迁移到虚拟机的请求,则根据所述迁移服务器的请求中携带的目标服务器资源规格,确定符合资源规格要求的目标服务器,具体包括: 根据所述迁移服务器的请求中携带的目标服务器资源规格,查询运行状态下的虚拟机的空闲资源是否符合资源规格要求,若有虚拟机处于运行状态且空闲资源符合资源规格要求,则确定该虚拟机为目标虚拟机,否则,创建符合目标服务器资源规格要求的虚拟机监视器VMM,并在该VMM上创建虚拟机作为目标虚拟机。
10.如权利要求6-9之一所述的方法,其特征在于,所述目标服务器的引导过程,包括: 接收到所述目标服务器发送的地址分配请求后,将所述源服务器使用的IP地址携带于地址分配响应返回给所述目标服务器,以使所述目标服务器进行IP地址配置; 接收到所述目标服务器发送的下载请求后,将为所述目标服务器生成的系统内核文件和驱动程序文件发送给所述目标服务器,以使所述目标服务器加载系统内核和进行驱动初始化配置; 接收到所述目标服务器发送的系统镜像挂载请求后,将所述源服务器使用的系统镜像发送给所述目标服务器,以使所述目标服务器将文件系统从系统内核文件系统切换到所述系统镜像中的文件系统,并根据切换后的文件系统进行初始化配置。
11.一种资源管理系统,其特征在于,包括:资源调度器、引导管理器、镜像管理器,其中: 资源调度器,用于接收申请服务器资源的请求,根据所述申请服务器资源的请求分配服务器,其中,若所申请的服务器资 源为物理机资源,则分配物理机,若所申请的服务器资源为虚拟机资源,则分配虚拟机;为所述服务器分配地址,并指示所述引导管理模块为所述服务器生成系统内核文件和驱动程序文件,指示所述镜像管理模块为所述服务器生成系统镜像; 所述镜像管理模块,用于为所述服务器生成系统镜像,并在所述服务器的引导过程中,将为所述服务器生成的系统镜像提供给所述服务器进行系统配置和启动; 所述引导管理模块,用于为所述服务器生成系统内核文件和驱动程序文件,并在所述服务器的引导过程中,将为所述服务器分配的地址配置给所述服务器,将为所述服务器生成的系统内核文件和驱动程序文件提供给所述服务器进行系统配置和启动。
12.如权利要求11所述的资源管理系统,其特征在于,所述资源调度器还用于,在接收到申请服务器资源的请求之后,对所述申请服务器资源的请求进行合法性检查,在合法性检查通过后,根据所述申请服务器资源的请求分配服务器。
13.如权利要求11所述的资源管理系统,其特征在于,所述申请服务器资源的请求中携带有服务器资源规格; 所述资源调度器具体用于,根据所述申请服务器资源的请求中携带的服务器资源规格,分配符合资源规格要求的服务器。
14.如权利要求13所述的资源管理系统,其特征在于,所述资源调度器具体用于: 若所申请的服务器资源为物理机资源,则根据所述申请服务器资源的请求中携带的服务器资源规格,从物理服务器资源池中选择符合资源规格要求的物理机进行分配; 若所申请的服务器资源为虚拟机资源,则根据所述申请服务器资源的请求中携带的服务器资源规格,查询运行状态下的虚拟机监视器VMM所在的物理机的空闲资源是否符合资源规格要求, 若有VMM处于运行状态且所在的物理机的空闲资源符合资源规格要求,则在该VMM上创建虚拟机,否则,根据服务器资源规格创建VMM,并在该VMM上创建虚拟机。
15.如权利要求11-14之一所述的资源管理系统,其特征在于,所述引导管理器具体用于,在接收到所述服务器发送的地址分配请求后,将为所述服务器分配的IP地址携带于地址分配响应返回给所述服务器,以使所述服务器进行IP地址配置;在接收到所述服务器发送的下载请求后,将为所述服务器生成的系统内核文件和驱动程序文件发送给所述服务器,以使所述服务器加载系统内核和进行驱动初始化配置; 所述镜像管理器具体用于,在接收到所述服务器发送的系统镜像挂载请求后,将为所述服务器生成的系统镜像发送给所述服务器,以使所述服务器将文件系统从系统内核文件系统切换到所述系统镜像中的文件系统,并根据切换后的文件系统进行初始化配置。
16.如权利要求11所述的资源管理系统,其特征在于,所述资源调度器还用于,接收迁移服务器资源的请求,所述请求用以请求将源服务器资源迁移到目标服务器,所述源服务器和所述目标服务器为物理机或虚拟机;根据所述迁移服务器资源的请求确定目标服务器,指示所述引导管理器为目标服务器生成系统内核文件和驱动程序文件,建立目标服务器的系统内核文件和驱动程序文件,与源服务器的地址和系统镜像的对应关系;根据所述迁移服务器资源的请求,释放源服务器资源;启动目标服务器的引导过程; 所述引导管理器还用于,在目标服务器引导过程中,将所述源服务器的地址配置给所述目标服务器,将为所述目标服务器生成的系统内核文件、驱动程序文件提供给所述目标服务器进行系统配置和启动;所述镜像管理器还用于,在目标服务器引导过程中,将所述源服务器使用的系统镜像提供给所述目标服务器进行系统配置和启动。
17.如权利要求16所述的资源管理系统,其特征在于,所述资源管理器还用于,在接收到迁移服务器的请求之后,对所述迁移服务器的请求进行合法性检查;在合法性检查通过后,根据所述迁移服务器的请求确定目标服务器。
18.如权利要求16所述的资源管理系统,其特征在于,所述迁移服务器的请求中携带有目标服务器的规格; 所述资源管理器具体用于,根据所述迁移服务器的请求中携带的目标服务器规格,确定符合要求的目标服务器。
19.如权利要求18所述的资源管理系统,其特征在于,所述资源调度器具体用于: 若所述迁移服务器的请求是从虚拟机迁移到物理机的请求,则根据所述迁移服务器的请求中携带的目标服务器资源规格,从物理服务器资源池中选择符合资源规格要求的物理机; 若所述迁移服务器的请求是从物理机迁移到虚拟机的请求,则根据所述迁移服务器的请求中携带的目标服务器资源规格,查询运行状态下的虚拟机的空闲资源是否符合资源规格要求,若有虚拟机处于运行状态且空闲资源符合资源规格要求,则确定该虚拟机为目标虚拟机,否则,创建符合目标服务器资源规格要求的VMM,并在该VMM上创建虚拟机作为目标虚拟机。
20.如权利要求16-19之一所述的资源管理系统,其特征在于,所述引导管理器具体用于,在接收到所述目标服务器发送的地址分配请求后,将所述源服务器使用的IP地址携带于地址分配响应返回给所述目标服务器,以使所述目标服务器进行IP地址配置;在接收到所述目标服务器发送的下载请求后,将为所述目标服务器生成的系统内核文件和驱动程序文件发送给所述目标服务器,以使所 述目标服务器加载系统内核和进行驱动初始化配置; 所述镜像管理器具体用于,在接收到所述目标服务器发送的系统镜像挂载请求后,将所述源服务器使用的系统镜像发送给所述目标服务器,以使所述目标服务器将文件系统从系统内核文件系统切换到所述系统镜像中的文件系统,并根据切换后的文件系统进行初始化配置。
【文档编号】G06F9/50GK103885833SQ201210560698
【公开日】2014年6月25日 申请日期:2012年12月20日 优先权日:2012年12月20日
【发明者】张志宏, 刘军卫 申请人:中国移动通信集团公司