Two-Node Cluster Quorum via External Echo Requests

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Two-node clusters face challenges in maintaining high availability due to split-brain scenarios and data corruption when network partitions occur, as they lack sufficient quorum votes to create a cluster, especially when one node fails.

Innovation Solution

Implementing a method that uses external ping targets to determine node connectivity and provide services independently, allowing a single node to create a cluster by sending echo requests to external systems, which act as quorum votes, thereby preventing multiple instances from forming.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If quorum device is used to provide additional quorum vote for two-node clusters, then a single node can create a cluster when the other node fails, but the system requires specialized hardware (quorum disk) with specific hardware and software interactions

Engineering Contradiction:
Improvecluster availabilityVSAvoidhardware requirements
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces an intermediary echo request mechanism that mediates between nodes to establish quorum. Instead of requiring direct communication with a quorum device, nodes send echo requests to each other and use the presence or absence of echo responses as the basis for determining quorum status, eliminating the need for specialized quorum hardware

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent replaces the mechanical hardware-based quorum device (quorum disk) with a software-based echo request/response mechanism. The physical hardware interaction required by traditional quorum devices is substituted with network communication protocols that achieve the same logical function of determining node availability

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Reliability

If traditional quorum scheme is used requiring half the number of nodes plus one, then quorum can be reached in large clusters, but two-node clusters cannot create a cluster when one node fails because they need 2 quorum votes

Engineering Contradiction:
Improvecluster creation capabilityVSAvoidapplicability to two-node clusters
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent changes the quorum determination parameter from a fixed numerical threshold (half nodes plus one) to a dynamic assessment based on echo request responses. This allows the system to adapt to two-node clusters where a single responding node can establish quorum, making the solution versatile across different cluster sizes

Inventive Principle:
Principle #35Parameter changes

3Ease of operation

If nodes attempt to join cluster when communication fails, then cluster joining may proceed, but split-brain scenarios occur resulting in multiple cluster instances and data corruption

Engineering Contradiction:
Improveautomatic cluster joiningVSAvoiddata integrity
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The patent applies preliminary anti-action by having nodes send echo requests before attempting to join or create a cluster. The absence of an echo response serves as a preliminary indication that another node is unavailable, preventing the node from proceeding with cluster creation and avoiding split-brain scenarios before they can occur

Inventive Principle:
Principle #9Preliminary anti-action

Data Source

PatentUS8671218B2Method and system for a weak membership tie-break
Publication Date: 2014.03.11 ORACLE AMERICAN INC
  • US8671218B2 patent drawing
  • US8671218B2 patent drawing
  • US8671218B2 patent drawing

AI summary

In general, the invention relates to a method for managing a two-node cluster. The method includes determining, by a first server node, that a second server node is disconnected from the two-node cluster when a first heartbeat response is not received from the second server node and sending a first echo request from the first server node to a first external system, where the first external system is specified on each server node of the two-node cluster. The method further includes receiving a first echo response for the first echo request from the first external system at the first server node and, in response to receiving the first echo response, providing, by the first server node, services of the two-node cluster independent of the second server node.