Token Ring Architecture for Atomic Container Upgrades
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In container-based operating system level virtualization environments, existing technologies face challenges in efficiently upgrading user applications across multiple nodes while ensuring application liveness, health, and rolling back to previous versions in case of failures, often requiring manual intervention and lacking atomicity in upgrades.
Innovation Solution
The solution employs a token passing method among OS-level virtualization instances to determine liveness, selectively upgrade containerized applications, perform health checks, and roll back upgrades if necessary, using a token ring architecture to manage upgrades and downgrades across nodes in an all-or-nothing fashion.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If manual intervention is used to upgrade user applications across multiple nodes, then application liveness and health can be monitored, but the upgrade process is time-consuming and lacks atomicity
Solution Approach 1:
The system implements automated upgrade management where the token passing mechanism and health check protocols operate without manual intervention. The OS-level virtualization application automatically coordinates upgrades across nodes, performs health checks, and manages rollbacks based on automated failure detection, eliminating the need for manual operations while maintaining reliability.
Solution Approach 2:
The system performs preliminary health checks and liveness determinations before executing upgrades. The token passing mechanism预先 establishes the upgrade sequence and verifies node readiness, ensuring that upgrades only proceed when conditions are favorable, thus preventing failures and reducing rework time.
2Productivity
If automated upgrade methods are implemented across multiple nodes, then upgrade speed increases, but ensuring atomicity and rollback capability becomes complex
Solution Approach 1:
The patent introduces a token as an intermediary mechanism that simplifies upgrade coordination. The token passes sequentially through nodes, carrying upgrade instructions and status information. This intermediary approach transforms a complex multi-node coordination problem into a simple sequential process, enabling atomic upgrades with straightforward rollback capability.
Solution Approach 2:
The upgrade process is segmented into discrete node-level operations coordinated by token passing. Each node independently executes upgrades based on token instructions, and failures are contained to individual nodes. This segmentation enables parallel processing while maintaining atomicity, as the token ensures coordinated execution across all nodes.
3Reliability
If health checks are performed during upgrades, then application reliability improves, but the overall upgrade process time increases
Solution Approach 1:
The system implements periodic health checks at strategic points in the upgrade process rather than continuous monitoring. Health checks are performed at predetermined intervals (e.g., before upgrade, during upgrade, after upgrade) based on token passing cycles, balancing reliability verification with minimal time overhead.
Data Source
AI summary
Utilizing several passes of a token among the operating system level virtualization applications (OSLVAs) running on each of an ordered list of nodes selectively upgrade user applications in specific containers after determining that each OSVLA hosting a container to be upgraded is live. A failed liveness check can cause a revision to the list of nodes. Post-upgrade health checks of each application, and a list-wide notification of a completed upgrade of the application instances, can follow a successful upgrade. A roll back of the upgrade across all nodes can follow an unsuccessful upgrade.


