The third technology component of the Ravello HVX stack is our storage overlay solution. Storage is very different from its compute and network counterparts. Like compute and network virtualization, storage virtualization has its transient and run-time behavior. However, it also has a very different aspect of persistency over time, even after an application is shut down.
Abstracts Cloud Storage and Presents Local Block Devices to Guests
Ravello’s storage overlay solution focuses on performance, persistence and security. It abstracts native cloud storage primitives such as object storage and various types of block devices into local block devices exposed directly to the guest VMs. Everything from the device type and controller type to the location on the PCI bus remains the same. Hence it appears to the guest as-if it was running in its original data-center infrastructure. This allows the guest VM to run exactly as is with its storage configuration as if it was running on premises.
Image Caching for Improved Performance
The Ravello HVX storage overlay solution acts as a global overlay on top of a distributed object store that contains the VM images. In many cases, the overlay would cache image parts locally to the cloud provider’s local block storage solution for best performance. This caching process is adaptive and uses multiple strategies in order to get the best performance: from purely on-demand copying, to various read-ahead strategies and prefetching the entire volume.
iSCSi, NFS, CIFS and SMB
Cloud storage abstraction (and presentation as a local block device), coupled with the HVX overlay networking capabilities allows for running various NAS appliances and their consumption over network based protocols such as iSCSI, NFS, CIFS and SMB. These block devices are backed by a high performance copy-on-write filesystem, which allows us to implement our multi-VM incremental snapshot feature.
Virtual CD-ROM - Install any x86 OS from an ISO
As any device type can be exposed to the guest VM, the Ravello HVX storage overlay even natively supports the attachment of CDROM drives to guest VMs with inserting and ejecting media which was uploaded to the Ravello Image Store. This enables the unique capability of installing an OS from scratch in the cloud.
Built in RAID-0 for Large Disk Sizes
In order to support high performance storage, as well as large volumes, the Ravello HVX storage overlay, together with the Ravello Management system, implements an algorithm to use various disk primitives in the different cloud providers (such as magnetic, provisioned IOPs and SSD based) and constructs an ad-hoc RAID-0 transparently to the guest.