HA Cluster Node Handshake for Split-Brain Prevention

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

High-availability clusters face the challenge of preventing split-brain scenarios, where multiple nodes become available and accept service requests, leading to invalid services and data corruption, without introducing additional hardware and software requirements or single points of failure.

Innovation Solution

A method where a first node in a high-availability cluster determines if it cannot communicate with a second node, initiates a handshake operation with clients to assess the second node's status, and requests restoration of communication, ensuring only one node provides services by using connected clients to determine the status and prevent split-brain scenarios.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional HA cluster communication methods are used, then nodes can maintain service availability, but split-brain scenarios occur where multiple nodes accept service requests leading to data corruption

Engineering Contradiction:
Improveservice availabilityVSAvoiddata corruption from split-brain
Core Design Contradiction:
ReliabilityVSObject-affected harmful factors

Solution Approach 1:

The patent introduces a handshake operation as an intermediary mechanism between HA cluster nodes and service clients. When a node detects communication failure with other nodes, it initiates a handshake with connected clients to verify whether those clients can still reach other nodes in the cluster. This intermediary verification step prevents split-brain scenarios by ensuring that only nodes with confirmed isolation from other active nodes can accept service requests, thereby eliminating the harmful effect of data corruption while maintaining service availability.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If additional hardware or software mechanisms are introduced to prevent split-brain, then reliability improves, but device complexity increases

Engineering Contradiction:
Improvesplit-brain preventionVSAvoidhardware and software requirements
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements a self-service approach where existing service clients in the HA cluster perform dual functions: they provide services to the cluster while simultaneously acting as verification agents during handshake operations. When a node needs to verify its isolation status, it reuses existing client connections to send handshake requests through the same service channels already established in the system. This eliminates the need for additional dedicated hardware or software components, achieving reliable split-brain prevention without increasing device complexity.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS9916214B2Preventing split-brain scenario in a high-availability cluster
Publication Date: 2018.03.13 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US9916214B2 patent drawing
  • US9916214B2 patent drawing
  • US9916214B2 patent drawing

AI summary

As disclosed herein a method, executed by a computer, includes determining, by a processor, that a first node of a HA cluster is unable to communicate with a second node of the HA cluster, and initiating, by a processor, by the first node, a handshake operation with a connected client, wherein the handshake operation comprises requesting that the client determine a status of the second node and receiving, from the client, a response indicating the status of the second node. The method further includes accepting, by a processor, new requests in response to determining that the second node is unavailable, and requesting, by a processor, restoration of communications between the first node and the second node in response to determining that the second node is available. A computer system and computer program product corresponding to the above method are also disclosed herein.