The storage components covered in this section; data centers and storage domains, are fundamental to the Red Hat Enterprise Virtualization storage architecture. It is the interactions between these components that provides users with a robust and flexible virtualization environment.
Red Hat Enterprise Virtualization supports two storage types:
File based storage
Block storage
Red Hat Enterprise Virtualization uses a centralized storage system that can be implemented with NFS or FCP. FCP includes storage accessed using iSCSI, FCoE, and SAS.
- File Based Storage
The file based storage types supported by Red Hat Enterprise Virtualization are NFS and file systems on the local storage of a Red Hat Enterprise Virtualization host. File based storage allows an entity external to the Red Hat Enterprise Virtualization environment to manage the file system. In the case of NFS storage, this could be a Red Hat Enterprise Linux NFS server, or other third party network attached storage server. Red Hat Enterprise Virtualization hosts are capable of managing their own local storage and file systems. Hosts interact with files, either local or networked, as if they were present in local storage.
- Block Based Storage
Block storage makes use of un-formatted block devices, for example un-partitioned, un-formatted hard drives. Block devices are aggregated into volume groups by the Logical Volume Manager (LVM). An instance of LVM runs on all hosts and each LVM instance is unaware of instances running on other hosts. VDSM adds clustering logic on top of LVM by scanning volume groups for changes, and updating individual hosts by refreshing volume group information. A volume group is presented to Red Hat Enterprise Virtualization hosts as logical volumes for use with virtual machines. If more storage capacity is added to an existing storage domain, the Red Hat Enterprise Virtualization Manager causes VDSM on each host to refresh volume group information.
- LUNs
A
Logical Unit Number (
LUN) is an individual block device. To connect to a LUN, one of the supported block storage protocols, iSCSI, FCoE, or SAS, can be used. Selecting iSCSI causes the Red Hat Enterprise Virtualization Manager to manage software iSCSI connections to storage to gain access to the LUNs. All other block storage connections are managed externally to the Red Hat Enterprise virtualization environment. Any changes in a block based storage environment, such as the creation of logical volumes, extension or deletion of logical volumes and the addition of a new LUN are handled by LVM on a specially selected host. Changes are then synced by VDSM which initiates LVM refreshes across all hosts in the cluster.
The Red Hat Enterprise Virtualization Manager selects one host as the Storage Pool Manager, designating it as the host responsible for writing metadata about the structure of the data storage domain. In order to get the SPM role, a host must acquire a storage-centric lease that acts as a
mutex (or mutual exclusion). The mutex ensures that only one host can become SPM. Changing volume group information from multiple hosts can lead to data corruption, so the mutex function limits write access to data domain structure metadata to a single host at any given time. Mutex is essential in selection and operations of the storage pool manager (refer to
Section 3.2, “Role: The Storage Pool Manager”.
Figure 3.1. Red Hat Enterprise Virtualization Block Storage vs. File Storage
Figure 3.1, “Red Hat Enterprise Virtualization Block Storage vs. File Storage” displays the similarities between block storage (data center A) and file based storage (data center B) in Red Hat Enterprise Virtualization. A storage area network is much like a regular network, over FCP instead of Ethernet, with a special SAN type switch instead of an IP switch. The storage used by Data Center B is referred to as Network Attached Storage (NAS). There is no logical difference in reaching either storage type. The difference between file and block storage is that a file server runs a file system and provides hosts with file level access while a block storage server provides access to un-formatted, raw storage and leaves volume management to Red Hat Enterprise Virtualization hosts and file system creation to virtual machine operation systems.
Figure 3.2. Storage Types
Figure 3.2, “Storage Types” displays the three types of storage domains and the storage types each storage domain supports, which are:
The
Data Storage Domain stores the hard disk images of all virtual machines in the Red Hat Enterprise Virtualization environment. All disks for a given virtual machine must reside on the same data storage domain. Disk images may contain an installed operating system or data stored or generated by a virtual machine. As depicted in
Figure 3.2, “Storage Types”, data storage domains support NFS, iSCSI and FCP storage. A data domain cannot be shared between multiple data centers. Additionally, it is required that the data center and data storage domain use the same protocol (for example, both must be iSCSI based).
The
Export Storage Domain provides transitory storage for hard disk images and virtual machine templates being transferred between data centers. Additionally, export storage domains store backed up copies of virtual machines. As depicted in
Figure 3.2, “Storage Types”, export storage domains support NFS storage. Multiple data centers can access a single export storage domain but only one data center can use it at a time.
The
ISO Storage Domain stores ISO files, also called images. ISO files are representations of physical CDs or DVDs. In the Red Hat Enterprise Virtualization environment the common types of ISO files are operating system installation disks, application installation disks, and guest agent installation disks. These images can be attached to virtual machines and booted in the same way that physical disks are inserted into a disk drive and booted. As depicted in
Figure 3.2, “Storage Types”, ISO storage domains only support NFS storage. ISO storage domains allow all hosts within the data center to share ISOs, eliminating the need for physical optical media.