Live-Migration and Automated Recovery in Distributed Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current solutions for managing multiple applications on a cluster of servers fail to effectively address redundancy and load-balancing issues in high-latency networked systems, as they either incur significant costs, impose performance overhead, or are limited by geographical constraints and the risk of data corruption.

Innovation Solution

A server configured to operate in either a master or slave role, capable of autonomously switching roles between applications, with logic for replicating data and detecting events to manage redundancy and load balancing across a cluster, using a filesystem mount handler and snapshot replicator to maintain data consistency and balance load.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If virtualisation is used to replicate every change in memory and system state to a second physical host, then application recovery capability is improved, but system cost and resource requirements worsen

Engineering Contradiction:
Improveapplication recovery capabilityVSAvoidsystem cost and resource requirements
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent uses copying by replicating only the necessary application state data to standby servers rather than copying entire virtual machine states. This selective copying approach maintains recovery capability while significantly reducing resource overhead and system complexity compared to full virtualisation-based replication.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent extracts only the essential application state information needed for recovery, separating it from the complete system state. This extraction principle allows the system to maintain recovery capability without the overhead of replicating entire virtual machine environments, thereby reducing resource requirements.

Inventive Principle:
Principle #2Taking out (Extraction)

2Productivity

If manual intervention is used to move applications between servers during load spikes, then resource utilisation can be adjusted, but recovery time worsens

Engineering Contradiction:
Improveresource utilisationVSAvoidrecovery time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent implements self-service by enabling servers to automatically detect load conditions and autonomously migrate applications to appropriate target servers without manual intervention. This automated self-service mechanism maintains optimal resource utilisation while significantly reducing recovery time compared to manual processes.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system employs feedback mechanisms where servers continuously monitor load conditions and automatically trigger application migration when thresholds are exceeded. This closed-loop feedback control enables dynamic resource adjustment while maintaining rapid response times without human intervention.

Inventive Principle:
Principle #23Feedback

3Stability of the object's composition

If operation-system level constraints are applied to isolate high-load applications, then system stability is improved, but application availability worsens

Engineering Contradiction:
Improvesystem stabilityVSAvoidapplication availability
Core Design Contradiction:
Stability of the object's compositionVSReliability

Solution Approach 1:

The patent extracts high-load applications from their original servers and relocates them to dedicated servers designed to handle such loads. This extraction prevents stability issues on origin servers while maintaining application availability through purpose-built hosting environments, avoiding the need for constraining applications that would degrade their performance.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The system segments the server infrastructure into different functional categories, with specific servers dedicated to handling high-load applications. This segmentation allows unstable high-load applications to be isolated on appropriate platforms without affecting overall system stability, while maintaining their availability through dedicated hosting.

Inventive Principle:
Principle #1Segmentation

4Productivity

If shared storage backend is used in classical cluster architecture, then load distribution is improved, but system cost and single point of failure risk worsen

Engineering Contradiction:
Improveload distributionVSAvoidsystem cost and single point of failure risk
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent extracts the shared storage dependency from the cluster architecture, allowing servers to access application state data through direct replication rather than through a shared storage backend. This extraction eliminates the single point of failure represented by shared storage while maintaining load distribution capabilities through replicated data access.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

Instead of relying on shared storage for data access, the patent uses copying to replicate application state data across multiple servers. This copying approach enables load distribution through data redundancy while eliminating the need for expensive shared storage infrastructure and removing the associated single point of failure.

Inventive Principle:
Principle #26Copying

5Stability of the object's composition

If complex solutions like quorum, fencing or STONITH are implemented to prevent split-brain problem, then data consistency is improved, but device complexity and operational cost worsen

Engineering Contradiction:
Improvedata consistencyVSAvoiddevice complexity and operational cost
Core Design Contradiction:
Stability of the object's compositionVSDevice complexity

Solution Approach 1:

The patent uses copying with version tracking to maintain data consistency across servers without requiring complex quorum or fencing mechanisms. Each server maintains copies of application state with version information, allowing automatic consistency resolution through version comparison rather than through expensive and complex coordination protocols.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The system implements self-service data consistency through automatic version tracking and conflict resolution at each server. Servers autonomously manage their own data copies and resolve inconsistencies through built-in version control mechanisms, eliminating the need for external quorum systems, fencing, or STONITH procedures.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS11263182B2System for live-migration and automated recovery of applications in a distributed system
Publication Date: 2022.03.01 GOOGLE LLC
  • US11263182B2 patent drawing
  • US11263182B2 patent drawing
  • US11263182B2 patent drawing

AI summary

A method and apparatus for distribution of applications amongst a number of servers, ensuring that changes to application data on a master for that application are asynchronously replicated to a number of slaves for that application. Servers may be located in geographically diverse locations; the invention permits data replication over high-latency and lossy network connections and failure-tolerance under hardware and network failure conditions. Access to applications is mediated by a distributed protocol handler which allows any request for any application to be addressed to any server, and which, when working in tandem with the replication system, pauses connections momentarily to allow seamless, consistent live-migration of applications and their state between servers. Additionally, a system which controls the aforementioned live-migration based on dynamic measurement of load generated by each application and the topological preferences of each application, in order to automatically keep servers at an optimum utilisation level.