Container Vertical Auto-Scaling via ML Resource Prediction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing vertical auto-scaling capabilities in container management systems are limited by their inability to consider global priorities, environmental parameters, and the smooth refinement of resource requirements over time, leading to inefficient resource utilization and performance degradation.
Innovation Solution
A method that uses machine learning to predict resource consumption ranges based on explaining parameters, incorporates global priorities to tune resource allocations, and introduces a pending stability state for conditional handling of containers, ensuring efficient and safe resource management without requiring changes to existing APIs or applications.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If manual resource specification is used for containers, then resource allocation control is simple and direct, but resource utilization efficiency is low and cannot adapt to changing conditions
Solution Approach 1:
The system enables containers to automatically adjust their own resource requirements and consumption limits based on observed resource consumption patterns and global priority information, without requiring manual intervention or complex external control mechanisms
Solution Approach 2:
The system continuously monitors resource consumption metrics and uses this feedback to dynamically adjust resource requirements and limits, creating a closed-loop control system that adapts to changing conditions while maintaining manageable complexity
2Productivity
If existing vertical auto-scaling is implemented, then automatic resource adjustment is achieved, but global priority considerations and environmental parameters are not taken into account
Solution Approach 1:
The system separates the resource scaling decision into distinct components: observed resource consumption metrics, global priority information, and environmental parameters, allowing each to be processed and weighted independently to achieve optimal resource allocation
Solution Approach 2:
The system adds new dimensions to the resource scaling decision by incorporating global priority levels and environmental parameters alongside traditional resource consumption metrics, enabling more informed and nuanced auto-scaling decisions
3Speed
If resource requirements are adjusted rapidly, then responsiveness to changing conditions is improved, but performance degradation occurs due to lack of smooth refinement
Solution Approach 1:
The system periodically learns and updates resource requirement functions based on accumulated consumption metrics, applying changes at regular intervals rather than continuously, which maintains responsiveness while preventing performance degradation from overly rapid adjustments
Solution Approach 2:
The system dynamically adjusts the rate and magnitude of resource requirement changes based on current system state and observed stability, enabling flexible adaptation that maintains both responsiveness and performance reliability
Data Source
AI summary
A computer-implemented method, a computer program product, and a computer system for global vertical auto-scaling for processing units. A computer periodically learns one or more functions, based on resource consumption metrics samples of processing units. A computer uses the one or more functions to obtain a predicted maximal resource consumption value per resource and a predicted minimal resource consumption value per resource for a processing unit. A computer determines a global priority of the processing unit. A computer calculate a prioritized predicted consumption value per resource for the processing unit, based on the global priority, the predicted maximal resource consumption value, and the predicted minimal resource consumption value. A computer uses the prioritized predicted consumption value for vertical auto-scaling of the processing unit by a processing unit management system.


