Dynamic Memory Allocation for Cloud Server High Availability

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The existing high availability (HA) mechanism for physical servers in cloud computing resource pools results in significant memory resource waste, particularly when the number of physical servers is small, as it reserves memory in advance to ensure service robustness, leading to inefficient utilization.

Innovation Solution

A method and system that dynamically assesses the idle memory of running physical servers to determine if it can support virtual machines on failed servers, and if so, restarts them without pre-reserving memory, or adjusts virtual machine memory allocation to optimize memory usage, thereby minimizing waste.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If memory is pre-reserved on normally-running physical servers to guarantee HA, then service robustness is improved, but memory resource utilization deteriorates

Engineering Contradiction:
Improveservice robustnessVSAvoidmemory resource utilization
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent transforms the static memory allocation model into a dynamic one. Instead of pre-reserving fixed memory for HA, the system dynamically assesses idle memory capacity of running physical servers in real-time and flexibly allocates memory resources based on actual failure scenarios and current system state, allowing memory to be both reserved and released according to need

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the memory allocation parameter from a fixed pre-reserved value to a dynamic calculated value. The system calculates required memory based on the number of failed servers, idle memory capacity of running servers, and virtual machine memory requirements, adjusting the allocation parameter adaptively rather than using a static reservation

Inventive Principle:
Principle #35Parameter changes

2Reliability

If part of memory is retained not to be allocated on physical servers, then HA capability is improved, but memory waste increases

Engineering Contradiction:
ImproveHA capabilityVSAvoidmemory waste
Core Design Contradiction:
ReliabilityVSLoss of substance

Solution Approach 1:

The system enables memory resources to serve themselves through automated dynamic allocation. When failures occur, the system automatically calculates and reallocates memory from running servers to support virtual machines on failed servers, eliminating the need for manual pre-reservation and reducing memory waste while maintaining HA capability

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent performs preliminary assessment of idle memory capacity and formulates allocation schemes before actual failures occur, but unlike static pre-reservation, this preliminary action allows for flexible adjustment and optimization based on current system state, enabling better resource utilization while preparing for HA scenarios

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentEP2908465B1High availability method and system for improving the utility of physical servers in cloud computing resource pool
Publication Date: 2020.01.15 ZTE CORP
  • EP2908465B1 patent drawingFigure 1~2

AI summary

A high availability method and system for improving utilization of physical servers in a cloud computing resource pool, wherein the method includes: when the physical servers in the cloud computing resource pool fail, judging whether idle memory on the normally-running physical servers can support running of virtual machines on all the failed physical servers; when the idle memory on the normally-running physical servers can support the running of the virtual machines on all the failed physical servers, restarting the virtual machines on all the failed physical servers on the normally-running physical servers. The embodiments of the present invention improve the utilization of memory resource of physical servers.