Host-Based Replication Controller for Transparent Array Failover
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current storage management systems face challenges in providing synchronous replication across heterogeneous storage arrays due to differences in interfaces and semantics, limiting the availability and efficiency of replication functionalities.
Innovation Solution
A replication controller is implemented to provide synchronous replication across multiple storage arrays, utilizing a host-based replication approach with a Linux kernel driver (md driver) and CSI drivers, enabling seamless access to volumes even in the event of storage array failures.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If host-based replication with Linux kernel driver is used, then accessibility and efficiency are improved, but device complexity increases
Solution Approach 1:
The patent introduces a replication controller as an intermediary component that manages synchronous replication across multiple storage arrays. This controller coordinates between the host system and storage arrays, handling failover logic and replication state management, thereby improving volume accessibility while containing complexity within a dedicated management layer rather than dispersing it throughout the entire system.
Solution Approach 2:
The host-based replication approach enables the host system to autonomously manage replication operations through the Linux kernel driver, without requiring storage array-specific replication functionalities. The host independently handles volume provisioning, replication state tracking, and failover decisions, improving ease of operation by making the system self-sufficient in replication management.
2Reliability
If synchronous replication across heterogeneous storage arrays is implemented, then reliability is improved, but device complexity increases due to interface and semantic differences
Solution Approach 1:
The replication controller is designed with universal functionality to manage synchronous replication across heterogeneous storage arrays. It implements a unified replication protocol and abstracted interface layer that can communicate with different storage array types (IBM Storwize, Dell PowerMax, HPE StoreEver) through standardized methods, enabling reliable cross-vendor replication without requiring vendor-specific integration for each array type.
Solution Approach 2:
The system dynamically adjusts replication parameters such as synchronization timing, failover thresholds, and data transfer rates based on the specific characteristics of each storage array involved. By modifying these parameters adaptively, the replication controller maintains reliable synchronous replication across arrays with different performance characteristics and interface requirements.
3Ease of operation
If failover transparency is maintained for applications, then ease of operation is improved, but loss of time occurs during array failure events
Solution Approach 1:
The replication controller pre-establishes replication relationships and maintains synchronized copies of volumes across multiple storage arrays before failures occur. Volume provisioning and replication state validation are performed in advance, so when a failure happens, the failover can immediately switch to the pre-synchronized replica without requiring data synchronization or volume creation during the failover event.
Solution Approach 2:
The system continuously monitors the health status of storage arrays and replication state through feedback mechanisms. When degradation or failure is detected, the replication controller receives real-time feedback and automatically initiates failover to the healthy replica, maintaining application transparency while minimizing the time loss by reacting immediately to feedback signals rather than waiting for application-level failure detection.
Data Source
AI summary
Replication techniques in storage environments are disclosed. For example, a method includes provisioning, via a replication controller in a storage environment, one or more volumes that are synchronously replicated across at least two storage arrays. The provisioning is configured to maintain access to the one or more volumes by an application program executing on a host device in response to one of the at least two storage arrays failing, and the failure of the storage array being transparent to the application program executing on the host device while access to the one or more volumes is maintained.


