Container Tuning Engine for High Availability Rolling Updates

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In cloud-based SaaS environments, customers face challenges in updating and customizing variables and indexes across different containers in pods to ensure smooth performance and maximize throughput, leading to discrepancies between versions.

Innovation Solution

The technology employs a white box approach that uses application metrics and rules to automatically determine which variables and indexes need updating, with a tuning engine that communicates with containers in a high availability environment to perform rolling updates while the containers are running, ensuring minimal downtime and synchronized updates across instances.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If manual updates and customizations are performed on containers in pods, then customers can update and customize variables and indexes, but discrepancies between versions among users running in different containers occur

Engineering Contradiction:
Improvecustomization capabilityVSAvoidversion consistency
Core Design Contradiction:
Adaptability or versatilityVSStability of the object's composition

Solution Approach 1:

The system implements automated feedback mechanisms where the platform monitors container states, detects version discrepancies, and automatically propagates updates across all containers. This closed-loop feedback system ensures that customizations made by one customer are automatically synchronized to maintain version consistency across the distributed container environment.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The platform provides self-service automation where update propagation and container synchronization occur without manual customer intervention. The system automatically detects when updates are needed and executes the synchronization process autonomously, eliminating the need for customers to manually manage version consistency across their container instances.

Inventive Principle:
Principle #25Self-service

2Stability of the object's composition

If containers are stopped for updates, then version consistency can be ensured, but service downtime increases

Engineering Contradiction:
Improveversion consistencyVSAvoidservice downtime
Core Design Contradiction:
Stability of the object's compositionVSLoss of time

Solution Approach 1:

The system performs preliminary actions by pre-staging container images and update configurations before actual deployment. This allows updates to be prepared in advance and applied atomically across containers, ensuring version consistency is established before service disruption occurs, thereby minimizing downtime.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The platform enables continuous service operation during updates by implementing rolling update strategies where containers are updated sequentially rather than simultaneously. This ensures that at least one container instance remains operational throughout the update process, maintaining service continuity while achieving version consistency across all instances.

Inventive Principle:
Principle #20Continuity of useful action

3Stability of the object's composition

If automated tuning is implemented, then version discrepancies are minimized, but system complexity increases

Engineering Contradiction:
Improveversion consistencyVSAvoidsystem complexity
Core Design Contradiction:
Stability of the object's compositionVSDevice complexity

Solution Approach 1:

The platform implements a universal automated tuning system that handles multiple container types, update scenarios, and synchronization requirements through a single unified mechanism. This multi-functional approach consolidates what would otherwise require separate complex systems for each container type and update scenario, reducing overall system complexity while maintaining version consistency.

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

Data Source

PatentUS11941425B2Systems and methods for tuning containers in a high availability environment
Publication Date: 2024.03.26 PING IDENTITY INT INC
  • US11941425B2 patent drawing
  • US11941425B2 patent drawing
  • US11941425B2 patent drawing

AI summary

The disclosed technology teaches tuning containers in pods, in a high availability environment that runs two or more pods to implement a service, while the containers are running, including instrumenting a tunable container to communicate application metrics to a tuning engine that runs in a pod and maintains current configuration state information for the container. The tuning engine accesses the application metrics and a rule that specifies tuning of resource configuration for the container. The rule combines variables in the metrics to determine whether an update should be applied to the container. The tuning engine determines a new resource configuration for the tunable container and updates the configuration state information for the container according to the new configuration. An update manager detects updating of the configuration state information and performs a rolling update of instances of the tunable container in the pods that implement the service.