Agile VM Load Balancing via Micro-Checkpointing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing virtual machine (VM) load balancing techniques either lead to underutilization of resources due to over-provisioning or degrade performance during peak loads due to resource-intensive migration, violating service level agreements (SLAs).

Innovation Solution

Implementing adaptive micro-checkpointing and load balancing across multiple nodes, where secondary VMs are periodically updated and activated to handle peak loads, with optional processor architecture emulation to dynamically redistribute VM processing and maintain SLA compliance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If resources are over-provisioned to handle peak loads, then VM performance during peak loads is maintained, but resource utilization deteriorates resulting in higher costs

Engineering Contradiction:
ImproveVM performance during peak loadsVSAvoidresource utilization
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The system performs preliminary actions by creating secondary VM instances in advance and maintaining them in a suspended state with periodic micro-checkpointing. When peak load is detected, these pre-prepared secondary VMs can be rapidly activated without needing to provision resources in advance, thus maintaining VM performance during peak loads while avoiding the waste of continuously running underutilized resources.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system dynamically adjusts resource allocation by transitioning VMs between primary and secondary states based on real-time load conditions. The load balancer continuously monitors load metrics and dynamically activates or deactivates secondary VMs, allowing the system to adapt resource utilization to actual demand rather than maintaining static over-provisioned resources.

Inventive Principle:
Principle #15Dynamics

2Productivity

If VM migration is performed to balance load, then load distribution is improved, but VM performance deteriorates due to resource consumption during migration

Engineering Contradiction:
Improveload distributionVSAvoidVM performance during migration
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system segments the VM migration process into micro-checkpointing operations that occur in small increments during normal operation. Instead of performing a single large-scale migration that consumes significant resources, the VM state is divided into multiple small checkpoints that can be rapidly transferred and applied, improving load distribution while minimizing the resource overhead and performance impact of each individual migration operation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system creates secondary copies of VMs that are maintained in a suspended state with periodic state updates. When load balancing is needed, these pre-existing copies can be rapidly activated rather than performing a full migration from scratch. This copying approach improves load distribution by enabling fast VM deployment while reducing the resource consumption and performance degradation associated with traditional live migration processes.

Inventive Principle:
Principle #26Copying

3Loss of energy

If secondary VMs are activated to handle peak loads, then resource utilization is improved, but system complexity increases due to multi-architecture emulation

Engineering Contradiction:
Improveresource utilizationVSAvoidsystem architecture
Core Design Contradiction:
Loss of energyVSDevice complexity

Solution Approach 1:

The system implements universal secondary VM images that can run on multiple processor architectures through emulation. A single secondary VM image can be activated on different hardware platforms (x86, ARM, etc.) without requiring architecture-specific versions, improving resource utilization across diverse hardware while managing complexity through a unified image format that works across multiple architectures.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The system introduces an emulation layer as an intermediary between the secondary VM and the underlying hardware architecture. This emulation layer translates instructions from the original architecture to the host architecture, allowing secondary VMs to be activated on different hardware platforms without modifying the VM images themselves. This mediator approach improves resource utilization by enabling flexible deployment while containing complexity within the emulation layer rather than requiring complex architecture-specific VM management.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10789091B2Agile VM load balancing through micro-checkpointing and multi-architecture emulation
Publication Date: 2020.09.29 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US10789091B2 patent drawing
  • US10789091B2 patent drawing
  • US10789091B2 patent drawing

AI summary

Methods and systems for agile load balancing include detecting an increased load for a first primary virtual machine (VM) on a first node that has a plurality of additional primary VMs running on a processor; deactivating one or more of the additional primary VMs, reducing said one or more deactivated VMs to a secondary state, to free resources at the first node for the first primary VM; and activating secondary VMs, located at one or more additional nodes, that correspond to the one or more deactivated VMs, raising said secondary VMs to a primary state. Activation and deactivation through micro-checkpointing may involve nodes of different CPU architectures during transient periods of peak load.