Virtual Disk Storage Management via Shared File System Drivers
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current virtualized systems face challenges in scalable and cost-effective storage management, as dedicated storage allocation for each Virtual Execution Environment (VEE) leads to redundant resources and complex solutions, while existing methods like traditional file systems and image files are inefficient in handling dynamic storage needs and data sharing.
Innovation Solution
A system and method for managing Virtual Execution Environment storage by using a shared OS kernel, common storage device drivers, and file system drivers to create dynamically sized disk images with B-tree structures, allowing for efficient data storage, sharing, and fault-tolerant operations across multiple VEEs.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If dedicated storage areas are assigned to each Virtual Execution Environment, then data isolation and security are improved, but storage capacity utilization deteriorates due to redundant resources
Solution Approach 1:
Multiple Virtual Execution Environments share a common storage device through a virtual file system layer. The patent implements a virtual file system that provides isolated file views to each VEE while physically storing data on shared storage resources, eliminating redundant storage allocation while maintaining data isolation through virtualization.
Solution Approach 2:
The common storage device serves multiple VEEs simultaneously through the virtual file system layer. The storage system is designed to be universal, handling file operations for multiple isolated environments while managing resources centrally, allowing the same physical storage to fulfill multiple virtual storage requirements.
2Reliability
If drive partitions are assigned to each Virtual Execution Environment, then data isolation is improved, but device complexity increases due to multiple partition management requirements
Solution Approach 1:
A virtual file system layer is introduced as an intermediary between VEEs and the physical storage device. This intermediary layer abstracts the complexity of partition management, providing isolated file system views to each VEE while managing access to the common storage device through a unified interface, eliminating the need for multiple physical partitions.
3Reliability
If journalled file systems are used for stability, then crash recovery capability is improved, but storage space consumption increases due to journal overhead
Solution Approach 1:
The patent implements a shared journal mechanism where multiple VEEs contribute to and share a common journal structure on the shared storage device. Instead of each VEE maintaining separate journal files that duplicate metadata structures, the system consolidates journaling functionality into a shared resource that serves all VEEs, reducing overall storage overhead while maintaining crash recovery capability.
4Quantity of substance
If storage areas are shared among Virtual Execution Environments, then storage capacity utilization is improved, but access control complexity increases to prevent content corruption
Solution Approach 1:
The virtual file system layer acts as an intermediary that manages access to shared storage resources. It implements access control by providing each VEE with an isolated file view and managing file operations through the virtualization layer, which handles permissions and prevents direct access that could cause corruption while allowing efficient shared storage utilization.
Data Source
AI summary
A method, system and computer program product for storing data of a Virtual Execution Environment (VEE), such as a Virtual Private Server (VPS) or a Virtual Machine, including starting an operating system running a computing system; starting a Virtual Machine Monitor under control of the operating system, wherein the VMM virtualizes the computing system and has privileges as high as the operating system; creating isolated Virtual Machines (VMs), running on the computing system simultaneously, wherein each VM executes its own OS kernel and each VM runs under the control of the VMM; starting a storage device driver and a file system driver in the operating system; mounting a virtual disk drive; starting VM-specific file system drivers in the VM, the VM specific file system driver together with the common storage device drivers support virtual disk drives, the virtual disk drive is represented on the storage device as a disk image, the disk image data are stored on the storage device as at least one file that includes user data storage blocks and redirection blocks, the redirection blocks point to user data storage blocks, the redirection blocks have a multilevel hierarchy, and the internal structure is used by the VM-specific file system driver.


