Dynamic Resource Allocation for Cloud Micro-Service Containers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In Open RAN systems, the static allocation of CPU cores and memory resources to micro-services in cloud native environments leads to inefficiencies, as many micro-services have variable load and processing requirements, resulting in underutilization of resources due to the inability to allocate partial resources and guarantee availability when needed.

Innovation Solution

A dynamic resource allocation system where an agent monitors and adjusts resource allocation to micro-services based on consumption thresholds, incrementing resources when demand exceeds an upper threshold and decrementing when below a lower threshold, and schedules micro-services to idle areas during low activity periods to optimize resource usage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If static allocation of CPU cores and memory resources is used to micro-services, then resource availability is guaranteed, but resource utilization efficiency deteriorates due to underutilization

Engineering Contradiction:
Improveresource availabilityVSAvoidresource utilization efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent implements dynamic resource allocation by continuously monitoring resource consumption metrics (CPU utilization, memory usage, I/O operations) and adjusting the number of allocated CPU cores and memory size based on current demand. This transforms the static allocation model into a dynamic one that adapts to varying workloads, ensuring both availability and efficiency.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system employs feedback mechanisms by monitoring resource consumption patterns and using this information to adjust allocations. The monitoring component tracks actual resource usage, and this data feeds back into the allocation decision-making process, allowing the system to optimize resource distribution based on real-world performance data.

Inventive Principle:
Principle #23Feedback

2Productivity

If partial resource allocation is implemented to micro-services, then resource utilization efficiency improves, but the complexity of resource management increases

Engineering Contradiction:
Improveresource utilization efficiencyVSAvoidresource management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements self-service mechanisms where micro-services automatically report their resource consumption patterns and requirements. The allocation system uses this self-reported data along with monitoring information to automatically adjust allocations without manual intervention, reducing the operational complexity of managing partial resource allocations across multiple services.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system manages complexity by focusing on changing key parameters (CPU core count, memory size, I/O bandwidth) in a structured manner. By establishing clear parameter thresholds and adjustment rules, the system transforms the complex problem of partial resource allocation into a manageable set of parameter adjustments based on monitored performance metrics.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If resources are allocated based on peak demand, then resource availability is ensured, but resource waste increases during low activity periods

Engineering Contradiction:
Improveresource availabilityVSAvoidresource waste
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent implements periodic monitoring and adjustment of resource allocations based on observed usage patterns. By analyzing resource consumption over time periods and identifying cyclical patterns, the system adjusts allocations periodically to match anticipated demand, reducing waste during low-activity periods while maintaining availability during peak periods.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The system uses historical monitoring data to predict future resource requirements and makes preliminary allocation adjustments before peak demand occurs. This proactive approach allows the system to pre-allocate resources based on predicted patterns rather than reacting to peak demand, reducing waste during low-activity periods while ensuring availability when needed.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS20240394100A1Dynamic allocation of computational resources to application micro-services
Publication Date: 2024.11.28 RAKUTEN MOBILE INC
  • US20240394100A1 patent drawing
  • US20240394100A1 patent drawing
  • US20240394100A1 patent drawing

AI summary

Dynamic allocation of resources to application micro-services is performed by receiving, by an agent executed on a server of a cloud computing environment, a request to provision a container for a micro-service of an application, provisioning, by the agent, the container for the micro-service on the worker server with an allocated resource amount, detecting, by the agent, a resource consumption amount of the micro-service, increasing, by the agent in response to the resource consumption amount exceeding an upper resource consumption threshold value, the allocated resource amount by a resource increment, and reducing, by the agent in response to the resource consumption amount exceeding a lower resource consumption threshold value, the allocated resource amount by the resource increment.