Server and storage-aware method for selecting virtual machine migration targets
AssigneeInternational Business Machines Corporation
InventorMadhukar R. Korupolu
Life of this patent
Estimating the term…
Abstract
A method and system selecting a target physical machine for a virtual machine (VM) migration is provided. Selecting a target physical machine for a VM migration involves determining storage volume connectivity and spare path capacity of one or more candidate physical machines, and preferentially selecting among the candidate physical machines a migration target with storage volume connectivity and spare path capacity to satisfy storage volume access requirements of the VM.
Claims16
A method of selecting a target physical machine for a virtual machine (VM) migration, comprising:
- determining one or more candidate physical machines with sufficient spare capacity to host the VM by dynamically:
- monitoring status of each VM and each physical machine at a storage subsystem level, wherein dynamically monitoring status of VMs comprises continuously measuring CPU, memory and network bandwidth resources used by each VM over time to estimate ongoing needs of each VM for CPU, memory and network bandwidth resources, and wherein dynamically monitoring status of each physical machine results in providing measurements for a send and receive packet rate for each fiber channel port on each switch in the SAN;
- gathering statistics and measurements for obtaining estimates for storage data transfer bandwidth and storage command throughput between the VM and associated storage volume in a storage area network (SAN), wherein the estimates are translated to capacity requirements on paths from host to storage volumes for each VM;
- preferentially selecting as VM migration targets among the candidate physical machines one or more physical machines with sufficient storage volume connectivity and spare path capacity to satisfy storage volume access requirements of the VM, to host the VM, wherein VMs and physical machines are ranked, each VM and each candidate physical machine are paired based on the ranking, and VMs are selected for migration to a new assigned physical machine based on ranking values;
- and
- continuously migrating VMs to selected candidate physical machines until sufficient migrations are performed to offload all overloaded physical machines so that load on all overloaded physical machines are reduced below a predetermined utilization threshold, wherein migrating VMs to selected candidate physical machines includes migration away from a source physical machine to the selected candidate physical machines.
A system comprising:
- one or more virtual machines (VMs) hosted by one or more physical machines;
- and
- a virtual machine (VM) migration module for selecting a target physical machine for a virtual machine (VM) migration, comprising:
- a monitor configured for determining one or more candidate physical machines with sufficient spare capacity to host the VM by dynamically:
- monitoring status of each VM and each physical machine at a storage subsystem level, wherein dynamically monitoring status of VMs comprises continuously measuring CPU, memory and network bandwidth resources used by each VM over time to estimate ongoing needs of each VM for CPU, memory and network bandwidth resources, and wherein dynamically monitoring status of each physical machine results in providing measurements for a send and receive packet rate for each fiber channel port on each switch in the SAN;
- and
- gathering statistics and measurements for obtaining estimates for storage data transfer bandwidth and storage command throughput between the VM and associated storage volume in a storage area network (SAN), wherein the estimates are translated to capacity requirements on paths from host to storage volumes for each VM;
- and
- a migration planner configured for preferentially selecting as VM migration targets among the candidate physical machines one or more physical machines with sufficient storage volume connectivity and spare path capacity to satisfy storage volume access requirements of the VM to host the VM, wherein VMs and physical machines are ranked, and each VM and each candidate physical machine are paired based on the ranking, and VMs are selected for migration to a new assigned physical machine based on ranking values, the migration planner further continuously migrates VMs to selected candidate physical machines until sufficient migrations are performed to offload all overloaded physical machines so that load on all overloaded physical machines are reduced below a predetermined utilization threshold, wherein migrating VMs to selected candidate physical machines includes migration away from a source physical machine to the selected candidate physical machines.
A computer-implemented method for selecting a target physical machine for a virtual machine (VM) migration, comprising:
- determining one or more candidate physical machines with sufficient spare capacity to host the VM by dynamically:
- monitoring status and continuously obtaining measurements for each VM and each physical machine at a storage subsystem level;
- gathering statistics and measurements for obtaining estimates for storage data transfer bandwidth and storage command throughput between the VM and associated storage volume in a storage area network (SAN);
- preferentially selecting as VM migration targets among the candidate physical machines one or more physical machines with sufficient storage volume connectivity and spare path capacity to satisfy storage volume access requirements of the VM, to host the VM;
- performing migration of a selected VM migration target to a selected candidate physical machine;
- and
- continuously migrating VMs to selected candidate physical machines until sufficient migrations are performed to offload all overloaded physical machines so that load on all overloaded physical machines are reduced below a predetermined utilization threshold, wherein migrating VMs to selected candidate physical machines includes migration away from a source physical machine to the selected candidate physical machines.
A program product stored on a computer useable non-transitory storage medium for selecting a target physical machine for a virtual machine (VM) migration in a storage area network (SAN), the program product comprising program code for causing a computer system to perform the following steps:
- determining one or more candidate physical machines with sufficient spare capacity to host the VM by dynamically:
- monitoring status of each VM and each physical machine at a storage subsystem level, wherein dynamically monitoring status of VMs comprises continuously measuring CPU, memory and network bandwidth resources used by each VM over time to estimate ongoing needs of each VM for CPU, memory and network bandwidth resources, and wherein dynamically monitoring status of each physical machine results in providing measurements for a send and receive packet rate for each fiber channel port on each switch in the SAN;
- and
- gathering statistics and measurements for obtaining estimates for storage data transfer bandwidth and storage command throughput between the VM and associated storage volume in the SAN, wherein the estimates are translated to capacity requirements on paths from host to storage volumes for each VM;
- preferentially selecting as VM migration targets among the candidate physical machines one or more physical machines with sufficient storage volume connectivity and spare path capacity to satisfy storage volume access requirements of the VM, to host the VM, wherein VMs and physical machines are ranked, and each VM and each candidate physical machine are paired based on the ranking, and VMs are selected for migration to a new assigned physical machine based on ranking values;
- determining proximity and access latency of each candidate machine to one or more storage volumes accessed by the VM;
- continuously recommending migration of VMs to selected candidate physical machines;
- and
- selecting migration of selected VMs until sufficient migrations are performed to offload all overloaded physical machines so that load on all overloaded physical machines are reduced below a predetermined utilization threshold.
A method of selecting a target physical machine for a virtual machine (VM) migration, comprising:
- determining one or more candidate physical machines with sufficient spare capacity to host the VM by dynamically:
- monitoring status of each VM and each physical machine at a storage subsystem level, wherein dynamically monitoring status of VMs comprises continuously measuring CPU, memory and network bandwidth resources used by each VM over time to estimate ongoing needs of each VM for CPU, memory and network bandwidth resources, and wherein dynamically monitoring status of each physical machine results in providing measurements for a send and receive packet rate for each fiber channel port on each switch in the SAN;
- gathering statistics and measurements for obtaining estimates for storage data transfer bandwidth and storage command throughput between the VM and associated storage volume in a storage area network (SAN), wherein the estimates are translated to capacity requirements on paths from host to storage volumes for each VM;
- preferentially selecting as VM migration targets among the candidate physical machines one or more physical machines with sufficient storage volume connectivity and spare path capacity to satisfy storage volume access requirements of the VM, to host the VM, wherein VMs and physical machines are ranked, each VM and each candidate physical machine are paired based on the ranking, and VMs are selected for migration to a new assigned physical machine based on ranking values;
- and
- determining proximity and access latency of each candidate machine to one or more storage volumes accessed by the VM;
- continuously recommending migration of VMs to selected candidate physical machines;
- and
- selecting migration of selected VMs until sufficient migrations are performed to offload all overloaded physical machines so that load on all overloaded physical machines are reduced below a predetermined utilization threshold.
Dependencies are inferred from the claim text.