High Availability Cluster Heartbeat Service via Disk Array Mediator
Find Innovative SolutionsGenerate 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
Engineering 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
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
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
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
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
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
Data Source
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.


