Container In-Memory State Migration via Preliminary Transfer
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The migration of a container's in-memory state between host machines poses challenges, particularly for applications that write significant data, as it can result in data loss and a poor user experience due to restarts or reconnections, especially in scenarios like video games and real-time data processing.
Innovation Solution
A method is implemented to identify a suitable destination node among peer nodes, transfer replicas of base layers if necessary, and then migrate the in-memory layer, ensuring minimal interruption to data streams by waiting for successful base layer transfers before halting the data stream and transferring the in-memory layer.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If the container's in-memory state is migrated between host machines, then the application can continue running on a new host, but data loss occurs and user experience deteriorates due to restarts or reconnections
Solution Approach 1:
The patent applies preliminary action by transferring the in-memory layer data to the destination host before actually migrating the container. This ensures that the runtime state is already in place on the destination host, allowing the container to resume execution without data loss or interruptions, thus maintaining data integrity while enabling container mobility.
2Loss of information
If the in-memory layer is transferred during container migration, then application state is preserved, but data stream interruptions occur and user experience is disrupted
Solution Approach 1:
The patent performs the in-memory layer transfer as a preliminary action before the container actually migrates. By pre-transferring the runtime state data to the destination host, the container can switch hosts without interrupting the data stream, thus preserving application state while avoiding user experience disruptions.
3Stability of the object's composition
If base layers are transferred before in-memory layer, then destination node has complete container image, but migration time increases and productivity decreases
Solution Approach 1:
The patent applies preliminary action by transferring only the essential in-memory layer data before migration, rather than waiting to transfer all base layers first. This selective preliminary transfer maintains the necessary runtime state while significantly reducing migration time, thus balancing container completeness with migration speed.
Data Source
AI summary
Embodiments of the present disclosure relate to migrating the in-memory state of a containerized application to a destination node. A processing device may transmit an availability request to each of one or more nodes and identify a destination node to which a container is to be migrated based on a response from each of the one or more nodes indicating resources available to provision a replica of the container. The processing device may determine whether the destination node comprises a replica of each base layer of a set of base layers of the container and if not, transmit a replica of each base layer the destination node is missing to the destination node. A snapshot of the container may be acquired and the set of base layers may be removed from the snapshot to generate a replica of the in-memory layer, which may be transmitted to the destination node.


