Container Resource Scheduling with Dynamic VM Migration

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In containerized environments, resource allocation inefficiencies lead to wastage in datacenters, where some virtual machines (VMs) have excess resources while others are over-committed, due to the dynamic nature of container startup and shutdown, complicating optimization across layers.

Innovation Solution

A method for scheduling computing resources in a container cloud that determines resource availability, allocates resources to virtual machines, and optimizes container placement across hosts, using a virtualization management module to calculate and achieve a target resource configuration by adding or removing resources from VMs and containers, thereby optimizing resource utilization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If containers are dynamically started and shut down on various VMs, then service flexibility and responsiveness are improved, but resource allocation efficiency deteriorates leading to waste

Engineering Contradiction:
Improveservice flexibilityVSAvoidresource waste
Core Design Contradiction:
Adaptability or versatilityVSLoss of energy

Solution Approach 1:

The patent implements dynamic resource allocation by continuously monitoring container resource usage and adjusting VM resource assignments in real-time. The system calculates target resource configurations based on current container demands and dynamically adds or removes resources from VMs, ensuring that resource allocation adapts to changing service requirements without manual intervention.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system establishes a feedback loop where resource usage metrics from containers are continuously collected and fed back to the resource allocation algorithm. This feedback mechanism enables the system to identify when VMs have excess resources or are over-committed, and automatically triggers reallocation actions to optimize resource distribution across the container cloud infrastructure.

Inventive Principle:
Principle #23Feedback

2Productivity

If VMs are over-committed to accommodate more containers, then resource utilization density is improved, but system reliability deteriorates due to insufficient resources

Engineering Contradiction:
Improveresource utilization densityVSAvoidsystem reliability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent dynamically changes resource allocation parameters by calculating target configurations based on actual container usage patterns. The system adjusts CPU, memory, and storage allocations for VMs based on measured container demands, transforming static over-commitment ratios into dynamic parameters that maintain reliability while optimizing density. This involves continuously updating resource assignment parameters rather than using fixed over-commitment factors.

Inventive Principle:
Principle #35Parameter changes

3Stability of the object's composition

If static resource allocation is used for VMs, then system stability and simplicity are improved, but resource efficiency deteriorates due to inability to adapt to changing demands

Engineering Contradiction:
Improvesystem stabilityVSAvoidresource inefficiency
Core Design Contradiction:
Stability of the object's compositionVSLoss of energy

Solution Approach 1:

The system performs preliminary resource allocation based on expected container workloads and then continuously monitors actual usage. Before containers are started or scaled, the system pre-calculates required resource configurations and prepares target allocations. This preliminary action ensures that resources are ready and optimally allocated before demand arises, maintaining stability while preventing waste through proactive rather than reactive allocation.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9766945B2Virtual resource scheduling for containers with migration
Publication Date: 2017.09.19 VMWARE INC
  • US9766945B2 patent drawing
  • US9766945B2 patent drawing
  • US9766945B2 patent drawing

AI summary

A method for scheduling computing resources with container migration includes determining a resource availability for one or more hosts, a resource allocation for one or more virtual machines (VMs), and a resource usage for one or more containers. The method includes identifying the hosts on which VMs and containers can be consolidated based on resource availability. The method also includes calculating a target resource configuration for one or more VMs. The method further includes removing or adding resources to the VMs for which a target resource configuration was calculated to achieve the target resource configuration. The method further includes allocating the one or more VMs on the one or more hosts based on the resource availability of the one or more hosts, and allocating the one or more containers on the one or more VMs based on the resource configuration of each VM and the resource usage of each container.