Dynamic Sidecar Containers for Scalable Resource-Efficient Pods

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Containerized applications face challenges in scaling within the application itself, as sidecar containers consume computing resources even when not in use, leading to inefficiencies and increased licensing costs.

Innovation Solution

Dynamic sidecar containers are suspended when not necessary, with their state saved for later resumption, allowing resources to be reserved and used for other tasks, and ensuring efficient resource utilization through liveness probes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If sidecar containers are continuously running to support containerized applications, then application functionality and reliability are maintained, but computing resource consumption increases

Engineering Contradiction:
Improveapplication functionalityVSAvoidcomputing resource consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The sidecar container's execution state is made dynamic rather than static. The system suspends the sidecar container when it's not needed and resumes it when needed, allowing the container to transition between active and suspended states based on real-time requirements. This resolves the contradiction by maintaining reliability when needed while reducing resource consumption during idle periods.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The execution parameter of the sidecar container is changed from a constant 'running' state to a variable state that can be suspended or resumed. By controlling the execution state parameter based on operational needs, the system achieves both reliability (when executed) and resource efficiency (when suspended).

Inventive Principle:
Principle #35Parameter changes

2Productivity

If multiple instances of containerized applications are instantiated to achieve scalability, then system capacity increases, but hardware requirements and licensing costs increase

Engineering Contradiction:
Improvesystem capacityVSAvoidhardware resources
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The sidecar container is designed to be multi-functional and shareable across multiple application instances. Instead of requiring dedicated support containers for each instance, a single sidecar container can serve multiple containers within a pod, reducing the total quantity of hardware resources needed while maintaining system capacity through efficient resource sharing.

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

3Speed

If sidecar containers are kept ready to perform computing tasks, then task execution speed is improved, but resource allocation efficiency decreases

Engineering Contradiction:
Improvetask execution speedVSAvoidresource allocation efficiency
Core Design Contradiction:
SpeedVSProductivity

Solution Approach 1:

The sidecar container is initialized and prepared in advance with all necessary configurations and dependencies, but its actual execution is suspended until needed. This preliminary setup ensures that when the container does execute, it can perform tasks immediately without setup delays, while resources are not consumed during the suspended preparation phase.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS12530223B2Dynamic support containers for containerized applications
Publication Date: 2026.01.20 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US12530223B2 patent drawing
  • US12530223B2 patent drawing
  • US12530223B2 patent drawing

AI summary

A computer system provides dynamic support containers for containerized applications. A pod is instantiated comprising one or more containers and a sidecar container, wherein execution of the sidecar container is temporarily suspended after initialization. It is determined that a container of the one or more containers requires additional computing resources. In response to determining that the container requires additional computing resources, execution of the sidecar container is resumed and the sidecar container is provided with instructions to perform a computing task of the container. In response to determining that the computing task is complete, execution of the sidecar container is suspended. Embodiments of the present invention further include a method and program product for providing dynamic support containers for containerized applications in substantially the same manner described above.