WO2014101010A1 - 一种虚拟机系统的资源管理方法、虚拟机系统和装置 - Google Patents

一种虚拟机系统的资源管理方法、虚拟机系统和装置 Download PDF

Info

Publication number
WO2014101010A1
WO2014101010A1 PCT/CN2012/087558 CN2012087558W WO2014101010A1 WO 2014101010 A1 WO2014101010 A1 WO 2014101010A1 CN 2012087558 W CN2012087558 W CN 2012087558W WO 2014101010 A1 WO2014101010 A1 WO 2014101010A1
Authority
WO
WIPO (PCT)
Prior art keywords
virtual machine
machine cluster
physical
cluster
resource
Prior art date
Application number
PCT/CN2012/087558
Other languages
English (en)
French (fr)
Inventor
王烽
Original Assignee
华为技术有限公司
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 华为技术有限公司 filed Critical 华为技术有限公司
Priority to CN201280026359.5A priority Critical patent/CN104011685B/zh
Priority to EP12878206.7A priority patent/EP2775399A4/en
Priority to PCT/CN2012/087558 priority patent/WO2014101010A1/zh
Publication of WO2014101010A1 publication Critical patent/WO2014101010A1/zh
Priority to US14/446,718 priority patent/US9367340B2/en
Priority to US14/789,556 priority patent/US9405563B2/en

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
    • 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/5072Grid computing
    • 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/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • 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

Definitions

  • the present invention relates to the field of IT technologies, and in particular, to a resource management method, a virtual machine system, and a device for a virtual machine system.
  • the cloud computing application environment can be divided into three layers, namely cloud application, virtual resource management platform and physical device management platform.
  • a cloud application is a program that runs on the cloud application layer.
  • the runtime contains one or more processes, which may be distributed on one or more virtual machines (VMs).
  • the virtual resource management platform virtualizes physical resources and provides virtual resources such as VMs, VM clusters, virtual volumes, and virtual networks.
  • QoS quality of service
  • the scheduling of QoS is performed by the scheduling module of the virtual resource management platform.
  • the scheduling module can be divided into an upper scheduling module from the cloud application to the virtual resource management platform and a lower scheduling module from the virtual resource management platform to the physical device management platform.
  • the upper layer scheduling module adjusts the virtual resources of the VM cluster according to the actual state information of the cloud application. For example, the upper layer scheduling module determines the virtual resources that the cloud application needs to use based on the real-time state information such as the traffic volume and the throughput of the cloud application. And decides to increase or decrease the number of VMs used to process the cloud application or decide to perform virtual resource expansion or volume reduction for the VM that has been created. The upper layer scheduling module will increase or decrease the VM instruction or adjust the VM resource configuration command. To the lower layer scheduling module, the lower layer scheduling module increases or decreases the VM by scheduling physical resources according to the instruction, or expands or reduces the capacity of the VM.
  • the guarantee of the QoS of the VM cluster mainly depends on the root of the upper scheduling module. Make decisions based on the real-time status of the cloud application and instruct the lower layers to adjust; on the other hand, provide
  • the physical device platform of the physical resources of the VM cluster there are also physical resource scheduling policies or physical resource scheduling based on energy management and saving purposes. For example, setting the physical machine volume reduction threshold of the physical device platform is the average utilization rate of physical resources. 30%. When the average physical resource utilization of the physical device platform is less than 30%, the physical machine on the physical device platform is emptied or powered off to save energy.
  • the independent physical resource scheduling policy or the scheduling of physical resources on the above physical device platform may cause the following conflicts:
  • the physical device When the number of VMs is on, the physical device is powered off on the physical device platform. This causes a physical machine to be powered on temporarily to create a new VM or expand the VM. Therefore, the virtual machine is created or expanded. The aging of the cloud application is not guaranteed, or the physical machine on the physical device platform is repeatedly powered on and off, which does not save energy.
  • the invention provides a resource management method, a virtual machine system and a device for a virtual machine system, which are used to solve the problem that the QoS of the cloud application cannot be guaranteed due to the physical resource scheduling of the physical device platform.
  • an embodiment of the present invention provides a resource management method for a virtual machine system, where the virtual machine system provides services for at least one cloud application, where the system includes a virtual resource management platform and a physical device platform, and the physical device
  • the platform includes at least one physical machine
  • the virtual resource is a virtual machine
  • at least one virtual machine corresponding to each cloud application forms a virtual machine cluster
  • receiving a creation request for creating the virtual machine cluster, or receiving the virtual machine cluster during the running of the virtual machine cluster An update request of the resource, where the create request or the update request carries the QoS constraint parameter of the virtual machine cluster; and, the QoS constraint parameter of the virtual machine cluster is recorded;
  • the obtaining the QoS constraint parameters of the virtual machine cluster includes:
  • the QoS constraint parameter of the virtual machine cluster includes: a resource average utilization constraint parameter of the virtual machine cluster; The statistical value of the current resource average utilization of the virtual machine cluster; comparing the statistical value of the current resource average utilization of the virtual machine cluster with the resource average utilization constraint parameter of the virtual machine cluster, if the current virtual machine cluster is current.
  • the statistical value of the average resource utilization ratio is smaller than the resource average utilization constraint parameter of the virtual machine cluster, and the difference between the two is less than a set tolerance threshold, and the physical machine volume reduction operation on the physical device platform is suppressed, and/or At least one physical machine on the physical device platform.
  • the physical machine volume reduction threshold on the physical device platform is increased, or the physical machine emptying or power-off operation on the physical device platform is not initiated within a predetermined period.
  • the QoS constraint parameter of the virtual machine cluster further includes: an upper limit or a lower limit of the total resources occupied by the virtual machine cluster;
  • the obtaining the current running statistics of the virtual machine cluster further includes: obtaining a statistic value of the current total resource occupied by the virtual machine cluster; and the powering the at least one physical device on the physical device platform to include: Obtaining a difference between a statistical value of the total resource occupied by the virtual machine cluster and an upper limit of the total resource occupied by the virtual machine cluster, and selecting a physical machine of a corresponding specification according to the difference to perform a power-on operation.
  • a statistical value of the current resource average utilization of the virtual machine cluster is greater than a resource average utilization constraint of the virtual machine cluster A parameter that increases a priority level of physical resource scheduling of the virtual machine cluster.
  • the QoS constraint parameter of the virtual machine cluster includes: a constraint parameter of an average communication delay of the virtual machine cluster;
  • Obtaining the current running statistics of the virtual machine cluster includes: obtaining a statistical value of a current average communication delay of the virtual machine cluster; comparing a current average communication delay of the virtual machine cluster with a statistical value of the virtual machine cluster The constraint parameter of the average communication delay, if the statistical value of the current average communication delay of the virtual machine cluster is greater than the constraint parameter of the average communication delay of the virtual machine cluster, or the difference between the two is less than the set tolerance threshold, Deploy the virtual machines of the virtual machine cluster to the same physical machine.
  • the embodiment of the present invention further provides a virtual machine system, where the virtual machine system provides services for at least one cloud application, the system includes a virtual resource management platform and a physical device platform; and the physical device platform includes at least a physical machine, configured to provide a physical resource; the virtual use creates at least one virtual machine, and the at least one virtual machine corresponding to each cloud application forms a virtual machine cluster, and monitors the running status of the cloud application, according to the The running status of the cloud application determines whether to update resources of the virtual machine cluster corresponding to the cloud application, and schedule physical resources on the physical device platform to implement creation of the virtual machine cluster or update of resources;
  • the virtual resource management platform is further configured to acquire a QoS constraint parameter of the virtual machine cluster and a current running status statistics indicator of the virtual machine cluster, according to a QoS constraint parameter of the virtual machine cluster and a current state of the virtual machine cluster.
  • the statistic indicator is used to adjust the physical device.
  • the virtual resource management platform is further configured to receive a creation request of the virtual machine cluster during a process of creating the virtual machine cluster. Or receiving, during the running of the virtual machine cluster, an update request of the virtual machine cluster resource, where the creation request or the update request carries the QoS constraint parameter of the virtual machine cluster, and recording the virtual machine cluster QoS constraint parameters.
  • the QoS constraint parameter of the virtual machine cluster includes: a resource average utilization constraint parameter of the virtual machine cluster;
  • the current running status statistics of the cluster include: a statistical value of the current resource average utilization of the virtual machine cluster;
  • the virtual resource management platform is specifically configured to compare current resource balances of the virtual machine cluster
  • the statistical value of the average utilization rate of the virtual machine cluster is smaller than the resource average utilization constraint parameter of the virtual machine cluster, and the statistical value of the current resource utilization ratio of the virtual machine cluster is smaller than the resource average utilization constraint parameter of the virtual machine cluster.
  • the difference is less than a set tolerance threshold, inhibiting physical machine volume reduction operations on the physical device platform, and/or powering up at least one physical machine on the physical device platform.
  • the QoS constraint parameter of the virtual machine cluster further includes: an upper limit or a lower limit of the total resources occupied by the virtual machine cluster;
  • the current running statistics of the virtual machine cluster includes: a statistical value of the total resources currently occupied by the virtual machine cluster; the virtual resource management platform is further configured to obtain the total resources currently occupied by the virtual machine cluster.
  • the difference between the statistical value and the upper limit of the total resources occupied by the virtual machine cluster is selected, and the physical machine of the corresponding specification is selected according to the difference to perform a power-on operation.
  • the virtual resource management platform is further configured to: use a statistical value of a current resource average utilization ratio of the virtual machine cluster to be greater than When the resource average utilization constraint parameter of the virtual machine cluster increases the priority level of the physical resource scheduling of the virtual machine cluster.
  • the QoS constraint parameter of the virtual machine cluster includes: a constraint parameter of an average communication delay of the virtual machine cluster;
  • the current running statistics of the virtual machine cluster includes: a statistical value of the current average communication delay of the virtual machine cluster; and the virtual resource management platform is configured to compare the current average communication delay of the virtual machine cluster.
  • a constraint parameter of an average communication delay with the virtual machine cluster if the current average communication delay of the virtual machine cluster is greater than a statistical value
  • the constraint of the average communication delay of the virtual machine cluster, or the difference between the two is less than the set tolerance threshold, and the virtual machines of the virtual machine cluster are deployed to the same physical machine.
  • the embodiment of the present invention further provides a virtual machine system resource management device, where the virtual machine system provides services for at least one cloud application, the system includes a virtual resource management platform and a physical device platform, and the physical device
  • the platform includes at least one physical machine
  • the virtual resource is a virtual machine
  • the at least one virtual machine corresponding to each cloud application is a virtual machine cluster
  • the device includes:
  • a constraint parameter obtaining module configured to acquire a QoS constraint parameter of the virtual machine cluster
  • a statistical indicator obtaining module configured to acquire a current running status statistical indicator of the virtual machine cluster
  • a management module configured to adjust a physical resource scheduling policy of the physical device platform or perform physical resources on the physical device platform according to a QoS constraint parameter of the virtual machine cluster and a current running status metric of the virtual machine cluster Scheduling.
  • the embodiment of the present invention further provides a virtual machine system resource management device, where the virtual machine system provides services for at least one cloud application, where the system includes a virtual resource management platform and a physical device platform, and the physical device
  • the platform includes at least one physical machine
  • the virtual resource is a virtual machine
  • the at least one virtual machine corresponding to each cloud application forms a virtual machine cluster
  • the device includes a processor, a memory, a bus, and a communication interface
  • the memory is configured to store a computer execution instruction
  • the processor is connected to the memory through the bus, and when the virtual machine system management device is running, the processor executes the The computer stored in the memory executes instructions to cause the virtual machine system management apparatus to execute the resource management method of the virtual machine system as described in the first aspect above.
  • the embodiment of the present invention further provides a computer readable medium, comprising: computer execution instructions, when the processor of the computer executes the computer execution instruction, the computer executes the virtual machine according to the first aspect System resource management method.
  • the embodiment of the present invention considers the actual running state of the virtual machine cluster and the virtual machine cluster.
  • the QoS constraint parameter is used to perform the scheduling of the physical resources, so that the resource management platform does not consider the running state of the virtual machine cluster, but only creates the virtual machine according to the resource status of the physical machine cluster or separates the physical resource scheduling, and thus avoids the temporary power-on.
  • the time delay of virtual machine creation and update caused by the physical machine can solve the problem that the QoS of the cloud application cannot be guaranteed due to the physical resource scheduling of the physical device platform.
  • FIG. 1 is a schematic structural diagram of a virtual machine system according to Embodiment 1 of the present invention.
  • FIG. 2 is a schematic flowchart of a cloud application deployment process in Embodiment 2 of the present invention.
  • FIG. 3 is a schematic diagram of a resource update process flow of a cloud application running process according to Embodiment 3 of the present invention
  • FIG. 4 is a schematic diagram of a virtual machine system resource management process according to Embodiment 4 of the present invention
  • FIG. 6 is a schematic diagram of a virtual machine system resource management apparatus according to Embodiment 6 of the present invention
  • FIG. 7 is a schematic diagram of a virtual machine system resource management apparatus according to Embodiment 7 of the present invention.
  • the system architecture can be divided into a cloud application layer, a virtual machine cluster, a physical device platform, and a virtual resource management platform:
  • the cloud application layer is configured to provide a cloud application to the user, where the cloud application can include multiple processes, and the process needs to be created on the virtual machine, and one process corresponds to one virtual machine, or one process corresponds to one virtual machine. virtual machine;
  • a virtual machine cluster is composed of a virtual machine and is composed of a virtual machine of the same cloud application. It may be a virtual machine corresponding to one physical machine, or multiple virtual machines corresponding to one physical machine;
  • the physical device platform includes at least one physical machine, which is used to provide physical resources required by the virtual machine, and provides a physical entity for the cloud application.
  • the virtual resource management platform creates at least one virtual machine for each cloud application according to the physical resources provided by the physical device platform, and is responsible for scheduling the virtual machine cluster and monitoring the operation of the cloud application.
  • Line status that is, monitoring the running status of the virtual machine cluster, when the cloud application layer of the cloud application
  • the virtual machine cluster is scheduled to be a new virtual machine or the existing virtual machine is expanded to ensure the QoS of the cloud application.
  • the physical resources of the cluster are managed according to the physical resource usage status. Scheduling of physical resources.
  • FIG. 1 an example of a virtual machine system architecture diagram is provided in Embodiment 1 of the present invention.
  • the cloud application layer 11 in this example includes a cloud application 1 and a cloud application 2, and each cloud application illustratively includes a In this embodiment, only two cloud applications are taken as an example.
  • the system can support more cloud applications or only one cloud application in the system according to actual working conditions. run.
  • the type of the cloud application may include a desktop cloud VDI service, a data analysis service, or a website service.
  • the virtual resource management platform 12 can be implemented by one or more software components or modules for creating a virtual machine VM for various cloud applications in the cloud application layer 11, and the virtual resource management platform 12 also physics when creating the VM.
  • the physical resources in the device platform 13 are configured for each VM, and all VMs corresponding to one cloud application form a VM cluster.
  • the virtual resource management platform creates VM Cluster1 and VM Cluster2, VM Cluster1 corresponds to the cloud application 1, and VM Cluster1 includes multiple virtual machines.
  • VM Cluster 2 corresponds to cloud application 2, and VM Cluster 2 contains multiple virtual machines.
  • the virtual resource management platform 12 After the VM resource is created for the cloud application, the virtual resource management platform 12 also monitors the running information of the cloud application, performs scheduling of the number of VMs in the VM Cluster or configuration, and obtains QoS constraint parameters of the VM Cluster and the Adjusting the current running status statistics of the VM Cluster, adjusting the physical resource scheduling policy of the physical device platform according to the QoS constraint parameter of the VM Cluster and the current running status statistics of the VM Cluster Physical resource scheduling on the physical device platform.
  • the physical machine cluster on the physical device platform 13 includes one or more physical machines. This embodiment includes three physical machine examples in a physical machine cluster.
  • the physical resources provided by the physical machine cluster may include one or more of a CPU resource, a memory resource, a storage resource, and a network resource, and the physical resource provided by the physical device platform 13 is abstracted into multiple virtual machines by the virtual resource management platform 12, and Assigned to the VM Cluster for the corresponding cloud application service.
  • the virtual resource management platform 12 may specifically include an upper layer scheduling module 121 and a lower layer scheduling module 122.
  • the upper layer scheduling is specifically described in the following embodiments in this specification. How the module 121 or the lower layer scheduling module 122 performs scheduling operations.
  • a VM cluster can be regarded as a virtual resource pool, and the physical resources in the resource pool are used to serve the same cloud application. Therefore, to ensure the QoS of the cloud application, the virtual resource management platform in the embodiment of the present invention needs to be considered.
  • the QoS constraint parameters of the VM Cluster mentioned in the embodiment of the present invention may include one of a constraint parameter of the total resource occupied by the VM Cluster, a constraint parameter of the average resource utilization ratio of the VM Cluster, and one of the constraint parameters of the average communication delay of the VM Cluster.
  • the constraint parameter may be a specific range value, such as an upper and lower limit, or may be any one of a minimum value or a maximum value, such as an upper limit or a lower limit.
  • the constraint parameter of the total resource occupied by the VM cluster may be the upper limit of the total memory that all VMs in the VM Cluster can allow, or the total virtual central processing that all VMs in the VM Cluster can allow.
  • the constraint parameters of the resource utilization of the VM Cluster may be all in the VM Cluster.
  • the upper and lower limits of the average utilization of the memory occupied by the VM, or the upper and lower limits of the average utilization of the CPU occupied by all the VMs in the VM Cluster, and the constraint parameter of the average communication delay of the VM Cluster may be in the VM Cluster.
  • the QoS constraint parameters of the VM Cluster are understood to be all clustered parameters that can affect the QoS of the VM Cluster.
  • this embodiment uses a VCPU to represent the unit of measure of the CPU of the VM.
  • the specific size of a VCPU may refer to any unit of CPU computing power commonly used in the art, such as MIPS (million instructions per second) or MHz. (million Hz).
  • the virtual machine's QoS policy includes one or more of a VM regional constraint parameter, a VM resident constraint parameter, a VM affinity constraint parameter, or a VM mutual exclusion constraint parameter.
  • the VM regional constraint parameter indicates that the specified virtual machine can only be created and migrated on a specified range of physical machines to ensure the security or resources of the cloud application.
  • the VM Resident Constraint parameter indicates that the specified virtual machine is important and cannot be automatically migrated. If the migration is required, the administrator is notified, which is determined manually.
  • the VM affinity constraint parameter indicates that multiple virtual machines specified need to be placed on the same physical machine to improve communication QoS. Multiple VMs specified by the VM Mutual Constraint parameter cannot be placed on the same physical machine to improve application reliability.
  • the embodiment of the present invention solves the problem that the QoS of the cloud application cannot be guaranteed due to the physical resource scheduling of the physical device platform, and the resource management platform needs to obtain the QoS constraint.
  • the parameter and the QoS policy of the virtual machine are both or both, and the resources of the virtual machine are created or updated according to the same, or the physical resource scheduling policy of the physical device platform is adjusted, or the physical resource scheduling on the physical device platform is performed.
  • the virtual machine system shown in FIG. 1 wherein the virtual resource management platform can obtain the QoS constraint parameter of the virtual machine cluster and the current running status statistics indicator of the virtual machine cluster, according to the QoS constraint of the virtual machine cluster.
  • the parameter and the current running statistics of the virtual machine cluster adjusting a physical resource scheduling policy of the physical device platform or performing physical resource scheduling on the physical device platform.
  • the upper layer scheduling module in the resource management platform may provide both the QoS constraint parameter of the virtual machine cluster and the QoS policy of the virtual machine to the lower layer scheduling module, so that the lower layer scheduling module is created.
  • the virtual machine when updating the virtual machine, or taking the physical resource scheduling for energy management purposes as a consideration, considers the current operating statistics of the virtual machine cluster, and compares the statistical indicators with the consideration factors. On the basis of this, create or update the resources of the virtual machine, or adjust the physical resource scheduling policy of the physical device platform, or perform physical resource scheduling on the physical device platform.
  • the resource management policy of the embodiment of the present invention performs the scheduling of the physical resources by considering the QoS constraint parameters of the virtual machine cluster, and prevents the resource management platform from performing virtual machines only according to the resource status of the physical machine cluster without considering the running status of the virtual machine cluster.
  • Creation or independent physical resources The source scheduling, and thus circumventing the time delay of virtual machine creation and update caused by the temporary power-on physical machine, so that the cloud resource application cannot be guaranteed due to the physical resource scheduling of the physical device platform.
  • the virtual machine's QoS policy since the virtual machine's QoS policy also becomes a consideration for physical resource mobilization, it ensures that the virtual machine is created on the correct physical machine, guarantees the security or resources of the cloud application, and improves the communication QoS.
  • the resource scheduling workflow of the upper layer scheduling module and the lower layer scheduling module in the deployment process of the cloud application may include:
  • Step 201 Receive a request for creating a cloud application, obtain attribute information of a VM Cluster serving the cloud application, and attribute information of each VM in the VM Cluster, where the attribute information of the VM Cluster includes the identifier information of the VM Cluster, The number of VMs included in the VM Cluster, the network topology relationship between the VMs, and the QoS constraint parameters of the VM Cluster, and the attribute information of each VM includes the specifications of each VM (that is, the resource configuration of the VM, for example, The memory size of the VM or the number of VCPUs) and the QoS policy of the VM;
  • the QoS constraint parameter of the VM Cluster in this embodiment may include any one or more of the following parameters: an upper limit and a lower limit of the total memory that the VM Cluster can occupy, and an average CPU utilization of the VM Cluster.
  • the upper limit value and the average communication delay upper limit of the VM Cluster are as follows: VM cluster identifier: VMClusterl;
  • the attribute information of each VM is as follows:
  • VM1 (2VCPU, 60G memory);
  • VM2 (2VCPU, 60G memory);
  • VM3 (2VCPU, 40 G memory);
  • VM regional constraint parameters All VMs must run on a physical machine with a remaining memory greater than 20G;
  • Step 202 The upper layer scheduling module determines, according to the pre-configured VM deployment policy (optional in this embodiment, if the policy configuration is not available as a reference item), the VM Cluster attribute information, and the attribute information of each VM , The deployment scenario of the cloud application process on the VM Cluster.
  • the deployment scenario of the cloud application process on the VM Cluster (ie, the application process topology information): Control process group CttlGroup, member: CttlProc; Work process group WorkerGroup, member: Workei: Pi: oc#; indicates the member process name WorkerProcl , WorkerProc2 , WorkerProc3 ;
  • WorkerPro c 1 is located in VM : VMCluster 1.VM2;
  • Step 203 The upper layer scheduling module submits a VM Cluster creation request to the lower layer scheduling module, where the VM Cluster creation request includes attribute information of the VM Cluster and attribute information of each VM included in the VM Cluster.
  • Step 204 The lower layer scheduling module records attribute information of the VM Cluster and/or attribute information of each VM included in the VM Cluster.
  • Step 205 The lower layer scheduling module queries the status information of the physical resources on the current physical device platform (including the resource utilization, topology relationship, or the number of available resources of each physical machine), according to the status of the physical resources on the current physical device platform. Information, attribute information of the VM Cluster, and attribute information of each VM, determining whether the VM Cluster can be on the physical device platform Create, if not, the upper layer scheduling module returns a failure response message, and if yes, step 206 is performed; specifically, in the embodiment of the present invention, the VM Cluster attribute information included in the lower layer scheduling module is included in the VM Cluster The QoS constraint parameter, therefore, in this step, the lower layer scheduling module may further determine whether the VM Cluster can be created on the physical machine cluster, for example, if the current remaining memory capacity of the physical machine cluster is less than or equal to the VM Cluster. The lower limit of the total memory, the lower scheduling module can determine that the creation of the VM Cluster on the physical machine cluster cannot satisfy the QoS of the cloud application, so it is determined that
  • the step 205 is optional. In most cases, the remaining resources and capabilities of the physical cluster can meet the initial deployment requirements of the VM Cluster. The lower limit of the total resources, this step is conditionally executed to further optimize the performance of the scheduling module and guarantee the QoS of the cloud application served by the VM Cluster.
  • Step 206 The lower layer scheduling module determines, according to the state information of the physical resources on the current physical device platform and the attribute information of each VM, the deployment plan of each VM on the VM cluster on the physical machine cluster.
  • the current resource utilization of the physical machine included in the physical machine cluster is as follows: PM1: Total memory: 150G, used memory: 10G; Total VCPU: 50, used VCPU:
  • PM2 Total memory: 150G, used memory: 20G; total VCPU: 50, used VCPU: 10;
  • PM3 Total memory: 150G, used memory: 0G; total VCPU: 50, used VCPU: 0.
  • the deployment plan of each VM on the VM cluster is determined as follows:
  • VM1 Specification ( 2 VCPU , 60G memory ) , where PM ( PM1 ) ;
  • VM2 Specification ( 2 VCPU, 40G memory), where PM ( PM1 ) ;
  • VM3 Specifications (2 VCPU, 60G memory), where PM (PM2).
  • VM1 and VM2 are deployed on the same physical machine PM1 according to the VM association constraint parameter, and VM3 and VM1 are respectively deployed on different physical machines PM1 and PM2 according to the VM mutual exclusion constraint parameter.
  • Step 207 The lower layer scheduling module creates each of the VM clusters by using resources on the physical machine cluster according to the determined deployment plan of each VM on the physical cluster.
  • Step 208 The lower layer scheduling module notifies the upper layer scheduling module that each VM in the VM cluster has been successfully created, and the upper layer scheduling module installs the cloud service component to each VM, and the deployment plan of the cloud application process determined on step VM 202 is performed on the VM cluster. The corresponding process is loaded on each VM.
  • the deployment process of the cloud application is completed, and each process of the cloud application runs on the corresponding VM.
  • the resource management platform acquires the attribute information of the VM Cluster and the QoS constraint parameter of the VM Cluster and the QoS policy of the VM included in the attribute information of each VM in the VM Cluster, or both.
  • it can be used for the scheduling considerations in the subsequent resource monitoring process.
  • the QoS constraint parameters of the VM Cluster it is determined whether the VM Cluster to be created can be created on the physical device platform, thereby avoiding unnecessary process waste and improving the virtual machine.
  • the delay of cluster creation plays a role in promoting QoS guarantee.
  • the upper and lower scheduling modules start the corresponding resource scheduling.
  • the upper scheduling module starts monitoring the process information of the cloud application, obtains the running information of the VM cluster serving the cloud application, and according to the preset.
  • the strategy determines whether the number of VMs in the VM Cluster or the resource configuration is scheduled, such as increasing or decreasing the VM, and expanding or reducing the capacity of the existing VM.
  • the lower scheduling module schedules physical resources according to the instructions of the upper scheduling module to add or delete VMs. , or expand or reduce the capacity of an existing VM.
  • the upper layer scheduling module resource scheduling workflow during the running of the cloud application may include:
  • Step 301 The upper layer scheduling module monitors process information of the cloud application in real time to obtain running information of the cloud application.
  • VM Cluster1 where the application is located: VM Cluster1;
  • Control process group CttlGroup member: CttlProc;
  • Worker process group WorkerGroup member: Woirkei:Pi:oc#; indicates that the member process name is orkerProcl ⁇ . orkerProc2 , WorkerProc3;
  • VMClusterl .VMl VMClusterl .VMl
  • WorkerPro c 1 is located in VM : VMCluster 1.VM2;
  • VM where WorkerProc3 is located VMClusterl.VM3; Application resource occupation information:
  • Woirkei Pi: oc2 current physical memory: 20G; Woirkei: Pi: oc3 current physical memory: 30G;
  • VM1 memory margin 30G
  • VM2 memory margin 30G
  • VM3 memory margin 10G
  • Application resource demand The total memory demand of WorkerGroup is greater than 100G.
  • Step 302 The upper scheduling module determines, according to the obtained running information of the cloud application and the preset resource scheduling policy, that a new VM needs to be created in the VM Cluster, and determines the added
  • the upper-level scheduling module determines that the current cloud application resource requirement (100G) is much larger than the current working memory of Woirkei:Pi:o C l_3 (10G + 20G + 30G two 60G), so it is decided to add one process WorkerProd requires Workei: Pi: oc4 can occupy more than 40G of memory.
  • the upper-level scheduling module query found that there is currently no VM with free memory greater than 40G, so it is decided to create a new VM.
  • the attribute information of the newly added VM is as follows:
  • VM name VM4;
  • VM4 (2VCPU, 40G memory);
  • VM4 must be in the physics of remaining memory greater than 20G Running on board;
  • VM4 and VM1 need to be run on different physical machines; further, in this step, the upper layer scheduling module further updates the attribute information of VM Cluster1 according to the attribute information of the VM4 to be added, for example :
  • VM cluster ID VMClusterl
  • Step 303 The upper layer scheduling module submits a request for creating a VM4 to the lower layer scheduling module, that is, an update request of the VM Cluster.
  • the request can be understood as an update request of the VM Cluster in the embodiment of the present invention.
  • the update request includes the attribute information of the VM4 to be created and the attribute information of the VM Cluster where the VM4 to be created is located, that is, the attribute of the updated VM Cluster1. information.
  • the resource scheduling of the upper layer scheduling module may further include reducing the number of VMs, expanding or reducing capacity of existing VMs, The implementation of the body will not be described here.
  • Step 304 The lower layer scheduling module records the attribute information of the VM4 to be created and the attribute information of the VM Cluster where the VM4 to be created is located;
  • the lower layer scheduling module may further obtain the state information of the physical resource on the current physical device platform and the operation information of the VM Cluster1 where the VM to be created is located;
  • the lower layer scheduling module may periodically collect the running information of the VM Cluster1 after the VM Cluster1 is deployed, and may also start to count the running information of the VM Cluster1 after receiving the request for creating the VM4, and the embodiment of the present invention is
  • a specific implementation manner of when the lower layer scheduling module obtains the running information of the VM Cluster1 is not limited, and can be implemented by a person skilled in the art in various manners.
  • the running information of VM Cluster1 obtained by the lower-level scheduling module is as follows:
  • VM information VM1 (2VCPU, 60G memory), where ⁇ ( PM1 ) ;
  • VM2 (2VCPU, 60G memory), where PM ( PM1 );
  • VM3 (2VCPU, 40 G memory), where PM (PM2);
  • PM PM2
  • the status information of the physical resources on the current physical device platform obtained by the lower layer scheduling module is as follows:
  • PM2 Total memory: 150G, used memory: 60G; total VCPU: 50, used VCPU: 12;
  • PM3 Total memory: 150G, used memory: 0G; total VCPU: 50, used VCPU: 0.
  • Step 305 The lower layer scheduling module determines, according to the state information of the physical resource on the current physical device platform, the running information of the VM Cluster1, the attribute information of the updated VM Cluster1, and the attribute information of the VM4 to be created, whether the VM4 can be on the physical device platform. Created, if not, the upper layer scheduling module returns a failure response message, and if yes, step 306;
  • the VM Cluster1 QoS constraint parameter is included in the attribute information of the VM Cluster1 that is sent to the lower layer scheduling module by the upper layer scheduling module. Therefore, in this step, the lower layer scheduling module may further determine the VM 4 Whether it can be created on the physical machine cluster. For example, if the total memory occupied by the VM Cluster after the VM4 is created exceeds the upper limit of the total memory occupied by the VM Cluster in the QoS constraint parameter of the VM Cluster, the lower scheduling module can It is determined that the VM 4 cannot be created on the physical machine cluster.
  • this step 305 is optional.
  • Step 306 The lower layer scheduling module determines the deployment of the VM 4 on the physical device platform according to the state information of the physical resource on the current physical device platform, the running information of the VM Cluster1, the attribute information of the updated VM Cluster1, and the attribute information of the VM4 to be created. Program.
  • the VM4 needs to be deployed on a physical machine with a remaining memory greater than 20G.
  • the VM4 association constraint parameter the VM4 and the VM3 are deployed to run on the same physical machine PM2, according to the VM4 mutual exclusion constraint parameter.
  • VM4 and VM1 are deployed on different physical machines PM2 and PM1 respectively.
  • Step 307 The lower layer scheduling module creates a VM4 according to the determined deployment plan of the VM 4 on the physical machine cluster;
  • Step 308 The lower layer scheduling module notifies the upper layer scheduling module that the VM 4 has been successfully created.
  • the layer scheduling module installs the cloud service component to VM4, and loads the corresponding process on VM4.
  • the resource management platform obtains the updated attribute information of the VM Cluster and each VM in the VM Cluster.
  • the attribute information includes either the updated VM Cluster QoS constraint parameter and the updated VM QoS policy, or both, and can be used for scheduling consideration factors in the subsequent resource monitoring process; and, according to the updated VM Cluster
  • the QoS constraint parameter determines whether the VM cluster to be created can be created on the physical device platform, avoids unnecessary process waste, improves the delay of virtual machine cluster creation, and promotes QoS guarantee.
  • the virtual resource management platform acquires and records the QoS of the virtual machine cluster.
  • Constraint parameters after the VM Cluster is deployed for the cloud application, the virtual resource management platform can periodically or at any time count the VM Cluster1 running information, or start to count the VM Cluster after receiving the resource monitoring trigger message of other management modules.
  • the operation information the embodiment of the present invention defines a specific implementation manner of not acquiring the operation information of the VM cluster when the virtual resource management platform is obtained, and can be implemented by a person skilled in the art in various manners.
  • the physical resource scheduling or the physical resource scheduling policy may be performed according to the statistically obtained information and the recorded QoS constraint parameters of the virtual machine cluster.
  • the specific implementation manner may include:
  • Step 401 Obtain a QoS constraint parameter of the virtual machine cluster.
  • Step 402 Obtain a current running status statistics indicator of the virtual machine cluster.
  • Step 403 Adjust a physical resource scheduling policy of the physical device platform or perform physical resource scheduling on the physical device platform according to the QoS constraint parameter of the virtual machine cluster and the current running status statistics of the virtual machine cluster.
  • the resource management method of the embodiment of the present invention performs the scheduling of the physical resources by considering the QoS constraint parameters of the virtual machine cluster, and prevents the resource management platform from performing the virtual machine only according to the resource status of the physical machine cluster without considering the running status of the virtual machine cluster.
  • the problem of QoS of the application at the same time, the resource management of the physical machine is more optimized, and the waste of energy consumption caused by repeated physical and electrical physical machines is avoided.
  • the foregoing embodiment may be performed by the resource management platform, and the virtual resource management platform is divided into an upper layer scheduling module for virtualizing.
  • the execution entity of the above embodiment is a lower layer scheduling module.
  • a specific implementation manner of an implementable embodiment includes the following steps:
  • Step 501 Obtain a QoS constraint parameter of the virtual machine cluster recorded during the creation of the virtual machine cluster or during the running of the virtual machine cluster;
  • Step 502 The lower layer scheduling module acquires the running information of the cloud application, that is, obtains the running information of the created VM Cluster, for example, if the cloud application 1 mentioned in the foregoing embodiment is obtained, the running information of the VM Cluster1 is obtained;
  • the lower-level scheduling module can obtain the running information of the VM Cluster1 periodically after the VM Cluster1 is deployed, and can also obtain the running information of the VM Cluster1 according to the triggering of the related message, and can also obtain the real-time acquisition.
  • the embodiment of the present invention does not perform the lower-level scheduling.
  • the specific implementation manner of when the module obtains the running information of the VM Cluster1 is limited, and can be implemented by a person skilled in the art in various ways.
  • the lower layer scheduling module may also obtain the usage status information of the physical resources on the current physical device platform when acquiring the running information of the VM Cluster.
  • Step 503 The lower layer scheduling module obtains a current running status statistics indicator of the VM Cluster according to the obtained running information of the VM Cluster.
  • the health statistics indicator may include one or any one of a sum of a statistical parameter, a maximum value, a minimum value, an average value, and a variance. Specifically, the method may include:
  • the statistical value of the current resource average utilization of the virtual machine cluster such as the average utilization of the memory currently occupied by all VMs of the VM Cluster, or the average utilization rate of the CPU currently occupied by all VMs of the VM Cluster;
  • the current average communication delay of the VM cluster For example, you can count the communication delay between any two VMs in the VM Cluster, and then average the communication delay based on the statistical delay.
  • Step 504 The lower layer scheduling module adjusts physical resources of the physical device platform according to the QoS constraint parameter of the virtual machine cluster and the current running status statistics indicator of the virtual machine cluster.
  • the physical resource scheduling or the physical resource scheduling policy modification according to the QoS constraint parameter of the virtual machine cluster and the current running status statistics indicator of the virtual machine cluster can ensure the VM Cluster QoS.
  • the scheduling of the physical resource or the modification of the physical resource scheduling policy may include the following methods:
  • the physical machine volume reduction is a scheduling operation of the energy management performed by the lower layer scheduling module according to the obtained usage status information of the physical resource cluster of the physical machine cluster.
  • the physical machine volume reduction threshold is set to 30% of the CPU usage rate, and then the lower layer scheduling module obtains according to the acquisition.
  • the usage status information of the physical resources of the physical device platform is 28%, and the lower-level scheduling module determines that the current usage of the physical machine cluster is not saturated, and energy consumption can be saved, that is, virtual Migration of the machine, a physical machine is emptied and powered off to save energy.
  • the lower layer scheduling module performs the capacity reduction operation of the physical machine only according to the actual resource usage of the physical machine cluster, but does not consider the change of the physical resource requirements of the upper layer application, which may cause resource scheduling conflicts, for example, when the upper layer scheduling module needs to be increased.
  • the lower layer scheduling module performs the volume reduction operation of the physical machine, and the conflict of the resource scheduling affects the QoS of the cloud application. Therefore, in the embodiment of the present invention, the lower layer scheduling module is configured according to the QoS constraint parameter according to the virtual machine cluster.
  • the lower layer scheduling module needs to prepare for the physical resource. Therefore, the energy consumption management of the volume reduction of the physical machine needs to be suspended, thereby suppressing the physical machine volume reduction operation on the physical device platform.
  • the QoS constraint parameter of the virtual machine cluster includes the resources of the virtual machine cluster
  • the source average utilization constraint parameter; the obtaining the current running status statistics of the virtual machine cluster in the step 503 includes: obtaining a statistical value of the current resource average utilization of the virtual machine cluster; correspondingly, in the step 504, the lower layer
  • the scheduling module compares the statistical value of the current resource average utilization ratio of the virtual machine cluster with the resource average utilization constraint parameter of the virtual machine cluster, if the statistical value of the current resource average utilization ratio of the virtual machine cluster is smaller than the virtual
  • the resource average utilization constraint parameter of the cluster is less than a set tolerance threshold, and the physical machine volume reduction operation on the physical device platform is suppressed.
  • the tolerance threshold therein may be preset.
  • the physical machine capacity reduction operation on the physical device platform may include two specific implementation manners, and one is to adjust a physical resource scheduling policy of the physical device platform, such as improving the physical device platform.
  • Physical machine volume reduction threshold for example, the current CPU average utilization statistics of all VMs of VM Cluster1 is 18%, while the VM Cluster's CPU average utilization QoS constraint parameter is 20%, and the tolerance threshold is 5%. The difference between the average utilization rate statistics and the CPU cluster average utilization QoS constraint parameter of the VM Cluster is less than the tolerance threshold. Therefore, the physical machine's capacity reduction threshold may be increased from the CPU average utilization rate of 30% to the emptying or powering off.
  • the operation for example, starts a timer, and does not perform the volume reduction operation of the physical machine within a predetermined time until the expansion operation of the virtual machine cluster is completed.
  • the lower layer scheduling module may directly power on the physical At least one physical machine on the device platform, considered virtual The expansion of the cluster is to prepare the physical resources.
  • the memory usage of PM1 and PM2 respectively reaches 130G (total resource 150G), and the average memory utilization of the physical machine cluster is 57%, which is greater than 50%, then it is decided to power on PM3, so that when When the lower layer scheduling module receives the instruction of the upper layer scheduling module and needs to perform the capacity expansion operation, the PM3 does not need to be started, and the resource scheduling delay of the lower layer scheduling module is reduced, and the QoS of the cloud application is correspondingly guaranteed.
  • the QoS constraint parameter of the virtual machine cluster obtained in the step 501 further includes: an upper limit or a lower limit of the total resource occupied by the virtual machine cluster; and the current running status statistics of the virtual machine cluster obtained in the step 503 further includes: Obtaining a statistic value of the total resource occupied by the virtual machine cluster; in a further embodiment, the lower layer scheduling module further obtains a statistic value of the total resource currently occupied by the virtual machine cluster and an occupation of the virtual machine cluster
  • the difference between the total resource upper limit and the physical machine of the corresponding specification are selected according to the difference to perform a power-on operation. For example, if the current occupied memory of the virtual machine cluster has a statistical value of 950G, it does not select a physical machine with a memory specification of 200G within the virtual machine cluster.
  • the lower layer scheduling module may further acquire current usage status information of the physical resource on the physical device platform, and perform the power-on at least when the remaining physical resources of the physical machine currently in use are insufficient. The operation of a physical machine on a physical device platform.
  • the lower layer scheduling module can also improve the priority level of the physical resource scheduling of the virtual machine cluster, When the resource scheduling update request of the virtual machine cluster is received, the lower layer scheduling module preferentially processes the resource update request to ensure the QoS of the cloud application.
  • the QoS constraint parameters of the virtual machine cluster obtained in step 501 include: a constraint parameter of the average communication delay of the virtual machine cluster; correspondingly, the current running status statistics of the virtual machine cluster obtained in step 503 include: Obtain a statistical value of the current average communication delay of the virtual machine cluster.
  • the lower layer scheduling module compares the current average communication delay statistical value of the virtual machine cluster with the average communication delay constraint parameter of the virtual machine cluster, if the current average communication delay of the virtual machine cluster is statistically A constraint parameter that is greater than the average communication delay of the virtual machine cluster, or a difference between the two is less than a set tolerance threshold, and the virtual machine of the virtual machine cluster is deployed to the same physical machine to reduce the communication time of the virtual machine cluster. Delay, thus ensuring QoS for cloud applications.
  • FIG. 6 is a schematic structural diagram of a virtual machine system resource management apparatus according to an embodiment of the present invention.
  • the virtual machine system resource management device of the embodiment of the present invention is deployed in a virtual machine system, where the virtual machine system provides services for at least one cloud application, the system includes a virtual resource management platform and a physical device platform, and the physical device platform includes At least one physical machine, the virtual resource management platform creates at least one virtual machine for each cloud application according to the physical resource provided by the physical device platform, and at least one virtual machine corresponding to each cloud application forms a virtual machine
  • the virtual machine system resource management device may include: a constraint parameter obtaining module 601, configured to acquire a QoS constraint parameter of the virtual machine cluster; a statistical indicator obtaining module 602, configured to acquire a current running status statistical indicator of the virtual machine cluster;
  • the management module 603 is configured to adjust a physical resource scheduling policy of the physical device platform or perform physical physics on the physical device platform according to the QoS constraint parameter of the virtual machine cluster and the current running status statistics of the virtual machine cluster. Resource Scheduling.
  • the constraint parameter obtaining module 601 is further configured to: during the creation of the virtual machine cluster, receive a creation request for creating the virtual machine cluster, or receive the virtual during the running of the virtual machine cluster An update request of the cluster resource, the creation request or the update request carrying the QoS constraint parameter of the virtual machine cluster; and recording the QoS constraint parameter of the virtual machine cluster.
  • the constraint parameter obtaining module 601 is specifically configured to acquire a resource average utilization constraint parameter of the virtual machine cluster;
  • the statistics indicator obtaining module 602 is specifically configured to obtain an average resource utilization ratio of the virtual machine cluster.
  • the statistic value is used by the management module 603 to compare the current resource utilization statistics of the virtual machine cluster with the resource average utilization constraint parameter of the virtual machine cluster, if the current resource of the virtual machine cluster.
  • the statistical value of the average utilization is smaller than the resource average utilization constraint parameter of the virtual machine cluster, and the difference between the two is less than a set tolerance threshold, and the physical machine volume reduction operation on the physical device platform is suppressed, and/or power is turned on. At least one physical machine on the physical device platform.
  • the management module 603 increases the physical machine volume reduction threshold on the physical device platform, or Specifically, the constraint parameter obtaining module 601 is further configured to obtain an upper limit or a lower limit of the total resources occupied by the virtual machine cluster; the statistical indicator obtaining module 602 is further configured to obtain a total occupied current of the virtual machine cluster. a statistical value of the resource; the management module 603 is specifically configured to obtain a difference between a statistical value of the total resource currently occupied by the virtual machine cluster and an upper limit of the total resource occupied by the virtual machine cluster, according to the difference The value selects the physical machine of the corresponding specification for power-on operation.
  • the management module 603 is further configured to: when the statistical value of the current resource average utilization ratio of the virtual machine cluster is greater than the resource average utilization constraint parameter of the virtual machine cluster, improve physical resources of the virtual machine cluster.
  • the priority level of the schedule is further configured to: when the statistical value of the current resource average utilization ratio of the virtual machine cluster is greater than the resource average utilization constraint parameter of the virtual machine cluster, improve physical resources of the virtual machine cluster. The priority level of the schedule.
  • the constraint parameter obtaining module 601 is specifically configured to acquire a constraint parameter of an average communication delay of the virtual machine cluster;
  • the statistical indicator obtaining module 602 is specifically configured to acquire and obtain a current average communication of the virtual machine cluster. a statistical value of the delay;
  • the management module 603 is specifically configured to compare a statistical value of a current average communication delay of the virtual machine cluster with a constraint parameter of an average communication delay of the virtual machine cluster, if the virtual machine cluster The current average communication delay statistic value is greater than the average communication delay constraint parameter of the virtual machine cluster, or the difference between the two is less than the set tolerance threshold, and the virtual machine of the virtual machine cluster is deployed centrally to the same physical machine. .
  • the QoS constraint parameter of the virtual machine cluster includes: a total resource constraint parameter of the virtual machine cluster; the device further includes: the processing module 604 is further configured to acquire the remaining physical resource information on the physical device platform Determining, according to the total resource constraint parameter occupied by the virtual machine cluster, whether the virtual machine cluster to be created or the virtual machine cluster to be updated can be executed on the physical device platform, and if so, performing virtual machine cluster creation or Update of resources.
  • FIG. 7 is a schematic structural diagram of a virtual machine system resource management apparatus according to an embodiment of the present invention.
  • the virtual machine system resource management device of the embodiment of the present invention is deployed in a virtual machine system, where the virtual machine system provides services for at least one cloud application, the system includes a virtual resource management platform and a physical device platform, and the physical device platform includes At least one physical machine, the virtual resource management platform creates at least one virtual machine for each cloud application according to the physical resource provided by the physical device platform, and at least one virtual machine corresponding to each cloud application forms a virtual machine
  • the virtual machine system resource management device may include:
  • the processor 701, the memory 702, and the communication interface 704 are connected by the system bus 703 and communicate with each other.
  • the processor 701 may be a single-core or multi-core central processing unit (Central Proce s ing Uni t, CPU), or a specific integrated circuit (ASIC), or configured One or more integrated circuits implementing embodiments of the present invention.
  • Central Proce s ing Uni t, CPU central processing unit
  • ASIC specific integrated circuit
  • the memory 702 may be a high speed RAM memory or a non-volatile memory such as at least one disk memory.
  • Memory 702 is used to store program 705.
  • program code 705 can include program code, and the program code includes computer execution instructions.
  • the processor 701 runs the program 705 to execute the following instructions:
  • the virtual machine system resource management apparatus further performs the resource management method shown in FIG. 5 according to the instruction, and details are not described herein.
  • the QoS constraint parameter is used to perform physical resource scheduling, so that the resource management platform does not consider the running state of the virtual machine cluster, but only creates virtual machines according to the resource status of the physical machine cluster or separates physical resource scheduling, and thus avoids temporary
  • the delay of virtual machine creation and update caused by the electrical physical machine can solve the problem that the QoS of the cloud application cannot be guaranteed due to the physical resource scheduling of the physical device platform.
  • the resource management of the physical machine is more optimized, and the physical and physics of the physical device is avoided. The energy consumption caused by the machine is wasted.
  • the virtual machine's QoS policy since the virtual machine's QoS policy also becomes a consideration for physical resource mobilization, it ensures that the virtual machine is created on the correct physical machine, guarantees the security or resources of the cloud application, and improves the communication QoS.
  • the disclosed systems, devices, and methods may be implemented in other manners.
  • the device embodiments described above are only schematic.
  • the division of the unit is only a logical function division.
  • there may be another division manner for example, multiple units or components may be combined or Can be integrated into another system, or some features can be ignored, or not executed.
  • Another point, shown or discussed The coupling or direct coupling or communication connection between each other may be an indirect coupling or communication connection through some interface, device or unit, and may be in an electrical, mechanical or other form.
  • the components displayed as units may or may not be physical units, that is, may be located in one place, or may be distributed to multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of the embodiment.
  • each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
  • the above integrated unit can be implemented in the form of hardware or in the form of a hardware plus software functional unit.
  • the above-described integrated unit implemented in the form of a software functional unit can be stored in a computer readable storage medium.
  • the above software functional units are stored in a storage medium and include a number of steps for causing a computer device (which may be a personal computer, server, or network device, etc.) to perform the methods of the various embodiments of the present invention.
  • the foregoing storage medium includes: a USB flash drive, a mobile hard disk, a Read-Only Memory (ROM), a random access memory (Random Access Memory), a magnetic disk or an optical disk, and the like.
  • the medium of the program code includes: a USB flash drive, a mobile hard disk, a Read-Only Memory (ROM), a random access memory (Random Access Memory), a magnetic disk or an optical disk, and the like.

Abstract

本发明实施例提供一种虚拟机系统的资源管理方法,包括:虚拟资源管理平台可以获取所述虚拟机集群的QoS约束参数以及所述虚拟机集群的当前运行状况统计指标,根据所述虚拟机集群的QoS约束参数和所述虚拟机集群的当前运行状况统计指标,调整所述物理设备平台的物理资源调度策略或者进行所述物理设备平台上的物理资源调度。该方法可以保障云应用的QoS。

Description

一种虛拟机系统的资源管理方法、 虛拟机系统和装置 技术领域 本发明实施例涉及 IT技术领域, 尤其涉及一种虚拟机系统的资源管 理方法、 虚拟机系统和装置。
背景技术
云计算的应用环境可以分为三层, 分别是云应用、 虚拟资源管理平台 和物理设备管理平台。 云应用指运行在云应用层上的程序, 运行时包含一 个或多个进程, 可能分布在一个或多个虚拟机 ( Virtual Machine, VM ) 上。 虚拟资源管理平台将物理资源虚拟化,对外提供 VM、 VM集群、虚拟卷、 虚拟网络等虚拟资源。 随着云计算的发展, 对云应用的服务质量(Quality of Service, QoS )的保证越来越受到重视。 现有技术中, QoS的调度靠虚拟 资源管理平台的调度模块来完成。 调度模块可以分为从云应用到虚拟资源 管理平台的上层调度模块和从虚拟资源管理平台到物理设备管理平台的 下层调度模块。 现有技术中, 上层调度模块根据云应用的实际状态信息对 VM集群的虚拟资源进行调整, 例如, 上层调度模块基于云应用的业务量 及吞吐情况等实时状态信息确定云应用需要使用的虚拟资源, 并决定需要 增加或减少用来处理该云应用的 VM的数量或者决定为已经创建的 VM进 行虚拟资源扩容或减容, 上层调度模块将增加或减少 VM的指令或者调整 VM资源配置的指令发送给下层调度模块, 下层调度模块根据所述指令通 过调度物理资源来增加或减少 VM, 或者为 VM扩容或减容。
可见,现有技术中,对 VM集群的 QoS的保障主要靠上层调度模块根 据云应用的实时状态作出决策并指令下层进行调整; 另外一方面, 提供
VM集群的物理资源的物理设备平台上也会有基于能耗管理和节省目的的 物理资源调度策略或者物理资源的调度, 例如, 设定物理设备平台的物理 机减容阈值为物理资源平均利用率 30% , 当物理设备平台的物理资源平均 利用率小于 30%时, 就对物理设备平台上的物理机进行迁空或者下电操作, 以节约能耗。
然而, 上述的物理设备平台上的独立的物理资源调度策略或者物理资 源的调度有可能造成以下冲突:
VM数量的时候, 物理设备平台上却在进行物理机的下电操作, 这样就会 导致为了创建新的 VM或者为 VM扩容时, 临时上电某台物理机, 因此而 使得虚拟机创建或扩容操作的时延比较长, 导致云应用的 QoS无法保障, 或者使得物理设备平台上的物理机反复上下电, 并不节约能耗。
发明内容
本发明提出了一种虚拟机系统的资源管理方法、 虚拟机系统和装置, 用以解决物理设备平台的物理资源调度导致的无法保障云应用的 QoS 的 问题。
第一方面, 本发明实施例提供了一种虚拟机系统的资源管理方法, 所述 虚拟机系统为至少一个云应用提供服务, 所述系统包括虚拟资源管理平台 和物理设备平台, 所述物理设备平台包括至少一个物理机, 所述虚拟资源 一台虚拟机, 所述每个云应用对应的至少一台虚拟机组成一个虚拟机集群; 所述方法包括:
获取所述虚拟机集群的 QoS约束参数;
获取所述虚拟机集群的当前运行状况统计指标;
根据所述虚拟机集群的 QoS约束参数和所述虚拟机集群的当前运行状 况统计指标, 调整所述物理设备平台的物理资源调度策略或者进行所述物 理设备平台上的物理资源调度。
在第一种可能的实现方式中, 在所述虚拟机集群的创建过程中, 接收 创建所述虚拟机集群的创建请求, 或者在所述虚拟机集群的运行过程中, 接收所述虚拟机集群资源的更新请求, 所述创建请求或者更新请求携带所 述虚拟机集群的 QoS约束参数; 以及, 记录所述虚拟机集群的 QoS约束参 数;
则所述获取所述虚拟机集群的 QoS约束参数包括:
获取在所述虚拟机集群的创建过程中或者在所述虚拟机集群的运行 过程中所记录的所述虚拟机集群的 QoS约束参数。
结合第一方面的第一种可能的实现方式, 在第二种可能的实现方式中, 所述虚拟机集群的 QoS约束参数包括: 所述虚拟机集群的资源平均利用率 约束参数; 获取所述虚拟机集群的当前资源平均利用率的统计值; 比较所 述虚拟机集群的当前资源平均利用率的统计值与所述虚拟机集群的资源 平均利用率约束参数, 如果所述虚拟机集群的当前资源平均利用率的统计 值小于所述虚拟机集群的资源平均利用率约束参数且两者之差小于设定 容忍阈值, 抑制所述物理设备平台上的物理机减容操作, 和 /或, 上电所述 物理设备平台上的至少一台物理机。 提高所述物理设备平台上的物理机减容阈值, 或者, 在预定期限内不发起 所述物理设备平台上的物理机迁空或下电操作。
结合第一方面的第二种可能的实现方式, 在第三种可能的实现方式中, 所述虚拟机集群的 QoS约束参数还包括: 所述虚拟机集群的占用的总资源 的上限或下限; 所述获取虚拟机集群的当前运行状况统计指标还包括: 获 取所述虚拟机集群的当前占用的总资源的统计值; 所述上电至少一台所述 物理设备平台上的物理机具体包括: 获得所述虚拟机集群的当前占用的总 资源的统计值与所述虚拟机集群的占用的总资源上限之间的差值, 根据所 述差值选择相应规格的物理机进行上电操作。
结合第一方面的第二种可能的实现方式, 在第四种可能的实现方式中, 如果所述虚拟机集群的当前资源平均利用率的统计值大于所述虚拟机集 群的资源平均利用率约束参数, 提高所述虚拟机集群的物理资源调度的优 先级级别。
结合第一方面的第一种可能的实现方式, 在第五种可能的实现方式中, 所述虚拟机集群的 QoS约束参数包括: 所述虚拟机集群的平均通信时延的 约束参数; 所述获取虚拟机集群的当前运行状况统计指标包括: 获取所述 虚拟机集群的当前平均通信时延的统计值; 比较所述虚拟机集群的当前平 均通信时延的统计值与所述虚拟机集群的平均通信时延的约束参数, 如果 所述虚拟机集群的当前平均通信时延的统计值大于所述虚拟机集群的平 均通信时延的约束参数, 或者两者之差小于设定容忍阈值, 集中部署所述 虚拟机集群的虚拟机到相同的物理机上。 第二方面, 本发明实施例还提供了一种虚拟机系统, 所述虚拟机系统为 至少一个云应用提供服务, 所述系统包括虚拟资源管理平台和物理设备平 台; 所述物理设备平台包括至少一个物理机, 用于提供物理资源; 所述虚 用创建至少一台虚拟机, 所述每个云应用对应的至少一台虚拟机组成一个 虚拟机集群, 监控云应用的运行状况, 根据所述云应用的运行状况确定是 否对所述云应用对应的虚拟机集群的资源进行更新, 以及调度所述物理设 备平台上的物理资源以实现所述虚拟机集群的创建或者资源的更新;
所述虚拟资源管理平台还用于获取所述虚拟机集群的 QoS约束参数以 及所述虚拟机集群的当前运行状况统计指标, 根据所述虚拟机集群的 QoS 约束参数和所述虚拟机集群的当前运行状况统计指标, 调整所述物理设备 在第一种可能的实现方式中, 所述虚拟资源管理平台还用于在所述虚 拟机集群的创建过程中, 接收所述虚拟机集群的创建请求, 或者在所述虚 拟机集群的运行过程中, 接收所述虚拟机集群资源的更新请求, 所述创建 请求或者更新请求携带所述虚拟机集群的 QoS约束参数, 以及, 记录所述 虚拟机集群的 QoS约束参数。
结合第二方面的第一种可能的实现方式, 在第二种可能的实现方式中, 所述虚拟机集群的 QoS约束参数包括: 所述虚拟机集群的资源平均利用率 约束参数; 所述虚拟机集群的当前运行状况统计指标包括: 所述虚拟机集 群的当前资源平均利用率的统计值;
所述虚拟资源管理平台具体用于比较所述虚拟机集群的当前资源平 均利用率的统计值与所述虚拟机集群的资源平均利用率约束参数, 如果所 述虚拟机集群的当前资源平均利用率的统计值小于所述虚拟机集群的资 源平均利用率约束参数且两者之差小于设定容忍阈值, 抑制所述物理设备 平台上的物理机减容操作, 和 /或, 上电所述物理设备平台上的至少一台物 理机。
结合第二方面的第二种可能的实现方式, 在第三种可能的实现方式中, 所述虚拟机集群的 QoS约束参数还包括: 所述虚拟机集群的占用的总资源 的上限或下限; 所述虚拟机集群的当前运行状况统计指标包括: 所述虚拟 机集群的当前占用的总资源的统计值; 所述虚拟资源管理平台还用于获得 所述虚拟机集群的当前占用的总资源的统计值与所述虚拟机集群的占用 的总资源上限之间的差值, 根据所述差值选择相应规格的物理机进行上电 操作。
结合第二方面的第二种可能的实现方式, 在第四种可能的实现方式中, 所述虚拟资源管理平台还用于在所述虚拟机集群的当前资源平均利用率 的统计值大于所述虚拟机集群的资源平均利用率约束参数时, 提高所述虚 拟机集群的物理资源调度的优先级级别。
结合第二方面的第一种可能的实现方式, 在第五种可能的实现方式中, 所述虚拟机集群的 QoS约束参数包括: : 所述虚拟机集群的平均通信时延 的约束参数; 所述虚拟机集群的当前运行状况统计指标包括: 所述虚拟机 集群的当前平均通信时延的统计值; 所述虚拟资源管理平台用于比较所述 虚拟机集群的当前平均通信时延的统计值与所述虚拟机集群的平均通信 时延的约束参数, 如果所述虚拟机集群的当前平均通信时延的统计值大于 所述虚拟机集群的平均通信时延的约束参数, 或者两者之差小于设定容忍 阈值, 集中部署所述虚拟机集群的虚拟机到相同的物理机上。
第三方面,本发明实施例还提供了一种虚拟机系统资源管理装置,所述 虚拟机系统为至少一个云应用提供服务, 所述系统包括虚拟资源管理平台 和物理设备平台, 所述物理设备平台包括至少一个物理机, 所述虚拟资源 一台虚拟机, 所述每个云应用对应的至少一台虚拟机组成一个虚拟机集群; 所述装置包括:
约束参数获取模块, 用于获取所述虚拟机集群的 QoS约束参数; 统计指标获取模块, 用于获取所述虚拟机集群的当前运行状况统计指 标;
管理模块, 用于根据所述虚拟机集群的 QoS约束参数和所述虚拟机集 群的当前运行状况统计指标, 调整所述物理设备平台的物理资源调度策略 或者进行所述物理设备平台上的物理资源调度。
第四方面, 本发明实施例还提供了一种虚拟机系统资源管理装置, 所述 虚拟机系统为至少一个云应用提供服务, 所述系统包括虚拟资源管理平台 和物理设备平台, 所述物理设备平台包括至少一个物理机, 所述虚拟资源 一台虚拟机, 所述每个云应用对应的至少一台虚拟机组成一个虚拟机集群; 所述装置包括包括处理器、 存储器、 总线和通信接口;
所述存储器用于存储计算机执行指令, 所述处理器与所述存储器通过 所述总线连接, 当所述虚拟机系统管理装置运行时, 所述处理器执行所述 存储器存储的所述计算机执行指令, 以使所述虚拟机系统管理装置执行如 上第一方面所述的虚拟机系统的资源管理方法。
第五方面, 本发明实施例还提供了一种计算机可读介质, 包括计算机执 行指令, 以供计算机的处理器执行所述计算机执行指令时, 所述计算机执 行如上第一方面所述的虚拟机系统的资源管理方法。
本发明实施例由于考虑了虚拟机集群实际运行状况与虚拟机集群的
QoS约束参数来进行物理资源的调度, 避免资源管理平台不考虑虚拟机集 群的运行状况而只根据物理机集群的资源状况进行虚拟机的创建或者独 立的物理资源调度, 并因此规避了临时上电物理机造成的虚拟机创建、 更 新的时间延迟, 因而可以解决物理设备平台的物理资源调度导致的无法保 障云应用的 QoS的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案, 下面将对实 施例或现有技术描述中所需要使用的附图作筒单地介绍, 显而易见地, 下面 描述中的附图是本发明的一些实施例, 对于本领域普通技术人员来讲, 在不 付出创造性劳动的前提下, 还可以根据这些附图获得其他的附图。
图 1为本发明实施例一提供的虚拟机系统的组成示意图;
图 2为本发明实施例二中云应用部署过程流程示意图;
图 3为本为本发明实施例三中云应用运行过程资源更新流程示意图; 图 4为本发明实施例四提供的虚拟机系统资源管理流程示意图; 图 5为为本发明实施例五提供的虚拟机系统资源管理流程示意图; 图 6为为本发明实施例六提供的虚拟机系统资源管理装置示意图; 图 7为为本发明实施例七提供的虚拟机系统资源管理装置示意图。 具体实施方式
为使本发明实施例的目的、 技术方案和优点更加清楚, 下面将结合本 发明实施例中的附图, 对本发明实施例中的技术方案进行清楚、 完整地描 述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。 基于本发明中的实施例, 本领域普通技术人员在没有做出创造性劳动的前 提下所获得的所有其他实施例, 都属于本发明保护的范围。
虚拟机系统
为了更好的理解本发明实施例, 需要介绍一下本发明实施例的系统架 构, 系统架构可分为云应用层、 虚拟机集群、 物理设备平台、 虚拟资源管 理平台:
云应用层, 用于提供云应用程序给用户, 其中云应用程序可以包含多 个进程, 进程需要在虚拟机上创建, 可以是一个进程对应一台虚拟机, 也 可以是多个进程对应一台虚拟机;
虚拟机集群, 由虚拟机组成, 良务于一个相同的云应用的虚拟机组成 供的, 可以是一台虚拟机对应一台物理机, 也可以是多台虚拟机对应一台 物理机;
物理设备平台, 包括至少一台物理机, 用于提供虚拟机所需要使用的 物理资源, 为云应用提供物理实体。
虚拟资源管理平台,根据所述物理设备平台提供的物理资源为每个云 应用创建至少一台虚拟机, 同时负责虚拟机集群的调度, 监控云应用的运 行状况, 也即监控所述虚拟机集群的运行状况, 当云应用层的云应用的
QoS无法保障时, 为虚拟机集群调度新的虚拟机或者为已有的虚拟机扩容, 以保障云应用程序的 QoS; 另外, 还根据物理资源使用状况对集群中的物 理机进行能耗管理或物理资源的调度。 如图 1所示, 为本发明实施例一提 供的虚拟机系统架构图的一种示例,该示例中的云应用层 11包括云应用 1 和云应用 2, 每个云应用示例性地包括一个控制进程和多个工作进程, 本 实施例仅以两个云应用为例, 本领域技术人员完全可以理解, 系统根据实 际工作情况还可以支持更多的云应用或者仅有一个云应用在系统中运行。 具体地说, 云应用的种类可以包含桌面云 VDI业务、数据分析业务或者网 站业务等。
虚拟资源管理平台 12 , 可以由一个或多个软件组件或模块来实现, 用 于为云应用层 11中的各种云应用创建虚拟机 VM, 虚拟资源管理平台 12在 创建 VM的时候还将物理设备平台 13中的物理资源配置给每台 VM, 其中, 对应于一个云应用的所有 VM组成一个虚拟机集群(VM Cluster ) 。 本实施 例中, 相应于云应用层 11包含的云应用 1和云应用 2 , 虚拟资源管理平台创 建了 VM Clusterl和 VM Cluster2 , VM Clusterl对应于云应用 1 , VM Clusterl 中包含多台虚拟机, VM Cluster2对应于云应用 2 , VM Cluster2中包含多台 虚拟机。 虚拟资源管理平台 12在为云应用创建 VM Cluster之后, 还会监控 云应用的运行状况信息, 并进行 VM Cluster中的 VM的数量或者配置的调度, 以及获取所述 VM Cluster的 QoS约束参数以及所述 VM Cluster的当前运行状 况统计指标, 根据所述 VM Cluster的 QoS约束参数和所述 VM Cluster的当前 运行状况统计指标, 调整所述物理设备平台的物理资源调度策略或者进行 所述物理设备平台上的物理资源调度。
物理设备平台 13上的物理机集群包含一台或多台物理机, 本实施例 以物理机集群包含三台物理机示例。 物理机集群提供的物理资源可以包括 CPU资源、 内存资源、 存储资源以及网络资源中的一种或者多种, 物理设 备平台 13提供的物理资源被虚拟资源管理平台 12抽象成多台虚拟机, 并 分配到 VM Cluster中为相应的云应用服务。
本实施例作为本发明实施例之一, 其中的虚拟资源管理平台 12 可以 具体包括上层调度模块 121和下层调度模块 122 , 在以下的本说明书中的 后续实施例中会具体阐述所述的上层调度模块 121或下层调度模块 122如 何执行调度工作的。
虚拟机集群的 QoS约束参数
一个 VM Cluster可以视为一个虚拟资源池,该资源池中的物理资源用 于为同一个云应用进行服务, 因此, 要保障云应用的 QoS , 本发明实施例 中的虚拟资源管理平台还需要考虑该云应用所对应的 VM Cluster 的 QoS 约束参数。
本发明实施例所提到的 VM Cluster 的 QoS 约束参数可以包括 VM Cluster占用的总资源的约束参数、 VM Cluster的资源平均利用率的约束参 数、 VM Cluster的平均通信时延的约束参数中的一种或者多种, 所述的约 束参数可以是具体的范围值, 例如上下限, 也可以是最小值或者最大值的 任意一种, 例如上限或者下限。 举例来说, 所述的 VM Cluster占用的总资 源的约束参数可以为 VM Cluster中的所有 VM能够允许占用的总内存的上 下限, 或者是 VM Cluster中的所有 VM能够允许占用的总虚拟中央处理器 ( Virtual Central Processing Unit , VCPU )数量的上下限,或者是 VM Cluster 中能够创建的 VM的总个数的上下限, 所述的 VM Cluster的资源平均利用 率的约束参数可以是 VM Cluster中的所有 VM占用的内存的平均利用率的 上下限, 或者是 VM Cluster中的所有 VM占用的 CPU的平均利用率的上 下限, 所述的 VM Cluster的平均通信时延的约束参数可以是 VM Cluster中 的所有 VM的平均通信时延能够允许的上下限。
应当可以理解, 上述对 VM Cluster的 QoS约束参数的描述仅仅是作 为示例性的, 资源也只是示例性地以内存或 CPU 为例, 本领域技术人员 完全可以根据上述描述,将本发明所提到的 VM Cluster的 QoS约束参数理 解到所有能够影响到 VM Cluster的 QoS 的具有集群性质的参数上。另外, 本实施例采用 VCPU表示 VM的 CPU的度量单位, 一个 VCPU的具体大 小可以指代本领域技术中通用的任何一种 CPU 计算能力的单位, 例如 MIPS (每秒百万指令数)或者 MHz (百万赫兹)。
虚拟机的 QoS策略
虚拟机的 QoS策略包括 VM区域性约束参数、 VM驻留性约束参数、 VM 关联性约束参数或 VM互斥性约束参数中的一种或几种。 VM区域性约束参 数表示指定的虚拟机只能在指定范围的物理机上创建和迁移, 用以保证云 应用的安全或者资源。 VM驻留性约束参数表示指定的虚拟机很重要, 不 可自动迁移, 如需迁移则通知管理员, 由人工决定。 VM关联性约束参数 表示指定的多个虚拟机需要放置在同一物理机上, 以提高通信 QoS。 VM 互斥性约束参数指定的多个虚拟机不能放置在同一物理机上, 以提高应用 的可靠性。 本发明实施例的资源管理策略
基于上述提及的虚拟机集群的 QoS约束参数和虚拟机的 QoS策略, 本发明实施例为解决物理设备平台的物理资源调度导致的无法保障云应 用的 QoS的问题, 资源管理平台需要获取 QoS约束参数和虚拟机的 QoS 策略两者或者两者任一, 并据此创建或者更新虚拟机的资源, 或者调整物 理设备平台的物理资源调度策略, 或者进行物理设备平台上的物理资源调 度。
如上述图 1所示的虚拟机系统, 其中的虚拟资源管理平台可以获取所 述虚拟机集群的 QoS约束参数以及所述虚拟机集群的当前运行状况统计指 标, 根据所述虚拟机集群的 QoS约束参数和所述虚拟机集群的当前运行状 况统计指标, 调整所述物理设备平台的物理资源调度策略或者进行所述物 理设备平台上的物理资源调度。
一个具体的实施例中, 资源管理平台中的上层调度模块可以将虚拟机 集群的 QoS约束参数和虚拟机的 QoS策略两者或者两者任一提供给下层 调度模块, 以使得下层调度模块在创建虚拟机, 或者在更新虚拟机, 或者 在进行以能耗管理为目的的物理资源调度时以其作为考量因素, 同时考虑 虚拟机集群的当前运行状况统计指标, 并在比较统计指标与考量因素的基 础上, 创建或者更新虚拟机的资源, 或者调整物理设备平台的物理资源调 度策略, 或者进行物理设备平台上的物理资源调度。
本发明实施例的资源管理策略,由于考虑了虚拟机集群的 QoS约束参 数来进行物理资源的调度, 避免资源管理平台不考虑虚拟机集群的运行状 况而只根据物理机集群的资源状况进行虚拟机的创建或者独立的物理资 源调度, 并因此规避了临时上电物理机造成的虚拟机创建、 更新的时间延 迟, 因而可以解决物理设备平台的物理资源调度导致的无法保障云应用的
QoS的问题, 同时, 物理机的资源管理更加优化, 避免了反复上下电物理 机造成的能耗浪费。
另外一个方面,由于虚拟机的 QoS策略也成为物理资源调动的考量因 素, 保证了虚拟机在正确的物理机上进行创建, 保证云应用的安全或者资 源, 以及提高通信 QoS。
以下将分别介绍在云应用的部署过程、 更新过程以及运行过程中的自 动监控过程中本发明实施例的资源管理的方法。
云应用部署过程中的虚拟机集群创建
在本发明的一个实施例中, 如图 2所示, 云应用的部署过程中上层调 度模块和下层调度模块的资源调度工作流程可以包括:
步骤 201 : 接收创建云应用的请求, 获取为所述云应用服务的 VM Cluster的属性信息和该 VM Cluster 中的各个 VM的属性信息, 所述 VM Cluster的属性信息包含该 VM Cluster的标识信息、该 VM Cluster中所包含 的 VM的数量、各个 VM之间的网络拓朴关系和该 VM Cluster的 QoS约束 参数, 所述各个 VM的属性信息包括各个 VM的规格(即 VM的资源配置 情况, 例如 VM的内存大小或者 VCPU的个数 ) 和 VM的 QoS策略;
具体地, 本实施例中的 VM Cluster的 QoS约束参数可以包括以下参 数中的任意一种或者多种: VM Cluster可占用的总内存的上限值和下限值、 VM Cluster的 CPU平均利用率的上限值和 VM Cluster的平均通信时延上限 值。 例如, 待创建的云应用 1的 VM Cluster的属性信息如下: VM集群标识: VMClusterl;
VM 数量: 3;
VM镜像: image 1;
VM Cluster的 QoS约束参数:
( 1 ) VM Cluster占用的总内存: 上限 500G , 下限 100G;
( 2 ) VM Cluster的 CPU平均利用率: VM Clusterl的平均 CPU利用 率小于 20%;
( 3 ) VM Cluster的平均通信时延: 小于 ls。
各个 VM的属性信息如下:
VM规格: VM1 ( 2VCPU , 60G内存) ;
VM2 ( 2VCPU , 60G内存) ;
VM3 ( 2VCPU , 40 G内存) ;
VM的 QoS策略:
( 1 ) VM区域性约束参数: 所有 VM必须在剩余内存大于 20G的物 理机上运行;
( 2 ) VM驻留性约束参数: 所有 VM可迁移;
( 3 ) VM关联性约束参数: VM1和 VM2需要在同一物理机上运行; ( 4 )VM互斥性约束参数: VM3和 VM1需要在不同一物理机上运行。 上述所获取的 VM Cluster的属性信息和各个 VM的属性信息可以是用 户创建的云应用模板中直接指定的, 也可以是根据待创建的云应用的信息 以及预置的策略共同确定的, 本发明实施例对此不做限定。 步骤 202: 上层调度模块根据预先配置的 VM部署策略(本实施例中 可选项, 若无该策略配置可以不作为参考项) 、 所述 VM Cluster的属性信 息和各个 VM的属性信息, 确定所述云应用的进程在 VM Cluster上的部署 方案。
例如,云应用的进程在 VM Cluster上的部署方案(即应用进程拓朴信息): 控制进程组 CttlGroup,成员: CttlProc; 工作进程组 WorkerGroup , 成员: Workei:Pi:oc#; 表示成员进程名为 WorkerProcl , WorkerProc2 , WorkerProc3 ;
CttlProc所在 VM: VMClusterl.VMl ;
WorkerPro c 1所在 VM : VMCluster 1.VM2;
Workei:Pi:oc2所在 VM: VMClusterl.VM2 ;
Workei:Pi:oc3所在 VM: VMCluster l.VM3 o
步骤 203:上层调度模块向下层调度模块提交 VM Cluster的创建请求, 该 VM Cluster的创建请求包含所述 VM Cluster的属性信息和该 VM Cluster 中包含的各个 VM的属性信息。
步骤 204: 下层调度模块记录 VM Cluster 的属性信息和 /或该 VM Cluster中包含的各个 VM的属性信息;
步骤 205: 下层调度模块查询当前物理设备平台上的物理资源的状态 信息(可以包含各物理机的资源利用率、拓朴关系或者可用资源数量等), 根据当前物理设备平台上的物理资源的状态信息、 VM Cluster的属性信息 和各个 VM的属性信息, 确定该 VM Cluster是否能够在该物理设备平台上 创建,如果否,向上层调度模块返回失败响应消息,如果是,执行步骤 206 ; 具体地, 本发明实施例中, 由于上层调度模块传递到下层调度模块的 VM Cluster的属性信息中包含 VM Cluster的 QoS约束参数, 因此, 在本步 骤中, 下层调度模块还可以进一步确定该 VM Cluster是否能够在该物理机 集群上创建, 例如, 如果物理机集群当前的剩余内存量小于或等于该 VM Cluster可占用的总内存的下限值, 下层调度模块据此可判断在该物理机集 群上创建该 VM Cluster不可能满足云应用的 QoS , 因此确定该 VM Cluster 不能够在该物理机集群上创建。
具体实践中, 本步骤 205是可选执行的, 大多数情况下, 物理机集群 的剩余资源和能力都能够满足 VM Cluster 的初始部署的要求, 当 VM Cluster的属性信息中包含 VM Cluster可占用的总资源的下限值, 则本步骤 被有条件的执行, 以进一步优化调度模块的性能, 保障其所创建的 VM Cluster所服务的云应用的 QoS。
步骤 206 : 下层调度模块根据当前物理设备平台上的物理资源的状态 信息和各个 VM的属性信息, 确定 VM Cluster上的各 VM在物理机集群上 的部署方案。
具体地, 例如物理机集群包含的物理机当前的资源利用情况分别如下: PM1 : 总内存: 150G , 已用内存: 10G; 总 VCPU : 50个, 已用 VCPU :
5个;
PM2 : 总内存: 150G , 已用内存: 20G; 总 VCPU : 50个, 已用 VCPU : 10个;
PM3: 总内存: 150G , 已用内存: 0G; 总 VCPU : 50个, 已用 VCPU : 0个。
根据 VM Cluster 的属性信息以及上述物理机的情况, 确定的 VM Cluster上的各 VM在物理机集群上的部署方案如下:
VM1 : 规格 ( 2 VCPU, 60G内存) , 所在 PM ( PM1 ) ;
VM2: 规格 ( 2 VCPU, 40G内存) , 所在 PM ( PM1 ) ;
VM3: 规格 ( 2 VCPU, 60G内存) , 所在 PM ( PM2 ) 。
即根据 VM关联性约束参数,将 VM1和 VM2部署在同一物理机 PM1 上运行, 根据 VM互斥性约束参数, 将 VM3和 VM1分别部署在不同的物 理机 PM1和 PM2上运行。
步骤 207: 下层调度模块根据确定的 VM Cluster上的各 VM在物理机 集群上的部署方案, 利用该物理机集群上的资源创建该 VM Cluster中的各
VM。
步骤 208: 下层调度模块通知上层调度模块该 VM Cluster中的各 VM 已创建成功, 上层调度模块安装云业务组件到各 VM上, 根据步骤 202确 定的云应用的进程在 VM Cluster上的部署方案在各 VM上加载相应的进程。
至此, 云应用的部署过程完成, 该云应用的各个进程在相应的 VM上 运行。 在云应用的部署过程中, 资源管理平台获取所述 VM Cluster的属性 信息和该 VM Cluster中的各个 VM的属性信息中包含的 VM Cluster的 QoS 约束参数和 VM的 QoS策略两者或者两者任一,并可用以后续资源监控过 程中的调度考量因素, 同时,根据 VM Cluster的 QoS约束参数确定待创建 的 VM Cluster是否能在物理设备平台上创建, 避免了不必要的流程浪费, 提高虚拟机集群创建的时延, 对 QoS的保障起到促进作用。 云应用运行过程中的虚拟机集群更新
在云应用部署完毕之后, 上下层调度模块都会启动相应的资源调度工 作, 具体地说, 上层调度模块启动监控云应用的进程信息, 获得为云应用 服务的 VM Cluster的运行信息, 并根据预置的策略决定对 VM Cluster中的 VM的数量或者资源配置进行调度, 如增加或者减少 VM, 为已有 VM扩 容或者减容; 下层调度模块根据上层调度模块的指令调度物理资源, 以增 加或者删除 VM, 或者为已有的 VM扩容或者减容。
如图 3所示, 在本发明的一个实施例中, 云应用的运行过程中上层调 度模块资源调度工作流程可以包括:
步骤 301 : 上层调度模块实时监控云应用的进程信息以获取云应用的 运行信息;
例如, 获取到云应用的如下运行信息:
应用名称: Appl ;
应用所在的 VM集群: VM Clusterl;
应用进程拓朴信息:
控制进程組 CttlGroup,成员: CttlProc;
工作进程組 WorkerGroup , 成员: Woirkei:Pi:oc#; 表示成员进程名为 orkerProcl ·. orkerProc2 , WorkerProc3;
CttlProc所在 VM: VMClusterl .VMl ;
WorkerPro c 1所在 VM : VMCluster 1.VM2;
Woirkei:Pi:oc2所在 VM: VMClusterl.VM2 ;
WorkerProc3所在 VM: VMClusterl.VM3 ; 应用资源占用信息:
WorkerProcl当前物理内存: 10G;
Woirkei:Pi:oc2当前物理内存: 20G; Woirkei:Pi:oc3当前物理内存: 30G;
VM1内存余量: 30G; VM2内存余量: 30G; VM3内存余量: 10G; 应用资源需求量: WorkerGroup的总内存需求量大于 100G。
步骤 302: 上层调度模块根据获取的云应用的运行信息和预置的资源 调度策略, 确定需要在所述 VM Cluster中创建新的 VM, 并确定所增加的
VM的属性信息;
例如, 上层调度模块确定当前云应用的资源需求量( 100G )远大于当 前为 Woirkei:Pi:oCl_3的工作内存 ( 10G + 20G + 30G 二 60G ) , 于是决定增 加 1个进程 WorkerProd 要求 Workei:Pi:oc4能够占用 40G以上内存, 然 而上层调度模块查询发现目前没有空闲内存大于 40G的 VM, 因此决定创 建一个新的 VM。
新增加的 VM的属性信息如下:
VM 名称: VM4;
VM规格: VM4 ( 2VCPU , 40G内存) ;
VM的 QoS策略:
( 1 ) VM区域性约束参数: VM4必须在剩余内存大于 20G的物理 机上运行;
( 2 ) VM驻留性约束参数: VM4可迁移;
( 3 ) VM关联性约束参数: VM4和 VM3需要在同一物理机上运行;
( 4 )VM互斥性约束参数: VM4和 VM1需要在不同一物理机上运行; 进一步地, 在本步骤中, 上层调度模块进一步还根据待增加的 VM4 的属性信息更新 VM Clusterl的属性信息, 例如:
VM集群标识: VMClusterl;
VM 数量: 4;
VM镜像: image 1;
VM Cluster的 QoS约束参数:
( 1 ) VM Cluster占用的总内存: 上限 500G , 下限 100G;
( 2 ) VM Cluster的 CPU平均利用率: VM Clusterl的平均 CPU利用 率小于 20%;
( 3 ) VM Cluster的平均通信时延: 小于 ls。
步骤 303: 上层调度模块向下层调度模块提交创建 VM4 的请求, 即 VM Cluster的更新请求 (由于执行该创建 VM4 的请求后, 其所在的 VM Cluster的资源配置将会有所更新, 因此创建 VM4的请求在本发明实施例 中可以理解成 VM Cluster的更新请求 ) , 该更新请求中包含待创建的 VM4 的属性信息和待创建的 VM4所在的 VM Cluster的属性信息, 即更新后的 VM Clusterl的属性信息。
上述实施例以增加 VM的数量为例, 在其它的实施例中, 上层调度模 块的资源调度还可以包括减少 VM的数量、 为已有 VM扩容或者减容, 具 体实现方式在此不赘述。
步骤 304:下层调度模块记录所述待创建的 VM4的属性信息和待创建 的 VM4所在的 VM Cluster的属性信息;
进一步地, 下层调度模块还可以进一步获取当前物理设备平台上的物 理资源的状态信息和待创建 VM所在的 VM Clusterl的运行信息;
具体地, 下层调度模块可以在部署了 VM Clusterl之后, 即可定期统 计 VM Clusterl的运行信息, 也可以在接收到创建 VM4的请求之后, 才开 始统计 VM Clusterl的运行信息, 本发明实施例对并不对下层调度模块何 时以及如何获取 VM Clusterl的运行信息的具体实现方式进行限定, 本领 域技术人员可以通过多种方式实现。
下层调度模块获取的 VM Clusterl的运行信息举例如下:
成员 VM: VM1、 VM2、 VM3;
VM信息: VM1 ( 2VCPU、 60G内存) , 所在 ΡΜ ( PM1 ) ;
VM2 ( 2VCPU、 60G内存) , 所在 PM ( PM1 ) ;
VM3 ( 2VCPU , 40 G内存) , 所在 PM ( PM2 ) ; 下层调度模块获取的当前物理设备平台上的物理资源的状态信息举 例如下:
PM1 : 总内存: 150G, 已用内存: 130G; 总 VCPU: 50个, 已用 VCPU:
9个;
PM2: 总内存: 150G, 已用内存: 60G; 总 VCPU: 50个, 已用 VCPU: 12个;
PM3: 总内存: 150G, 已用内存: 0G; 总 VCPU: 50个, 已用 VCPU: 0个。
步骤 305: 下层调度模块根据当前物理设备平台上的物理资源的状态 信息、 VM Clusterl的运行信息、 更新的 VM Clusterl的属性信息和待创建 VM4的属性信息, 确定该 VM4是否能够在该物理设备平台上创建, 如果 否, 向上层调度模块返回失败响应消息, 如果是, 执行步骤 306;
具体地, 本发明实施例中, 由于上层调度模块传递到下层调度模块的 VM Clusterl的属性信息中包含 VM Clusterl的 QoS约束参数, 因此, 在本 步骤中, 下层调度模块还可以进一步确定该 VM 4是否能够在该物理机集 群上创建, 例如, 如果创建 VM4之后该 VM Cluster占用的总内存超出了 VM Cluster的 QoS约束参数中的 VM Cluster占用的总内存的上限值, 下层 调度模块据此可判断在该物理机集群上不能创建该 VM 4。
具体实践中, 本步骤 305是可选执行的。
步骤 306: 下层调度模块根据当前物理设备平台上的物理资源的状态 信息、 VM Clusterl的运行信息、 更新的 VM Clusterl的属性信息和待创建 VM4的属性信息, 确定 VM 4在物理设备平台上的部署方案。
具体地, 根据 VM4区域性约束参数, VM4需要部署在剩余内存大于 20G的物理机上, 根据 VM4关联性约束参数, 将 VM4和 VM3部署在同 一物理机 PM2上运行, 根据 VM4互斥性约束参数, 将 VM4和 VM1分别 部署在不同的物理机 PM2和 PM1上运行。 步骤 307: 下层调度模块根据确定的 VM 4在物理机集群上的部署方案, 创建 VM4;
步骤 308: 下层调度模块通知上层调度模块该 VM 4 已创建成功, 上 层调度模块安装云业务组件到 VM4上, 在 VM4上加载相应的进程。
至此, 云应用的运行过程中的虚拟机集群的更新过程完成, 在云应用 的虚拟集群的更新过程中, 资源管理平台获取更新后的所述 VM Cluster的 属性信息和该 VM Cluster 中的各个 VM 的属性信息中包含的更新的 VM Cluster的 QoS约束参数和更新的 VM的 QoS策略两者或者两者任一, 并 可用以后续资源监控过程中的调度考量因素;同时,根据更新的 VM Cluster 的 QoS约束参数确定待创建的 VM Cluster是否能在物理设备平台上创建, 避免了不必要的流程浪费,提高虚拟机集群创建的时延, 对 QoS的保障起 到促进作用。
云应用运行过程中的资源管理
在上述的云应用部署时的虚拟机集群创建过程和云应用运行时的虚 拟机集群更新过程中, 虚拟资源管理平台 (具体实施例为其中的下层调度 模块)获取并记录了虚拟机集群的 QoS约束参数, 那么在为云应用部署了 VM Cluster之后, 虚拟资源管理平台即可定期或者随时统计 VM Clusterl 的运行信息, 也可以在接收到其它管理模块的资源监控触发消息之后, 开 始统计 VM Cluster的运行信息, 本发明实施例对并不对虚拟资源管理平台 何时获取 VM Cluster的运行信息的具体实现方式进行限定, 本领域技术人 员可以通过多种方式实现。 并可根据统计得到的信息以及记录的虚拟机集 群的 QoS约束参数, 进行物理资源的调度或者修改物理资源调度策略。
本发明实施例中, 如图 4所示, 具体实施方式可包括:
步骤 401 : 获取所述虚拟机集群的 QoS约束参数;
步骤 402: 获取所述虚拟机集群的当前运行状况统计指标; 步骤 403:根据所述虚拟机集群的 QoS约束参数和所述虚拟机集群的当 前运行状况统计指标, 调整所述物理设备平台的物理资源调度策略或者进 行所述物理设备平台上的物理资源调度。
本发明实施例的资源管理方法,由于考虑了虚拟机集群的 QoS约束参 数来进行物理资源的调度, 避免资源管理平台不考虑虚拟机集群的运行状 况而只根据物理机集群的资源状况进行虚拟机的创建, 或者避免了资源管 理平台进行独立的物理资源调度, 并因此规避了临时上电物理机造成的虚 拟机创建、 更新的延迟, 因而可以解决物理设备平台的物理资源调度导致 的无法保障云应用的 QoS的问题, 同时, 物理机的资源管理更加优化, 避 免了反复上下电物理机造成的能耗浪费。
当虚拟资源管理平台的虚拟机资源管理和物理机资源管理的功能可 以不细分为不同的模块处理时, 上述实施例可以由资源管理平台执行, 当 虚拟资源管理平台划分为上层调度模块进行虚拟机资源管理, 下层调度模 块进行物理机资源管理的架构中, 上述实施例的执行主体是下层调度模块。
如上实施例, 在虚拟资源管理平台划分上下层调度模块的架构中, 如 图 5所示, 一种可实现的实施例的具体实施方式包括如下步骤:
步骤 501 : 获取在所述虚拟机集群的创建过程中或者在所述虚拟机集 群的运行过程中所记录的所述虚拟机集群的 QoS约束参数;
例如获取上述步骤 204或 304中记录的 VM Clusterl的 QoS约束参数。 步骤 502: 下层调度模块获取云应用的运行信息,即获取已创建的 VM Cluster的运行信息, 例如如果对于上述实施例中所提到的云应用 1 , 即获 VM Clusterl的运行信息; 下层调度模块可以在部署了 VM Clusterl 之后, 可定期获取 VM Clusterl的运行信息, 也可以根据相关消息的触发才开始获取 VM Clusterl 的运行信息, 也可使实时获取, 本发明实施例并不对下层调度模块何时获 取 VM Clusterl的运行信息的具体实现方式进行限定, 本领域技术人员可 以通过多种方式实现。
进一步地, 下层调度模块还可以在获取已创建的 VM Cluster的运行信 息的时候, 也获取当前物理设备平台上的物理资源的使用状态信息。
步骤 503:下层调度模块根据获取的已创建的 VM Cluster的运行信息, 获取所述 VM Cluster的当前运行状况统计指标;
该运行状况统计指标可以包括统计参数的和、 最大值、 最小值、 平均 值和方差中的一种或者任意几种, 具体地, 可以包括:
( 1 )虚拟机集群的的当前资源平均利用率的统计值,例如 VM Cluster 的所有 VM 当前占用的内存的平均利用率, 或者统计 VM Cluster的所有 VM当前占用的 CPU的平均利用率;
( 2 )虚拟机集群的占用的总资源的统计值, 例如 VM Cluster的所有 VM当前占用的内存或者 CPU的和值;
( 3 ) 虚拟机集群的当前平均通信时延的统计值, 例如可以统计 VM Cluster中所有任意两个 VM之间的通信时延, 再根据统计得到的时延求的 通信时延的平均值。
步骤 504: 下层调度模块根据所述虚拟机集群的 QoS约束参数和所述 虚拟机集群的当前运行状况统计指标, 调整所述物理设备平台的物理资源 本步骤中根据虚拟机集群的 QoS 约束参数和所述虚拟机集群的当前 运行状况统计指标, 来进行物理资源的调度或者物理资源调度策略的修改 可以确保 VM Cluster的 QoS。
具体地, 进行物理资源的调度或者物理资源调度策略的修改可以包括 以下几种方式:
( 1 )抑制所述物理设备平台上的物理机减容操作;
物理机减容是下层调度模块根据获取的物理机集群的物理资源的使 用状态信息作出的能耗管理的调度工作,例如物理机减容阈值设置为 CPU 使用率 30% , 那么下层调度模块根据获取的物理机设备平台的物理资源的 使用状态信息统计得到物理机集群的 CPU平均使用率为 28% , 则下层调 度模块确定物理机集群当前的使用并不饱和, 可以进行能耗节省, 即进行 虚拟机的迁移, 将某台物理机迁空并进行下电操作, 以节约能耗。
然而, 下层调度模块仅根据物理机集群的实际资源使用情况进行物理 机的减容操作, 却不考虑上层应用对物理资源的需求变化可能会引起资源 调度的冲突, 例如当上层调度模块需要增加使用物理资源的时候, 下层调 度模块却进行物理机的减容操作, 这些资源调度的冲突会影响到云应用的 QoS , 因此本发明实施例中下层调度模块根据根据所述虚拟机集群的 QoS 约束参数和所述虚拟机集群的当前运行状况统计指标, 如果确定上层调度 模块即将开始对该 VM Cluster进行扩容或者增加新的虚拟机的资源调度, 那么下层调度模块需要为此作好物理资源的准备, 因此物理机的减容的能 耗管理需要暂緩, 因此抑制所述物理设备平台上的物理机减容操作。
具体地, 若所述虚拟机集群的 QoS约束参数包括所述虚拟机集群的资 源平均利用率约束参数; 所述步骤 503中获取虚拟机集群的当前运行状况 统计指标包括: 获取所述虚拟机集群的当前资源平均利用率的统计值; 相 应地, 在本步骤 504中, 下层调度模块比较所述虚拟机集群的当前资源平 均利用率的统计值与所述虚拟机集群的资源平均利用率约束参数, 如果所 述虚拟机集群的当前资源平均利用率的统计值小于所述虚拟机集群的资 源平均利用率约束参数且两者之差小于设定容忍阈值, 抑制所述物理设备 平台上的物理机减容操作。
其中的容忍阈值可以是预先设定的。
再进一步地,抑制所述物理设备平台上的物理机减容操作可以包括两 种具体的实现方式, 一种是调整所述物理设备平台的物理资源调度策略, 如提高所述物理设备平台上的物理机减容阈值, 例如, VM Clusterl的所有 VM的当前 CPU平均利用率统计值是 18% , 而 VM Cluster的 CPU平均利 用率 QoS约束参数为 20% , 容忍阈值为 5% , 此时当前 CPU平均利用率统 计值与所述 VM Cluster的 CPU平均利用率 QoS约束参数之差小于容忍阈 值, 因此, 可以所述将物理机的减容阈值由 CPU平均利用率 30%提高为 迁空或下电操作, 例如, 启动一个定时器, 在预定时间内不执行物理机的 减容操作, 直到所述虚拟机集群的扩容操作完成。
( 2 ) 上电所述物理设备平台上的至少一台物理机;
如果所述虚拟机集群的当前资源平均利用率的统计值小于所述虚拟 机集群的资源平均利用率约束参数且两者之差小于设定容忍阈值, 下层调 度模块还可以直接上电所述物理设备平台上的至少一台物理机, 以为虚拟 机集群的扩容做好物理资源的准备。
例如, 上述实施例中, PM1和 PM2的内存占用分别达到了 130G (总 资源 150G ) , 物理机集群的内存平均利用率 57% , 已经大于 50% , 则决 定将 PM3 进行上电, 这样, 当下层调度模块后续接收到上层调度模块的 指令需要进行扩容操作时, 不需要再去启动 PM3 , 下层调度模块的资源调 度时延得到降低, 云应用的 QoS相应得到保障。
当所述步骤 501中获取的虚拟机集群的 QoS约束参数还包括:所述虚拟 机集群的占用的总资源的上限或下限; 步骤 503中获取的虚拟机集群的当 前运行状况统计指标还包括: 获取所述虚拟机集群的当前占用的总资源的 统计值; 一个进一步的实施例中, 下层调度模块还获得所述虚拟机集群的 当前占用的总资源的统计值与所述虚拟机集群的占用的总资源上限之间 的差值, 根据所述差值选择相应规格的物理机进行上电操作。 例如, 如果 所述虚拟机集群的当前占用的内存的统计值是 950G ,其与虚拟机集群的内 而不选择内存规格 200G的物理机。
另一个进一步的实施例中, 下层调度模块还可以获取所述物理设备平 台上的物理资源当前使用状态信息, 在当前在使用的物理机的剩余物理资 源不充分时, 才执行所述上电至少一台所述物理设备平台上的物理机的操 作。
( 3 )提高虚拟机集群的物理资源调度的优先级级别;
如果所述虚拟机集群的当前资源平均利用率的统计值大于所述虚拟 机集群的资源平均利用率约束参数, 此时, 需要加快为所述虚拟机集群增 加虚拟机或者未虚拟机扩容的操作的速度, 减小该操作的时延才能保障云 应用的 QoS , 此时下层调度模块还可以提高所述虚拟机集群的物理资源调 度的优先级级别, 以保障下层调度模块在接收到所述虚拟机集群的资源更 新请求时, 优先处理该资源更新请求, 以保障云应用的 QoS。
( 4 ) 集中部署虚拟机集群的虚拟机到相同的物理机上;
当步骤 501中获取的所述虚拟机集群的 QoS约束参数包括:所述虚拟机 集群的平均通信时延的约束参数; 相应地, 步骤 503中获取的虚拟机集群 的当前运行状况统计指标包括: 获取所述虚拟机集群的当前平均通信时延 的统计值。
此时下层调度模块比较所述虚拟机集群的当前平均通信时延的统计 值与所述虚拟机集群的平均通信时延的约束参数, 如果所述虚拟机集群的 当前平均通信时延的统计值大于所述虚拟机集群的平均通信时延的约束 参数, 或者两者之差小于设定容忍阈值, 集中部署所述虚拟机集群的虚拟 机到相同的物理机上, 以降低虚拟机集群的通信时延, 从而保障云应用的 QoS。
图 6为本发明实施例的虚拟机系统资源管理装置的结构组成示意图。 本发明实施例的虚拟机系统资源管理装置部署在虚拟机系统中, 所述虚拟 机系统为至少一个云应用提供服务, 所述系统包括虚拟资源管理平台和物 理设备平台, 所述物理设备平台包括至少一个物理机, 所述虚拟资源管理 平台根据所述物理设备平台提供的物理资源为每个云应用创建至少一台 虚拟机, 所述每个云应用对应的至少一台虚拟机组成一个虚拟机集群; 该虚拟机系统资源管理装置可包括: 约束参数获取模块 601 , 用于获取所述虚拟机集群的 QoS约束参数; 统计指标获取模块 602 , 用于获取所述虚拟机集群的当前运行状况统 计指标;
管理模块 603 ,用于根据所述虚拟机集群的 QoS约束参数和所述虚拟机 集群的当前运行状况统计指标, 调整所述物理设备平台的物理资源调度策 略或者进行所述物理设备平台上的物理资源调度。
具体地, 约束参数获取模块 601 , 还用于在所述虚拟机集群的创建过 程中, 接收创建所述虚拟机集群的创建请求, 或者在所述虚拟机集群的运 行过程中, 接收所述虚拟机集群资源的更新请求, 所述创建请求或者更新 请求携带所述虚拟机集群的 QoS约束参数; 以及, 记录所述虚拟机集群的 QoS约束参数。
具体地, 所述约束参数获取模块 601具体用于获取所述虚拟机集群的 资源平均利用率约束参数; 所述统计指标获取模块 602 , 具体用于获取所 述虚拟机集群的当前资源平均利用率的统计值; 所述管理模块 603具体用 于比较所述虚拟机集群的当前资源平均利用率的统计值与所述虚拟机集 群的资源平均利用率约束参数, 如果所述虚拟机集群的当前资源平均利用 率的统计值小于所述虚拟机集群的资源平均利用率约束参数且两者之差 小于设定容忍阈值, 抑制所述物理设备平台上的物理机减容操作, 和 /或, 上电所述物理设备平台上的至少一台物理机。 管理模块 603提高所述物理设备平台上的物理机减容阈值, 或者, 在预定 具体地, 所述约束参数获取模块 601还用于获取所述虚拟机集群的占 用的总资源的上限或下限; 所述统计指标获取模块 602还用于获取所述虚 拟机集群的当前占用的总资源的统计值; 所述管理模块 603具体用于获得 所述虚拟机集群的当前占用的总资源的统计值与所述虚拟机集群的占用 的总资源上限之间的差值, 根据所述差值选择相应规格的物理机进行上电 操作。
具体地, 所述管理模块 603还用于在所述虚拟机集群的当前资源平均 利用率的统计值大于所述虚拟机集群的资源平均利用率约束参数时, 提高 所述虚拟机集群的物理资源调度的优先级级别。
具体地, 所述约束参数获取模块 601具体用于获取所述虚拟机集群的 平均通信时延的约束参数; 所述统计指标获取模块 602 , 具体用于获取获 取所述虚拟机集群的当前平均通信时延的统计值; 所述管理模块 603具体 用于比较所述虚拟机集群的当前平均通信时延的统计值与所述虚拟机集 群的平均通信时延的约束参数, 如果所述虚拟机集群的当前平均通信时延 的统计值大于所述虚拟机集群的平均通信时延的约束参数, 或者两者之差 小于设定容忍阈值, 集中部署所述虚拟机集群的虚拟机到相同的物理机上。
具体地, 所述虚拟机集群的 QoS约束参数包括: 所述虚拟机集群的占 用的总资源约束参数; 所述装置还包括: 处理模块 604还用于获取所述物 理设备平台上剩余物理资源信息, 根据所述虚拟机集群的占用的总资源约 束参数, 确定待创建的虚拟机集群或者待更新的虚拟机集群是否能够在所 述物理设备平台上执行,如果是,执行虚拟机集群的创建或者资源的更新。
图 7为本发明实施例的虚拟机系统资源管理装置的结构组成示意图。 本发明实施例的虚拟机系统资源管理装置部署在虚拟机系统中, 所述虚拟 机系统为至少一个云应用提供服务, 所述系统包括虚拟资源管理平台和物 理设备平台, 所述物理设备平台包括至少一个物理机, 所述虚拟资源管理 平台根据所述物理设备平台提供的物理资源为每个云应用创建至少一台 虚拟机, 所述每个云应用对应的至少一台虚拟机组成一个虚拟机集群; 该虚拟机系统资源管理装置可包括:
处理器 701、 存储器 702、 系统总线 703和通信接口 704。 处理器 701、 存储器 702和通信接口 704之间通过系统总线 703连接并完成相互间的通信。
处理器 701可能为单核或多核中央处理单元(Cent ra l Proces s ing Uni t , CPU ) , 或者为特定集成电路 ( App l icat ion Spec if ic Integrated Ci rcui t , ASIC ) , 或者为被配置成实施本发明实施例的一个或多个集成电路。
存储器 702 可以为高速 RAM 存储器, 也可以为非易失性存储器 ( non-volat i le memory ) , 例如至少一个磁盘存储器。
存储器 702用于存放程序 705。具体的,程序 705中可以包括程序代码, 所述程序代码包括计算机执行指令。
当虚拟机系统资源管理装置运行时, 处理器 701运行程序 705 , 以执行 以下指令:
获取所述虚拟机集群的 QoS约束参数;
获取所述虚拟机集群的当前运行状况统计指标;
根据所述虚拟机集群的 QoS约束参数和所述虚拟机集群的当前运行状 况统计指标, 调整所述物理设备平台的物理资源调度策略或者进行所述物 理设备平台上的物理资源调度。 具体地, 虚拟机系统资源管理装置还根据所述指令执行上述图 5所示 的资源管理方法, 具体在此不再赘述。 的 QoS约束参数来进行物理资源的调度,避免资源管理平台不考虑虚拟机 集群的运行状况而只根据物理机集群的资源状况进行虚拟机的创建或者 独立的物理资源调度, 并因此规避了临时上电物理机造成的虚拟机创建、 更新的延迟, 因而可以解决物理设备平台的物理资源调度导致的无法保障 云应用的 QoS的问题, 同时, 物理机的资源管理更加优化, 避免了反复上 下电物理机造成的能耗浪费。
另外一个方面,由于虚拟机的 QoS策略也成为物理资源调动的考量因 素, 保证了虚拟机在正确的物理机上进行创建, 保证云应用的安全或者资 源, 以及提高通信 QoS。
所属领域的技术人员可以清楚地了解到, 为描述的方便和筒洁, 上述 描述的系统, 设备和单元的具体工作过程, 可以参考前述方法实施例中的 对应过程, 在此不再赘述。
本领域普通技术人员可以理解: 附图只是一个实施例的示意图, 附图 中的单元或流程并不一定是实施本发明所必须的。
在本申请所提供的几个实施例中, 应该理解到, 所揭露的系统, 设备 和方法, 可以通过其它的方式实现。 例如, 以上所描述的设备实施例仅仅 是示意性的, 例如, 所述单元的划分, 仅仅为一种逻辑功能划分, 实际实 现时可以有另外的划分方式, 例如多个单元或组件可以结合或者可以集成 到另一个系统, 或一些特征可以忽略, 或不执行。 另一点, 所显示或讨论 的相互之间的耦合或直接耦合或通信连接可以是通过一些接口, 设备或单 元的间接耦合或通信连接, 可以是电性, 机械或其它的形式。 作为单元显示的部件可以是或者也可以不是物理单元, 即可以位于一个地 方, 或者也可以分布到多个网络单元上。 可以根据实际的需要选择其中的 部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元 中, 也可以是各个单元单独物理存在, 也可以两个或两个以上单元集成在 一个单元中。 上述集成的单元既可以采用硬件的形式实现, 也可以采用硬 件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元, 可以存储在一个计算 机可读取存储介质中。 上述软件功能单元存储在一个存储介质中, 包括若 干指令用以使得一台计算机设备(可以是个人计算机, 服务器, 或者网络 设备等)执行本发明各个实施例所述方法的部分步骤。 而前述的存储介质 包括: U盘、 移动硬盘、 只读存储器( Read-Only Memory, 筒称 ROM ) 、 随机存取存储器 (Random Access Memory , 筒称 RAM ) 、 磁碟或者光盘 等各种可以存储程序代码的介质。
最后应说明的是: 以上实施例仅用以说明本发明的技术方案, 而非对 其限制; 尽管参照前述实施例对本发明进行了详细的说明, 本领域的普通 技术人员应当理解: 其依然可以对前述各实施例所记载的技术方案进行修 改, 或者对其中部分技术特征进行等同替换; 而这些修改或者替换, 并不 使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims

权利要求书
1、 一种虚拟机系统的资源管理方法, 其特征在于, 所述虚拟机系统 为至少一个云应用提供服务, 所述系统包括虚拟资源管理平台和物理设备 平台, 所述物理设备平台包括至少一个物理机, 所述虚拟资源管理平台根 据所述物理设备平台提供的物理资源为每个云应用创建至少一台虚拟机, 所述每个云应用对应的至少一台虚拟机组成一个虚拟机集群; 所述方法包 括:
获取所述虚拟机集群的 QoS约束参数;
获取所述虚拟机集群的当前运行状况统计指标;
根据所述虚拟机集群的 QoS约束参数和所述虚拟机集群的当前运行状 况统计指标, 调整所述物理设备平台的物理资源调度策略或者进行所述物 理设备平台上的物理资源调度。
2、 如权利要求 1所述的方法, 其特征在于, 所述获取所述虚拟机集群 的 QoS约束参数之前, 还包括:
在所述虚拟机集群的创建过程中,接收创建所述虚拟机集群的创建请 求, 或者在所述虚拟机集群的运行过程中, 接收所述虚拟机集群资源的更 新请求,所述创建请求或者更新请求携带所述虚拟机集群的 QoS约束参数; 以及, 记录所述虚拟机集群的 QoS约束参数;
则所述获取所述虚拟机集群的 QoS约束参数包括:
获取在所述虚拟机集群的创建过程中或者在所述虚拟机集群的运行 过程中所记录的所述虚拟机集群的 QoS约束参数。
3、 如权利要求 1或 2所述的方法, 其特征在于, 所述虚拟机集群的 QoS 约束参数包括: 所述虚拟机集群的资源平均利用率约束参数; 相应地, 所述获取虚拟机集群的当前运行状况统计指标包括: 获取所 述虚拟机集群的当前资源平均利用率的统计值;
相应地, 根据所述虚拟机集群的 QoS约束参数和所述虚拟机集群的当 前资源使用统计指标, 调整所述物理设备平台的物理资源调度策略或者进 行所述物理设备平台上的物理资源调度, 包括:
比较所述虚拟机集群的当前资源平均利用率的统计值与所述虚拟机 集群的资源平均利用率约束参数, 如果所述虚拟机集群的当前资源平均利 用率的统计值小于所述虚拟机集群的资源平均利用率约束参数且两者之 差小于设定容忍阈值, 抑制所述物理设备平台上的物理机减容操作, 和 / 或, 上电所述物理设备平台上的至少一台物理机。
4、 如权利要求 3所述的方法, 其特征在于, 所述抑制所述物理设备平 台上的物理机减容操作包括:
提高所述物理设备平台上的物理机减容阈值, 或者, 在预定期限内不 发起所述物理设备平台上的物理机迁空或下电操作。
5、 如权利要求 3所述的方法, 其特征在于, 所述虚拟机集群的 QoS约 束参数还包括: 所述虚拟机集群的占用的总资源的上限或下限;
所述获取虚拟机集群的当前运行状况统计指标还包括: 获取所述虚拟 机集群的当前占用的总资源的统计值;
所述上电至少一台所述物理设备平台上的物理机具体包括:
获得所述虚拟机集群的当前占用的总资源的统计值与所述虚拟机集 群的占用的总资源上限之间的差值, 根据所述差值选择相应规格的物理机 进行上电操作。
6、 如权利要求 3或 5所述的方法, 其特征在于, 在上电至少一台所述 物理设备平台上的物理机之前, 还包括:
获取所述物理设备平台上的物理资源当前使用状态信息, 若当前在使 用的物理机的剩余物理资源不充分, 执行所述上电至少一台所述物理设备 平台上的物理机的步骤。
7、 如权利要求 3或 5所述的方法, 其特征在于, 所述方法还包括: 如果所述虚拟机集群的当前资源平均利用率的统计值大于所述虚拟 机集群的资源平均利用率约束参数, 提高所述虚拟机集群的物理资源调度 的优先级级别。
8、 如权利要求 1或 2所述的方法, 其特征在于, 所述虚拟机集群的 QoS 约束参数包括: 所述虚拟机集群的平均通信时延的约束参数;
相应地, 所述获取虚拟机集群的当前运行状况统计指标包括: 获取所 述虚拟机集群的当前平均通信时延的统计值;
相应地, 根据所述虚拟机集群的 QoS约束参数和所述虚拟机集群的当 前资源使用统计指标, 调整所述物理设备平台的物理资源调度策略或者进 行所述物理设备平台上的物理资源调度, 包括:
比较所述虚拟机集群的当前平均通信时延的统计值与所述虚拟机集 群的平均通信时延的约束参数, 如果所述虚拟机集群的当前平均通信时延 的统计值大于所述虚拟机集群的平均通信时延的约束参数, 或者两者之差 小于设定容忍阈值, 集中部署所述虚拟机集群的虚拟机到相同的物理机上。
9、 如权利要求 2所述的方法, 其特征在于, 所述虚拟资源管理平台包 括上层调度模块和下层调度模块, 所述方法还包括:
在所述虚拟机集群的创建过程中, 所述上层调度模块接收所述虚拟机 集群的创建请求, 或者在所述虚拟机集群的运行过程中, 接收所述虚拟机 集群资源的更新请求, 所述创建请求或者更新请求携带所述虚拟机集群的
QoS约束参数;
所述上层调度模块将所述创建请求或者更新请求转发给所述下层调 度模块, 以使得所述下层调度模块接收并记录所述创建请求或者更新请求 中携带的所述虚拟机集群的 QoS约束参数。
10、 如权利要求 2所述的方法, 其特征在于, 所述方法还包括: 接收到所述创建请求或者更新请求之后, 根据所述创建请求或者更新 或者资源的更新。
11、 如权利要求 10所述的方法, 其特征在于, 所述虚拟机集群的 QoS 约束参数包括: 所述虚拟机集群的占用的总资源约束参数;
所述调度所述物理设备平台上的物理资源以实现所述虚拟机集群的 创建或者资源的更新之前, 还包括:
获取所述物理设备平台上剩余物理资源信息,根据所述虚拟机集群的 占用的总资源约束参数, 确定待创建的虚拟机集群或者待更新的虚拟机集 群是否能够在所述物理设备平台上执行, 如果是, 执行所述调度所述物理 设备平台上的物理资源的步骤。
12、 一种虚拟机系统, 其特征在于, 所述虚拟机系统为至少一个云应 用提供服务, 所述系统包括虚拟资源管理平台和物理设备平台; 所述物理设备平台包括至少一个物理机, 用于提供物理资源 为每个云应用创建至少一台虚拟机, 所述每个云应用对应的至少一台虚拟 机组成一个虚拟机集群, 监控云应用的运行状况, 根据所述云应用的运行 状况确定是否对所述云应用对应的虚拟机集群的资源进行更新, 以及调度 所述物理设备平台上的物理资源以实现所述虚拟机集群的创建或者资源 的更新;
所述虚拟资源管理平台还用于获取所述虚拟机集群的 QoS约束参数以 及所述虚拟机集群的当前运行状况统计指标, 根据所述虚拟机集群的 QoS 约束参数和所述虚拟机集群的当前运行状况统计指标, 调整所述物理设备
13、 如权利要求 12所述的系统, 其特征在于, 所述虚拟资源管理平台 还用于在所述虚拟机集群的创建过程中, 接收所述虚拟机集群的创建请求 或者在所述虚拟机集群的运行过程中, 接收所述虚拟机集群资源的更新请 求, 所述创建请求或者更新请求携带所述虚拟机集群的 QoS约束参数, 以 及, 记录所述虚拟机集群的 QoS约束参数。
14、 如权利要求 12或 13所述的系统, 其特征在于, 所述虚拟机集群的 QoS约束参数包括: 所述虚拟机集群的资源平均利用率约束参数; 所述虚 拟机集群的当前运行状况统计指标包括: 所述虚拟机集群的当前资源平均 利用率的统计值;
所述虚拟资源管理平台具体用于比较所述虚拟机集群的当前资源平 均利用率的统计值与所述虚拟机集群的资源平均利用率约束参数, 如果所 述虚拟机集群的当前资源平均利用率的统计值小于所述虚拟机集群的资 源平均利用率约束参数且两者之差小于设定容忍阈值, 抑制所述物理设备 平台上的物理机减容操作, 和 /或, 上电所述物理设备平台上的至少一台物 理机。
15、 如权利要求 14所述的系统, 其特征在于, 如果所述虚拟机集群的 当前资源平均利用率的统计值小于所述虚拟机集群的资源平均利用率约 束参数且两者之差小于设定容忍阈值, 所述虚拟资源管理平台具体用于提 高所述物理设备平台上的物理机减容阈值, 或者, 在预定期限内不发起所 述物理设备平台上的物理机迁空或下电操作。
16、 如权利要求 14所述的系统, 其特征在于, 所述虚拟机集群的 QoS 约束参数还包括: 所述虚拟机集群的占用的总资源的上限或下限; 所述虚 拟机集群的当前运行状况统计指标包括: 所述虚拟机集群的当前占用的总 资源的统计值;
所述虚拟资源管理平台还用于获得所述虚拟机集群的当前占用的总 资源的统计值与所述虚拟机集群的占用的总资源上限之间的差值, 根据所 述差值选择相应规格的物理机进行上电操作。
17、 如权利要求 14所述的系统, 其特征在于, 所述虚拟资源管理平台 还用于在所述虚拟机集群的当前资源平均利用率的统计值大于所述虚拟 机集群的资源平均利用率约束参数时, 提高所述虚拟机集群的物理资源调 度的优先级级别。
18、 如权利要求 12或 13所述的系统, 其特征在于, 所述虚拟机集群的 QoS约束参数包括: : 所述虚拟机集群的平均通信时延的约束参数; 所述虚拟机集群的当前运行状况统计指标包括: 所述虚拟机集群的当 前平均通信时延的统计值;
所述虚拟资源管理平台用于比较所述虚拟机集群的当前平均通信时 延的统计值与所述虚拟机集群的平均通信时延的约束参数, 如果所述虚拟 机集群的当前平均通信时延的统计值大于所述虚拟机集群的平均通信时 延的约束参数, 或者两者之差小于设定容忍阈值, 集中部署所述虚拟机集 群的虚拟机到相同的物理机上。
19、 如权利要求 12或 13所述的系统, 其特征在于, 所述虚拟资源管理 平台包括上层调度模块和下层调度模块;
所述上层调度模块用于根据所述物理设备平台提供的物理资源为每 个云应用创建至少一台虚拟机, 所述每个云应用对应的至少一台虚拟机组 成一个虚拟机集群, 监控所述虚拟机集群的运行状况, 根据所述虚拟机集 群的运行状况确定是否对所述虚拟机集群的资源进行更新, 向所述下层调 度模块发送所述虚拟机集群创建请求或者资源的更新请求;
所述下层调度模块用于根据所述上层调度模块的创建请求或者更新 或者资源更新; 以及获取所述虚拟机集群的 QoS约束参数以及所述虚拟机 集群的当前运行状况统计指标, 根据所述虚拟机集群的 QoS约束参数和所 述虚拟机集群的当前运行状况统计指标, 调整所述物理设备平台的物理资
20、 如权利要求 19所述的系统, 其特征在于, 所述上层调度模块还用 于在所述虚拟机集群的创建过程中, 接收所述虚拟机集群的创建请求, 或 者在所述虚拟机集群的运行过程中, 接收所述虚拟机集群资源的更新请求, 所述创建请求或者更新请求携带所述虚拟机集群的 QoS约束参数, 以及将 所述创建请求或者更新请求转发给所述下层调度模块;
所述下层调度模块还用于接收所述创建请求或者更新请求, 记录携带 在所述创建请求或者更新请求中的所述虚拟机集群的 QoS约束参数。
21、 如权利要求 20所述的系统, 其特征在于, 所述虚拟机集群的 QoS 约束参数包括: 所述虚拟机集群的占用的总资源约束参数;
所述下层调度模块还用于在接收到所述创建请求或者更新请求时, 获 取所述物理设备平台上剩余物理资源信息, 根据所述虚拟机集群的占用的 总资源约束参数, 确定待创建的虚拟机集群或者待更新的虚拟机集群是否 能够在所述物理设备平台上执行, 如果是, 调度所述物理设备平台上的物 理资源以实现所述虚拟机集群的创建或者资源更新。
22、 一种虚拟机系统资源管理装置, 其特征在于, 所述虚拟机系统为 至少一个云应用提供服务, 所述系统包括虚拟资源管理平台和物理设备平 台, 所述物理设备平台包括至少一个物理机, 所述虚拟资源管理平台根据 所述物理设备平台提供的物理资源为每个云应用创建至少一台虚拟机, 所 述每个云应用对应的至少一台虚拟机组成一个虚拟机集群;
所述装置包括:
约束参数获取模块, 用于获取所述虚拟机集群的 QoS约束参数; 统计指标获取模块, 用于获取所述虚拟机集群的当前运行状况统计指 标;
管理模块, 用于根据所述虚拟机集群的 QoS约束参数和所述虚拟机集 群的当前运行状况统计指标, 调整所述物理设备平台的物理资源调度策略 或者进行所述物理设备平台上的物理资源调度。
23、如权利要求 22所述的装置,其特征在于,所述约束参数获取模块, 还用于在所述虚拟机集群的创建过程中, 接收创建所述虚拟机集群的创建 请求, 或者在所述虚拟机集群的运行过程中, 接收所述虚拟机集群资源的 更新请求, 所述创建请求或者更新请求携带所述虚拟机集群的 QoS约束参 数; 以及, 记录所述虚拟机集群的 QoS约束参数。
24、 如权利要求 22或 23所述的装置, 其特征在于, 所述约束参数获取 模块具体用于获取所述虚拟机集群的资源平均利用率约束参数; 所述统计 指标获取模块, 具体用于获取所述虚拟机集群的当前资源平均利用率的统 计值;
所述管理模块具体用于比较所述虚拟机集群的当前资源平均利用率 的统计值与所述虚拟机集群的资源平均利用率约束参数, 如果所述虚拟机 集群的当前资源平均利用率的统计值小于所述虚拟机集群的资源平均利 用率约束参数且两者之差小于设定容忍阈值, 抑制所述物理设备平台上的 物理机减容操作, 和 /或, 上电所述物理设备平台上的至少一台物理机。
25、 如权利要求 24所述的装置, 其特征在于, 所述管理模块具体用于 在所述虚拟机集群的当前资源平均利用率的统计值小于所述虚拟机集群 的资源平均利用率约束参数且两者之差小于设定容忍阈值时, 提高所述物 理设备平台上的物理机减容阈值, 或者, 在预定期限内不发起所述物理设 备平台上的物理机迁空或下电操作。
26、 如权利要求 24所述的装置, 其特征在于, 所述约束参数获取模块 还用于获取所述虚拟机集群的占用的总资源的上限或下限; 所述统计指标 获取模块还用于获取所述虚拟机集群的当前占用的总资源的统计值; 所述管理模块具体用于获得所述虚拟机集群的当前占用的总资源的 统计值与所述虚拟机集群的占用的总资源上限之间的差值, 根据所述差值 选择相应规格的物理机进行上电操作。
27、 如权利要求 24或 26所述的装置, 其特征在于, 所述管理模块还用 于在所述虚拟机集群的当前资源平均利用率的统计值大于所述虚拟机集 群的资源平均利用率约束参数时, 提高所述虚拟机集群的物理资源调度的 优先级级别。
28、 如权利要求 22或 23所述的装置, 其特征在于, 所述约束参数获取 模块具体用于获取所述虚拟机集群的平均通信时延的约束参数; 所述统计 指标获取模块, 具体用于获取获取所述虚拟机集群的当前平均通信时延的 统计值;
所述管理模块具体用于比较所述虚拟机集群的当前平均通信时延的 统计值与所述虚拟机集群的平均通信时延的约束参数, 如果所述虚拟机集 群的当前平均通信时延的统计值大于所述虚拟机集群的平均通信时延的 约束参数, 或者两者之差小于设定容忍阈值, 集中部署所述虚拟机集群的 虚拟机到相同的物理机上。
29、 如权利要求 23所述的装置, 其特征在于, 所述装置还包括: 处理模块: 用于在接收到所述创建请求或者更新请求之后, 根据所述 创建请求或者更新请求, 调度所述物理设备平台上的物理资源以实现所述 虚拟机集群的创建或者资源的更新。
30、 如权利要求 29所述的装置, 其特征在于, 所述虚拟机集群的 QoS 约束参数包括: 所述虚拟机集群的占用的总资源约束参数; 据所述虚拟机集群的占用的总资源约束参数, 确定待创建的虚拟机集群或 者待更新的虚拟机集群是否能够在所述物理设备平台上执行, 如果是, 执 行虚拟机集群的创建或者资源的更新。
31、 一种虚拟机系统资源管理装置, 其特征在于, 所述虚拟机系统为 至少一个云应用提供服务, 所述系统包括虚拟资源管理平台和物理设备平 台, 所述物理设备平台包括至少一个物理机, 所述虚拟资源管理平台根据 所述物理设备平台提供的物理资源为每个云应用创建至少一台虚拟机, 所 述每个云应用对应的至少一台虚拟机组成一个虚拟机集群;
所述装置包括包括处理器、 存储器、 总线和通信接口;
所述存储器用于存储计算机执行指令, 所述处理器与所述存储器通过 所述总线连接, 当所述虚拟机系统管理装置运行时, 所述处理器执行所述 存储器存储的所述计算机执行指令, 以使所述虚拟机系统管理装置执行如 权利要求 1-11中任一所述的虚拟机系统的资源管理方法。
32、 一种计算机可读介质, 其特征在于, 包括计算机执行指令, 以供 计算机的处理器执行所述计算机执行指令时, 所述计算机执行如权利要求 1-11中任一所述的虚拟机系统的资源管理方法。
PCT/CN2012/087558 2012-12-26 2012-12-26 一种虚拟机系统的资源管理方法、虚拟机系统和装置 WO2014101010A1 (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN201280026359.5A CN104011685B (zh) 2012-12-26 2012-12-26 一种虚拟机系统的资源管理方法、虚拟机系统和装置
EP12878206.7A EP2775399A4 (en) 2012-12-26 2012-12-26 METHOD FOR MANAGING VIRTUAL MACHINE SYSTEM RESOURCES, VIRTUAL MACHINE SYSTEM, AND APPARATUS
PCT/CN2012/087558 WO2014101010A1 (zh) 2012-12-26 2012-12-26 一种虚拟机系统的资源管理方法、虚拟机系统和装置
US14/446,718 US9367340B2 (en) 2012-12-26 2014-07-30 Resource management method and apparatus for virtual machine system, and virtual machine system
US14/789,556 US9405563B2 (en) 2012-12-26 2015-07-01 Resource management method and apparatus for virtual machine system, and virtual machine system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2012/087558 WO2014101010A1 (zh) 2012-12-26 2012-12-26 一种虚拟机系统的资源管理方法、虚拟机系统和装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US14/446,718 Continuation US9367340B2 (en) 2012-12-26 2014-07-30 Resource management method and apparatus for virtual machine system, and virtual machine system

Publications (1)

Publication Number Publication Date
WO2014101010A1 true WO2014101010A1 (zh) 2014-07-03

Family

ID=51019673

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2012/087558 WO2014101010A1 (zh) 2012-12-26 2012-12-26 一种虚拟机系统的资源管理方法、虚拟机系统和装置

Country Status (4)

Country Link
US (2) US9367340B2 (zh)
EP (1) EP2775399A4 (zh)
CN (1) CN104011685B (zh)
WO (1) WO2014101010A1 (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016026331A1 (zh) * 2014-08-19 2016-02-25 中兴通讯股份有限公司 虚拟网络的调节方法及系统
CN105975343A (zh) * 2016-05-10 2016-09-28 广东睿江云计算股份有限公司 一种云主机系统中服务质量的控制方法及装置
CN106170767A (zh) * 2014-12-18 2016-11-30 华为技术有限公司 一种确定虚拟机数量调整操作的装置和方法
CN106970841A (zh) * 2017-03-09 2017-07-21 北京西普阳光教育科技股份有限公司 一种基于云计算的资源限制及动态调整方法
CN108183824A (zh) * 2017-12-28 2018-06-19 国电南瑞科技股份有限公司 一种云平台的轨道交通综合监控系统双融合的实现方法
WO2018177042A1 (zh) * 2017-03-27 2018-10-04 中兴通讯股份有限公司 一种实现资源调度的方法及装置
CN108632049A (zh) * 2017-03-15 2018-10-09 华为机器有限公司 用于虚拟网络功能扩容的方法和装置
CN111796994A (zh) * 2019-11-20 2020-10-20 华为技术有限公司 时延保证方法、系统及装置、计算设备、存储介质
CN115129484A (zh) * 2022-09-02 2022-09-30 浙江大华技术股份有限公司 集群的扩缩容方法、装置、存储介质及电子装置

Families Citing this family (57)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140080058A (ko) * 2012-12-20 2014-06-30 삼성전자주식회사 멀티코어를 위한 로드 밸런싱 방법 및 휴대 단말
KR102012259B1 (ko) * 2013-08-21 2019-08-21 한국전자통신연구원 클라우드 가상 기지국의 자원을 제어하는 방법 및 장치
US9052938B1 (en) * 2014-04-15 2015-06-09 Splunk Inc. Correlation and associated display of virtual machine data and storage performance data
US9423957B2 (en) * 2014-05-02 2016-08-23 Ca, Inc. Adaptive system provisioning
US9483299B2 (en) * 2014-06-30 2016-11-01 Bmc Software, Inc. Capacity risk management for virtual machines
EP2988451A1 (en) * 2014-08-22 2016-02-24 Vodafone IP Licensing limited Method and system for mapping different layouts
CN104184819B (zh) * 2014-08-29 2017-12-05 城云科技(中国)有限公司 多层级负载均衡云资源监控方法
US10867264B2 (en) * 2014-10-31 2020-12-15 Xerox Corporation Methods and systems for estimating lag times in a cloud computing infrastructure
US9923954B2 (en) * 2014-12-16 2018-03-20 International Business Machines Corporation Virtual fencing gradient to incrementally validate deployed applications directly in production cloud computing environment
JP2016119583A (ja) * 2014-12-22 2016-06-30 株式会社東芝 Ip電話ネットワークシステムとサーバ装置、ip交換機及びリソース容量拡張方法
EP3269088B1 (en) * 2015-03-13 2022-05-18 Koninklijke KPN N.V. Method, computer program, network function control system, service data and record carrier, for controlling provisioning of a service in a network
US10951473B1 (en) * 2015-03-25 2021-03-16 Amazon Technologies, Inc. Asynchronous fleet configuration service
CN104881325B (zh) * 2015-05-05 2018-09-21 中国联合网络通信集团有限公司 一种资源调度方法和资源调度系统
US10057187B1 (en) 2015-05-27 2018-08-21 Amazon Technologies, Inc. Dynamic resource creation to connect client resources in a distributed system
US9983857B2 (en) * 2015-06-16 2018-05-29 Architecture Technology Corporation Dynamic computational acceleration using a heterogeneous hardware infrastructure
CN106326002B (zh) 2015-07-10 2020-10-20 阿里巴巴集团控股有限公司 资源调度方法、装置及设备
US9860569B1 (en) * 2015-10-05 2018-01-02 Amazon Technologies, Inc. Video file processing
CN106959889A (zh) * 2016-01-11 2017-07-18 阿里巴巴集团控股有限公司 一种服务器资源调整的方法和装置
US9940156B2 (en) * 2016-01-29 2018-04-10 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Decreasing hardware resource amount assigned to virtual machine as utilization of hardware resource decreases below a threshold
US10152357B1 (en) * 2016-05-02 2018-12-11 EMC IP Holding Company LLC Monitoring application workloads scheduled on heterogeneous elements of information technology infrastructure
CN105912408A (zh) * 2016-05-10 2016-08-31 广东睿江云计算股份有限公司 云主机系统中的cpu调度方法及装置
CN105824708A (zh) * 2016-05-10 2016-08-03 广东睿江云计算股份有限公司 云主机系统中的cpu调度方法及装置
CN106027328B (zh) * 2016-05-13 2020-02-07 深圳市中润四方信息技术有限公司 一种基于应用容器部署的集群监控的方法及系统
US10146563B2 (en) * 2016-08-03 2018-12-04 International Business Machines Corporation Predictive layer pre-provisioning in container-based virtualization
CN107977264B (zh) * 2016-10-24 2022-06-10 阿里巴巴集团控股有限公司 一种虚拟机内存资源的调度方法以及装置
CN107273182B (zh) * 2017-06-06 2020-05-15 武汉纺织大学 一种虚拟机资源动态扩充方法及系统
CN109032751B (zh) * 2017-06-12 2022-02-11 华为技术有限公司 一种虚拟机部署方法及omm虚拟机
CN109548160A (zh) * 2017-08-08 2019-03-29 中国移动通信有限公司研究院 数据传输方法、装置、相关设备及计算机可读存储介质
CN108306780B (zh) * 2017-09-07 2021-07-20 上海金融期货信息技术有限公司 一种基于云环境的虚拟机通信质量自优化的系统和方法
US10445209B2 (en) * 2017-09-08 2019-10-15 Accenture Global Solutions Limited Prescriptive analytics based activation timetable stack for cloud computing resource scheduling
CN109753338B (zh) * 2017-11-06 2023-03-21 阿里巴巴集团控股有限公司 虚拟gpu使用率的检测方法和装置
CN108039962A (zh) * 2017-12-05 2018-05-15 三盟科技股份有限公司 一种基于大数据环境下的云计算业务资源计算方法及系统
US10922141B2 (en) 2017-12-11 2021-02-16 Accenture Global Solutions Limited Prescriptive analytics based committed compute reservation stack for cloud computing resource scheduling
US10719344B2 (en) 2018-01-03 2020-07-21 Acceture Global Solutions Limited Prescriptive analytics based compute sizing correction stack for cloud computing resource scheduling
CN108255431B (zh) * 2018-01-11 2020-11-13 中国人民解放军国防科技大学 一种统一管理的、基于策略的低功耗归档分析系统
CN110347473B (zh) * 2018-04-02 2021-11-19 中国移动通信有限公司研究院 一种跨数据中心分布的虚拟化网元虚拟机分配方法及装置
CN110362398B (zh) 2018-04-09 2023-09-12 阿里巴巴集团控股有限公司 虚拟机的调度方法和系统
CN108667654B (zh) * 2018-04-19 2021-04-20 北京奇艺世纪科技有限公司 服务器集群自动扩容方法及相关设备
US11140032B2 (en) * 2018-05-04 2021-10-05 Oracle International Corporation System and method for building idempotent configuration management modules for a cloud Infrastructure Service
CN109885377B (zh) * 2018-11-23 2023-04-28 中国银联股份有限公司 统一资源调度协调器及其创建虚拟机和/或容器的方法、统一资源调度系统
US10459757B1 (en) 2019-05-13 2019-10-29 Accenture Global Solutions Limited Prescriptive cloud computing resource sizing based on multi-stream data sources
KR20200133478A (ko) * 2019-05-20 2020-11-30 삼성전자주식회사 클라우드 시스템에서 자원을 조정하기 위한 장치 및 방법
CN111078362A (zh) * 2019-12-17 2020-04-28 联想(北京)有限公司 一种基于容器平台的设备管理方法及装置
CN111209118A (zh) * 2020-01-14 2020-05-29 北京三快在线科技有限公司 确定资源余量的方法、装置、存储介质和电子设备
US11005924B1 (en) 2020-04-01 2021-05-11 Netapp, Inc. Disparity of quality of service (QoS) settings of volumes across a cluster
US11140219B1 (en) * 2020-04-07 2021-10-05 Netapp, Inc. Quality of service (QoS) setting recommendations for volumes across a cluster
CN113742009B (zh) * 2020-05-28 2024-04-09 深信服科技股份有限公司 桌面云环境资源调度方法、装置、设备及存储介质
CN111786830B (zh) * 2020-07-01 2023-06-13 浪潮云信息技术股份公司 一种云计算环境下的网络质量仿真方法
US20220156124A1 (en) * 2020-08-31 2022-05-19 Turbonomic, Inc. Systems and methods for managing resources in a virtual desktop infrastructure
CN112463357B (zh) * 2020-10-29 2022-07-05 苏州浪潮智能科技有限公司 一种服务器带内数据安全交互的方法和设备
CN112667356B (zh) * 2020-12-30 2023-01-31 上海交通大学 时延可预测的NVMe存储虚拟化方法和系统
CN112667999A (zh) * 2020-12-31 2021-04-16 中电长城网际安全技术研究院(北京)有限公司 虚拟机的执行时间调整方法和装置
US11693563B2 (en) 2021-04-22 2023-07-04 Netapp, Inc. Automated tuning of a quality of service setting for a distributed storage system based on internal monitoring
CN113220400A (zh) * 2021-05-25 2021-08-06 江苏赞奇科技股份有限公司 基于软件定义的云桌面系统质量控制方法
US11941444B2 (en) * 2021-08-27 2024-03-26 Hewlett Packard Enterprise Development Lp Facilitating scheduling of storage system pods on nodes of a cluster based on discovery of local block devices associated with the nodes
US20230362234A1 (en) * 2022-05-04 2023-11-09 Microsoft Technology Licensing, Llc Method and system of managing resources in a cloud computing environment
CN116893903B (zh) * 2023-09-11 2023-12-08 北京格尔国信科技有限公司 一种加密资源分配方法、系统、设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101719082A (zh) * 2009-12-24 2010-06-02 中国科学院计算技术研究所 虚拟化计算平台中应用请求调度的方法及其系统
CN102307224A (zh) * 2011-05-17 2012-01-04 华为软件技术有限公司 云计算系统中业务隔离的实现方法及装置、云服务器
CN102317917A (zh) * 2011-06-30 2012-01-11 华为技术有限公司 热点域虚拟机cpu调度方法及虚拟机系统
CN102419718A (zh) * 2011-10-28 2012-04-18 浪潮(北京)电子信息产业有限公司 资源调度方法

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8584128B1 (en) * 2007-09-10 2013-11-12 Emc Corporation Techniques for adjusting priorities associated with servicing requests
CN101911047A (zh) * 2007-11-06 2010-12-08 瑞士信贷证券(美国)有限责任公司 根据服务水平协议预测并管理资源分配
US8433749B2 (en) 2009-04-15 2013-04-30 Accenture Global Services Limited Method and system for client-side scaling of web server farm architectures in a cloud data center
US8261266B2 (en) * 2009-04-30 2012-09-04 Microsoft Corporation Deploying a virtual machine having a virtual hardware configuration matching an improved hardware profile with respect to execution of an application
US8694638B2 (en) * 2009-06-29 2014-04-08 Red Hat Israel Selecting a host from a host cluster to run a virtual machine
US8930731B2 (en) 2009-07-21 2015-01-06 Oracle International Corporation Reducing power consumption in data centers having nodes for hosting virtual machines
US8589555B2 (en) * 2010-01-11 2013-11-19 Nec Laboratories America, Inc. Virtualization and consolidation analysis engine for enterprise data centers
US8433802B2 (en) * 2010-01-26 2013-04-30 International Business Machines Corporation System and method for fair and economical resource partitioning using virtual hypervisor
US8606667B2 (en) * 2010-02-26 2013-12-10 Red Hat, Inc. Systems and methods for managing a software subscription in a cloud network
US8464255B2 (en) * 2010-03-12 2013-06-11 Microsoft Corporation Managing performance interference effects on cloud computing servers
US8572612B2 (en) * 2010-04-14 2013-10-29 International Business Machines Corporation Autonomic scaling of virtual machines in a cloud computing environment
US8645529B2 (en) * 2010-10-06 2014-02-04 Infosys Limited Automated service level management of applications in cloud computing environment
US8769531B2 (en) * 2011-05-25 2014-07-01 International Business Machines Corporation Optimizing the configuration of virtual machine instances in a networked computing environment
US9038065B2 (en) * 2012-01-30 2015-05-19 International Business Machines Corporation Integrated virtual infrastructure system
US8881149B2 (en) * 2012-04-11 2014-11-04 International Business Machines Corporation Control of java resource runtime usage

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101719082A (zh) * 2009-12-24 2010-06-02 中国科学院计算技术研究所 虚拟化计算平台中应用请求调度的方法及其系统
CN102307224A (zh) * 2011-05-17 2012-01-04 华为软件技术有限公司 云计算系统中业务隔离的实现方法及装置、云服务器
CN102317917A (zh) * 2011-06-30 2012-01-11 华为技术有限公司 热点域虚拟机cpu调度方法及虚拟机系统
CN102419718A (zh) * 2011-10-28 2012-04-18 浪潮(北京)电子信息产业有限公司 资源调度方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP2775399A4 *

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016026331A1 (zh) * 2014-08-19 2016-02-25 中兴通讯股份有限公司 虚拟网络的调节方法及系统
CN106170767A (zh) * 2014-12-18 2016-11-30 华为技术有限公司 一种确定虚拟机数量调整操作的装置和方法
CN106170767B (zh) * 2014-12-18 2020-05-15 上海朋邦实业有限公司 一种确定虚拟机数量调整操作的装置和方法
CN105975343A (zh) * 2016-05-10 2016-09-28 广东睿江云计算股份有限公司 一种云主机系统中服务质量的控制方法及装置
CN106970841A (zh) * 2017-03-09 2017-07-21 北京西普阳光教育科技股份有限公司 一种基于云计算的资源限制及动态调整方法
CN108632049A (zh) * 2017-03-15 2018-10-09 华为机器有限公司 用于虚拟网络功能扩容的方法和装置
WO2018177042A1 (zh) * 2017-03-27 2018-10-04 中兴通讯股份有限公司 一种实现资源调度的方法及装置
CN108183824A (zh) * 2017-12-28 2018-06-19 国电南瑞科技股份有限公司 一种云平台的轨道交通综合监控系统双融合的实现方法
CN111796994A (zh) * 2019-11-20 2020-10-20 华为技术有限公司 时延保证方法、系统及装置、计算设备、存储介质
CN111796994B (zh) * 2019-11-20 2022-07-12 华为云计算技术有限公司 时延保证方法、系统及装置、计算设备、存储介质
CN115129484A (zh) * 2022-09-02 2022-09-30 浙江大华技术股份有限公司 集群的扩缩容方法、装置、存储介质及电子装置

Also Published As

Publication number Publication date
US20150324232A1 (en) 2015-11-12
US9405563B2 (en) 2016-08-02
EP2775399A1 (en) 2014-09-10
CN104011685A (zh) 2014-08-27
EP2775399A4 (en) 2015-04-29
US9367340B2 (en) 2016-06-14
CN104011685B (zh) 2016-05-25
US20140344810A1 (en) 2014-11-20

Similar Documents

Publication Publication Date Title
WO2014101010A1 (zh) 一种虚拟机系统的资源管理方法、虚拟机系统和装置
US11789619B2 (en) Node interconnection apparatus, resource control node, and server system
US11714671B2 (en) Creating virtual machine groups based on request
CN107026802B (zh) 一种资源管理方法及设备
EP2867772B1 (en) Dynamic resource allocation for virtual machines
US9558005B2 (en) Reliable and deterministic live migration of virtual machines
EP3073373B1 (en) Method for interruption affinity binding of virtual network interface card, and computer device
US10055244B2 (en) Boot control program, boot control method, and boot control device
US9684364B2 (en) Technologies for out-of-band power-based task scheduling for data centers
WO2015196931A1 (zh) 基于磁盘io的虚拟资源分配方法及装置
WO2014026374A1 (zh) 服务器系统、管理方法及设备
CN107851039A (zh) 用于资源管理的系统和方法
EP3358795B1 (en) Method and apparatus for allocating a virtual resource in network functions virtualization (nfv) network
WO2017107483A1 (zh) 一种虚拟化网管文件下载负载均衡的方法及网管服务器
US20160328006A1 (en) Distributed power management with partial suspend mode for distributed storage systems
Nicodemus et al. Managing vertical memory elasticity in containers
KR20160043706A (ko) 가상 머신 스케일링 장치 및 그 방법
CN113806027A (zh) 任务编排方法、装置、电子设备和计算机可读存储介质
WO2024041472A1 (zh) 一种通信方法、装置、设备和存储介质
US20240019923A1 (en) Computer orchestration
WO2013097124A1 (zh) 一种保障云应用程序服务质量的方法和装置
CN109002347B (zh) 一种虚拟机内存分配方法、装置及系统
CN116932143A (zh) 虚拟机数量调整方法、装置、计算机设备及存储介质
CN117176818A (zh) 云原生平台的业务执行方法、执行装置和电子设备
TWI488053B (zh) 雲端裝置配置方法

Legal Events

Date Code Title Description
REEP Request for entry into the european phase

Ref document number: 2012878206

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2012878206

Country of ref document: EP

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 12878206

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE