Incremental Container State Replication via Layered File Systems
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing container technologies lack a generic, infrastructure-level solution for state persistency and replication, leading to application-dependent solutions that result in redundancy and inconsistency, making it difficult to scale and manage containerized stateful applications effectively.
Innovation Solution
Implementing a system where containers establish connections with multiple replica hosts during initialization, using a lightweight commit operation and layered file system to synchronize states incrementally, allowing for efficient restoration and failover, and enabling infrastructure-level solutions for migration, high availability, and backup and recovery.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If application-dependent solutions are used for state persistency and replication, then specific application requirements can be met, but redundancy and inconsistency increase, making it difficult to scale and manage containerized stateful applications
Solution Approach 1:
The patent implements a universal infrastructure-level replication system that serves multiple stateful applications through a common framework. The system defines standardized interfaces and mechanisms for state capture, replication, and restoration that can be applied across different applications, eliminating the need for separate application-specific solutions and reducing overall system complexity while maintaining adaptability through configuration options.
2Reliability
If entire file systems are synchronized for container replication, then complete state consistency is achieved, but data transmission volume increases significantly, reducing efficiency
Solution Approach 1:
The patent segments the container file system into discrete layers, where each layer represents a specific state snapshot. Instead of synchronizing entire file systems, the system identifies and replicates only the specific layers that contain state changes. This layered segmentation enables selective replication of minimal necessary data while maintaining complete state consistency, dramatically reducing data transmission volume.
Solution Approach 2:
The system uses copy-on-write semantics where unchanged layers are referenced rather than copied. When a container state needs to be replicated, only the modified layers are copied to the target container, while shared read-only layers are referenced through hard links or copy references. This approach ensures state consistency while minimizing actual data transmission.
3Loss of energy
If lightweight commit operations are used for incremental synchronization, then data transmission is reduced, but the complexity of managing layered file systems increases
Solution Approach 1:
The patent implements self-service mechanisms where the container runtime automatically manages the layered file system operations. The system autonomously performs layer identification, commitment, and synchronization without requiring external orchestration for each operation. The layered file system structure is designed to be self-describing, with metadata that automatically tracks layer dependencies and relationships, reducing the operational complexity despite the enhanced functionality.
Data Source
AI summary
A container is obtained at a host device of a set of host devices in a container hosting environment. At the host device, one or more other host devices of the set of hosting devices are identified as one or more replica host devices. A commit operation is performed at the host device for a given layer of the obtained container. A synchronization operation is then initiated at the host device with each of the one or more replica host devices based on the committed layer of the obtained container to form a replica container at each of the one or more replica host devices. The replica container at each of the one or more replica host devices is state-synchronized with the obtained container.


