VMware vSphere 7.x Study Guide for VMware Certified Professional – Data Center Virtualization certification. This article covers Section 1: Architectures and Technologies. Objective 1.6.5 – Describe datastore clusters.
This article is part of the VMware vSphere 7.x - VCP-DCV Study Guide. Check out this page first for an introduction, disclaimer, and updates on the guide. The page also includes a collection of articles matching each objective of the official VCP-DCV.
Describe Datastore Clusters
In Objective 1.6.5 of vSphere’s exam, we must describe datastore clusters. Here, we overview what is datastore cluster and storage DRS, usually referend as the same technology. Within Storage DRS, it is critical to identify core Storage DRS features and requirements. Also, it is important to understand DRS initial placement and ongoing balancing and aggressiveness levels.
This is another big topic, and it is a child of Objective 1.6 – Describe ESXi cluster concepts. It would be best to read it before moving to this one.
In short, VMware datastore clusters are a way to provide availability for VMFS datastores. This is done by creating a cluster of datastores, which will be placed in an HA configuration. If one of the datastores in the cluster fails, then another datastore in the cluster will take over automatically. This is a good option if you have multiple ESXi hosts that are running VMs that are dependent on these datastores.
1. What is a Datastore Cluster?
A datastore cluster is a collection of multiple datastores with shared resources, similar characteristics, and a management interface.
- Datastore clusters are to datastores what ESXi clusters are to ESXi hosts.
- Or, ESXi hosts provide standalone resources, like a single datastore provides storage capacity.
- When you put multiple ESXi hosts into a cluster, those resources get pulled and abstracted.
VMware datastore clusters are an excellent way to increase the performance of virtual machines. They are also used to replicate data for disaster recovery. The grouping of datastores clusters is generally done according to the site, availability zones, or geographical location.
When a VM moves from one datacenter to another, it will automatically shift between datastores within the same cluster to continue operating at full performance.
When creating a datastore cluster, we can use vSphere Storage DRS to manage storage resources.
Note: Datastore clusters are referred to as storage pods in the vSphere API.
2. Storage DRS
Storage DRS is available on datastore clusters.
- It provides load balancing for storage across multiple datastores.
- It is an intelligent vCenter Server feature for efficiently managing VMFS and NFS storage.
- It is similar to DRS, which optimizes the performance and resources of vSphere clusters.
- Storage DRS revolves around two key storage metrics: Space utilization and IO latency.
- Storage DRS fully supports VMFS and NFS datastores. However, it does not allow adding NFS datastores and VMFS datastores into the same datastore cluster.
2.1 Core Storage DRS features
- Resource aggregation: It enables to group multiple datastores into a single flexible pool of storage called a Datastore Cluster (aka Storage DRS POD).
- Initial placement: This feature takes care of disk placement for operations such as Create Virtual Machine, add a disk, clone, and relocate.
- Load balancing based on Space and IO: Storage DRS dynamically balances the Storage DRS cluster imbalance based on Space and IO threshold set. The default space threshold per datastore is 80%, and default IO latency threshold is 15ms.
- Datastore maintenance mode: This feature helps when an admin wants to do maintenance activities on storage. Like host maintenance mode, Storage DRS will Storage vMotion all the virtual machine files.
- Inter/Intra VM Affinity rules: As the name states, we can have affinity/anti-affinity rules between virtual machines or VMDKs.
2.2 Requirements of Storage DRS cluster
- VMware vCenter server 5.0 or later
- VMware ESXi 5.0 or later
- VMware vSphere compute/hosts cluster (recommended)
- VMware vSphere enterprise plus license
- Shared VMFS or NFS datastore volumes
- Shared datastore volumes accessible by at least one ESXi host inside the cluster. VMware recommends having full cluster connectivity.
- Datastore inside Storage DRS cluster must be visible in only one data center.
2.3 Storage DRS and other VMware features
Storage DRS fully supports the following features:
- Site Recovery Manager (SRM)
- vSphere Replication
- SPBM (Storage policy based management).
- Content Library
- Storage DRS also works with solutions like vCD, vRA, Horizon view etc.
Additionally, Storage DRS also supports Deep integration with vSphere APIs for Storage Awareness (VASA), which means that Storage DRS now understands storage array advanced features such as deduplication, auto-tiering, snapshotting, replication, and thin-provisioning.
3. Storage DRS Resource Management
When you add a datastore to a datastore cluster, the datastore's resources become part of the datastore cluster's resources. The following resource management capabilities are also available per datastore cluster.
3.1 Space utilization load balancing
You can set a threshold for space use. When space use on a datastore exceeds the threshold, Storage DRS generates recommendations or performs Storage vMotion migrations to balance space use across the datastore cluster.
3.2 I/O latency load balancing
You can set an I/O latency threshold for bottleneck avoidance. When I/O latency on a datastore exceeds the threshold, Storage DRS generates recommendations or performs Storage vMotion migrations to help alleviate high I/O load.
3.3 Anti-affinity rules
You can create anti-affinity rules for virtual machine disks. For example, the virtual disks of a specific virtual machine must be kept on different datastores. By default, all virtual disks are placed on the same datastore for a virtual machine.
Note: vSphere Storage I/O Control and vSphere Storage DRS manage latency differently.
- vSphere Storage I/O Control distributes the resources based on virtual disk share value after a latency threshold is reached.
- vSphere Storage DRS measures latency over some time. If the latency threshold of vSphere Storage DRS is met in that time frame, vSphere Storage DRS migrates virtual machines to balance latency across the datastores that are part of the cluster.
Note: Datastore clusters are referred to as storage pods in the vSphere API.
4. Storage DRS Initial Placement and Ongoing Balancing
Storage DRS provides initial placement and ongoing balancing recommendations to datastores in a Storage DRS-enabled datastore cluster.
- Initial placement occurs when Storage DRS selects a datastore within a datastore cluster to place a virtual machine disk. This happens when:
- The virtual machine is being created or cloned.
- A virtual machine disk is being migrated to another datastore cluster.
- You add a disk to an existing virtual machine.
- Initial placement recommendations are made according to space constraints and the goals of space and I/O load balancing.
- These goals aim to minimize the risk of over-provisioning one datastore, storage I/O bottlenecks, and performance impact on virtual machines.
Storage DRS is invoked at the configured frequency (by default, every eight hours) or when one or more datastores in a datastore cluster exceeds the user-configurable space utilization thresholds.
- When Storage DRS is invoked, it checks each datastore's space utilization and I/O latency values against the threshold.
- For I/O latency, Storage DRS uses the 90th percentile I/O latency measured over a day to compare against the threshold.
5. Storage DRS Aggressiveness Levels
In the vSphere Client, you can use the following thresholds to set the aggressiveness level for Storage DRS:
Storage DRS generates recommendations or performs migrations when the percentage of space utilization on the datastore is greater than the threshold you set in the vSphere Client.
Storage DRS generates recommendations or performs migrations when the 90th percentile I/O latency measured over a day for the datastore is greater than the threshold.
You can also set advanced options to configure Storage DRS's aggressiveness level further.
Space utilization difference
This threshold ensures some minimum difference between the space utilization of the source and the destination. For example, if the space used on datastore A is 82% and datastore B is 79%, the difference is 3. If the threshold is 5, Storage DRS will not make migration recommendations from datastore A to datastore B.
I/O load balancing invocation interval
After this interval, Storage DRS runs to balance I/O load.
I/O imbalance threshold
Lowering this value makes I/O load balancing less aggressive. Storage DRS computes an I/O fairness metric between 0 and 1, 1 being the fairest distribution. I/O load balancing runs only if the calculated metric is less than 1 - (I/O imbalance threshold / 100).
The topic reviewed in this article is part of the VMware vSphere 7.x Exam (2V0-21.20), which leads to the VMware Certified Professional – Data Center Virtualization 2021 certification.
Section 1 - Architectures and Technologies.
Objective 1.6.5 – Describe vSphere High Availability