Persistent Virtual Disk Reservations via Distributed iSCSI Targets

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The existing storage area network architecture faces inefficiencies and latency issues due to the requirement for multiple virtual machines across different hypervisors to access the same virtual disk through a single controller virtual machine, leading to overburdening and potential crashes, which affects data access and management in cloud storage environments.

Innovation Solution

Implementing a system where multiple virtual machines can access the same virtual disk using their own controller virtual machines as iSCSI Targets, with a coordinator module in the storage platform managing reservations and locks to ensure efficient access and data integrity, storing registration and reservation information within the storage platform rather than locally on virtual machines.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If multiple virtual machines across different hypervisors access the same virtual disk through a single controller virtual machine, then data access is enabled, but latency increases and the controller virtual machine may crash due to overburdening

Engineering Contradiction:
Improvedata access reliabilityVSAvoidaccess latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments the single controller virtual machine into multiple controller virtual machines, each capable of independently managing virtual disk access. This allows multiple virtual machines to access the same virtual disk through different controller virtual machines simultaneously, distributing the access load and reducing latency while maintaining data integrity through coordinated lock management.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a coordinator module as an intermediary between virtual machines and controller virtual machines. This coordinator manages lock requests and reservation information, coordinating access across multiple controllers to prevent conflicts and ensure data consistency, thereby reducing latency caused by direct controller contention.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If multiple virtual machines access the same virtual disk through a single controller virtual machine, then centralized control is maintained, but the controller virtual machine becomes overburdened and may crash

Engineering Contradiction:
Improvesystem stabilityVSAvoiddata access efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent divides the single controller virtual machine into multiple controller virtual machines, each capable of independently handling virtual disk access operations. This segmentation distributes the processing load across multiple controllers, preventing any single controller from becoming overburdened and crashing, while maintaining centralized coordination through the lock management system.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent adds a new dimension of control by introducing a coordinator module that operates separately from the controller virtual machines. This coordinator manages reservation information and lock requests in a separate coordination layer, allowing controller virtual machines to focus on data access operations without the overhead of conflict management, thereby improving productivity while maintaining system stability.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Speed

If reservation information is stored locally on virtual machines, then access speed is improved, but data consistency and reliability across multiple hypervisors deteriorate

Engineering Contradiction:
Improvereservation access speedVSAvoiddata consistency
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The patent merges the reservation information storage from multiple virtual machines into a centralized location within the storage platform. The coordinator module maintains a single source of truth for reservation information that all controller virtual machines can access and update atomically, ensuring data consistency across multiple hypervisors while maintaining access speed through efficient lock management.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent implements a feedback mechanism where the coordinator module continuously monitors and updates reservation information in centralized storage. When a virtual machine or controller needs to access the virtual disk, it requests a lock from the coordinator, which checks the centralized reservation information and grants or denies access accordingly, ensuring data consistency while maintaining fast access through efficient feedback loops.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS11340672B2Persistent reservations for virtual disk using multiple targets
Publication Date: 2022.05.24 COMMVAULT SYSTEMS INC
  • US11340672B2 patent drawing
  • US11340672B2 patent drawing
  • US11340672B2 patent drawing

AI summary

An application within a virtual machine is an iSCSI Initiator and is allowed to use as an iSCSI Target another virtual machine within the same hypervisor in order to make a persistent reservation for a virtual disk within a remotely-located storage platform. Any number of virtual machines within different hypervisors, and perhaps on different computers, use a local controller virtual machine to make a persistent reservation for the same virtual disk. The registration list and the current reservation holder data for an iSCSI persistent reservation for a particular virtual disk are held on a storage node of the storage platform rather than within a single virtual machine of a remote computer. A metadata module on the storage platform handles the incoming requests. A coordinator module within the storage platform uses a lock mechanism to guarantee that the reserve, release, preempt and clear commands are handled properly.