High Availability Cluster Heartbeat Service via Disk Array Mediator

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

High availability clusters using large-capacity relational databases face challenges with data integrity due to split-brain scenarios caused by faulty heartbeat links, leading to data corruption and economic losses.

Innovation Solution

Implementing a heartbeat service that writes and reads heartbeat counting information to a disk array, including a write heartbeat message sequence number, read peer heartbeat message sequence number, active-standby state information, and heartbeat message length, to prevent split-brain scenarios by ensuring synchronized operations between active and standby servers.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a redundant heartbeat link is used to transfer heartbeat messages, then the occurrence of split-brain is reduced, but when the redundant heartbeat link is faulty, split-brain inevitably occurs

Engineering Contradiction:
Improveheartbeat service reliabilityVSAvoidsplit-brain occurrence
Core Design Contradiction:
ReliabilityVSObject-affected harmful factors

Solution Approach 1:

The patent introduces a disk array as an intermediary storage device for heartbeat counting information. Instead of relying solely on network heartbeat links between servers, the heartbeat state is persisted on the disk array, which serves as a mediator that all servers can access to determine the active-standby state, preventing split-brain even when network links fail

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent creates a copy of the heartbeat state information on the disk array. Each server writes its heartbeat counting information (including active-standby state) to the disk array, and other servers read this copied information to determine the correct state, ensuring consistency across the cluster without relying on direct server-to-server communication

Inventive Principle:
Principle #26Copying

2Productivity

If servers transfer control information using heartbeat service on hardware facilities, then high availability switching is enabled, but when heartbeat service is faulty, data corruption occurs due to split-brain

Engineering Contradiction:
Improvehigh availability switching capabilityVSAvoiddata integrity
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent performs preliminary action by having servers write their heartbeat counting information to the disk array before any failover occurs. This pre-established record of active-standby state on the disk array allows servers to quickly and reliably determine their role after a failure, enabling fast high availability switching while preventing data corruption through split-brain

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements a feedback mechanism where servers continuously read the heartbeat counting information from the disk array to verify the current active-standby state. This feedback loop ensures that servers maintain correct state awareness and can detect inconsistencies, preventing split-brain scenarios while maintaining high availability functionality

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS9658912B2Method and apparatus for implementing heartbeat service of high availability cluster
Publication Date: 2017.05.23 HUAWEI TECH CO LTD
  • US9658912B2 patent drawing
  • US9658912B2 patent drawing
  • US9658912B2 patent drawing

AI summary

Embodiments of the present invention provide a method for implementing a heartbeat service of a high availability cluster, including: writing, by a server, heartbeat counting information to a disk array, where the heartbeat counting information includes a write heartbeat message sequence number, a read peer heartbeat message sequence number, active-standby state information, a heartbeat message, and a heartbeat message length of the server, so that one or more corresponding servers read the heartbeat counting information, in the disk array, of the server; and reading heartbeat counting information, which is written by the one or more corresponding servers to the disk array, of the one or more corresponding servers, and repeating the write operation and the read operation. Correspondingly, the embodiments of the present invention further provide a server, which solves a spit-brain problem, and improves data security.