Application-Aware I/O Fencing for Cluster Availability
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Traditional fencing solutions in distributed computing clusters often terminate healthy nodes during network partitions, even if there is no split-brain condition, leading to unnecessary redundancy and reduced cluster availability.
Innovation Solution
Implementing application-aware input/output fencing operations that determine the application weight of instances and delay or terminate only the application instances causing split-brain conditions, rather than the nodes, using a cumulative fencing race mechanism to manage access to shared storage.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional fencing solutions are used to prevent split-brain conditions, then data integrity is protected, but healthy nodes are unnecessarily terminated reducing cluster availability
Solution Approach 1:
The patent segments the fencing operation into two distinct levels: node-level fencing and application instance-level fencing. Instead of terminating entire nodes, the system identifies and terminates only the specific application instances causing split-brain conditions. This segmentation allows healthy nodes to remain operational while preventing data corruption, thereby resolving the contradiction between data integrity and cluster availability.
Solution Approach 2:
The patent applies local quality by making the fencing operation selective rather than uniform. The system evaluates the split-brain condition specifically for each application instance on each node, and applies fencing only where necessary. This localized approach ensures that only problematic application instances are terminated while leaving healthy nodes and applications unaffected, thus maintaining both data integrity and cluster availability.
2Reliability
If application instances are delayed in cumulative fencing race based on application weight, then split-brain conditions are prevented, but additional processing time is introduced
Solution Approach 1:
The patent changes the parameter of fencing race timing by introducing application weight as a variable. Instead of all application instances competing simultaneously, the system delays lower-weight applications by a calculated time period based on their weight values. This parameter change allows higher-weight (more critical) applications to establish their fencing position first, preventing split-brain conditions while minimizing total fencing time through optimized sequencing.
Data Source
AI summary
Disclosed herein are various embodiments that perform application-aware input/output (I/O) fencing operations, certain of which embodiments include, in response to detection of a network partition event in a cluster, determining a first application weight, determining whether the first one or more application instances should be delayed in a cumulative fencing race, performing the cumulative fencing race (in response to a determination that the first one or more application instances should be delayed in the cumulative fencing race), and performing the cumulative fencing race without introducing the delay with regard to the first one or more application instances (in response to a determination that the first one or more application instances should not be delayed in the cumulative fencing race).


