HA Node Role Sync via Quorum Witness and Non-Persistent Memory
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
High-availability computing systems face challenges in maintaining continuous operation due to single points of failure, particularly in scenarios where split-brain conditions occur, leading to data corruption and improper functioning, as existing clustering software struggles to handle simultaneous heartbeat link failures effectively.
Innovation Solution
Implementing a high-availability node architecture with redundant controllers, where role information is replicated between active and standby controllers using non-persistent memory to prevent unnecessary elections and ensure seamless failover, and utilizing a quorum witness device to prevent data corruption in split-brain scenarios.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If redundancy is implemented with backup controllers, then system availability is improved, but complexity of role management increases
Solution Approach 1:
The patent implements role information copying by replicating role data from the active controller to the backup controller using non-persistent memory. This copying mechanism allows the backup controller to assume the active role seamlessly during failover without requiring complex role management procedures, thereby improving system availability while managing the complexity through automated data replication.
Solution Approach 2:
The patent applies preliminary action by pre-configuring the backup controller with role information in non-persistent memory before any failure occurs. This preliminary setup ensures that when a failure happens, the backup controller is already prepared to take over immediately, reducing the complexity of real-time role management and ensuring continuous availability.
2Difficulty of detecting and measuring
If heartbeat links are used to monitor controller status, then detection of controller failures is improved, but risk of split-brain conditions increases
Solution Approach 1:
The patent introduces a quorum witness as an intermediary component that mediates between heartbeat links and role assignment decisions. The quorum witness receives heartbeat signals from multiple controllers and determines role assignments based on quorum rules, preventing split-brain conditions by ensuring that only controllers with sufficient heartbeat confirmation can assume active roles.
Solution Approach 2:
The patent converts the potential harm of heartbeat link failures into a benefit by using non-persistent memory to store role information. When heartbeat links fail, the non-persistent memory ensures that role information is not lost, allowing the system to maintain correct role assignment even during communication failures, thereby transforming a harmful condition into a controlled scenario.
3Speed
If role information is stored in non-persistent memory, then failover speed is improved, but data retention capability decreases
Solution Approach 1:
The patent applies preliminary action by loading role information into non-persistent memory before failover is needed. This pre-loading ensures that when failover occurs, the role information is already available for immediate use, achieving fast failover speeds. The non-persistent nature of the memory is acceptable because the information is reloaded from persistent storage only when necessary.
Data Source
AI summary
A high-availability network device cluster role synchronization technique for devices configured with multiple network controllers is disclosed. An HA node may contain information regarding a role within a cluster for that HA node. This information should properly be maintained or erased based on a type of failover for an HA device. For example, if there is a loss of the active controller that causes only a controller failover, changes to the role of the HA node may not be necessary. Thus, an election process within a cluster may be avoided. However, if a failover of an entire HA node occurs (or restart of an HA node), role information prior to the restart may not be applicable and an election process may need to be initiated such that the cluster may continue to function. Different types of roles may exist for nodes within a cluster.


