So what’s the fuzz about this new vSphere 5 Storage DRS feature? This feature delivers the DRS benefits of resource aggregation, automated initial placement, and bottleneck avoidance to storage. You can group and manage similar datastores as a single load-balanced storage resource called a datastore cluster. Storage DRS makes VMDK placement and migration recommendations to avoid I/O and space utilization bottlenecks on the datastores in the cluster. Storage DRS takes care of the initial placement of virtual machines and VMDK files. This placement is based on Space and I/O capacity. Storage DRS will select the best datastore to place this virtual machine or virtual disk in the selected Datastore Cluster. When Storage DRS is set to fully automatic, it will do automated load balancing actions. Of course this can be configured as manual as well and that is actually the default today. Load balancing again is based on space and I/O capacity. If and when required Storage DRS will make recommendations based space and I/O capacity. It will however only do this when a specific threshold is reached. I’ve recorded a video which will show you how to:
- Configure a Datastore Cluster
- Set Storage DRS Automation Level
- Set Storage DRS Runtime Rules
- Create a Storage DRS Scheduled Task
- Using Storage DRS Rules
- Edit Virtual Machine Settings for a Datastore Cluster
- Apply Storage DRS Recommendations
- Add Storage to a Datastore Cluster
2. What Does Storage DRS Solve?
Without Storage DRS:
• Manually identify the datastore with the most disk space and lowest latency.
• Manually validate which virtual machines are placed on the datastore and
ensure there are no conflicts.
• Create Virtual Machine and hope for the best.
With Storage DRS:
• Automatic selection of the best placement for your VM.
• Advanced balancing mechanism to avoid storage performance bottlenecks
or “out of space” problems.
• VM or VMDK Affinity Rules.
3. What Does Storage DRS Provide?
Storage DRS provides the following:
1. Initial Placement of VMs and VMDKS based on available space and I/O
capacity.
2. Load balancing between datastores in a datastore cluster via Storage
vMotion based on storage space utilization.
3. Load balancing via Storage vMotion based on I/O metrics, i.e. latency.
Storage DRS has Affinity/Anti-Affinity Rules for VMs & VMDKs:
• VMDK Affinity – Keep a VM’s VMDKs together on the same datastore.
This is the default affinity rule.
• VMDK Anti-Affinity – Keep a VM’s VMDKs separate on different datastores.
• Virtual Machine Anti-Affinity – Keep VMs separate on different datastores.
Affinity rules cannot be violated during normal operations.
4. Datastore Cluster
An integral part of SDRS is to create a group of datastores called
a datastore cluster.
• Datastore Cluster without Storage DRS – Simply a group of datastores.
• Datastore Cluster with Storage DRS – Load Balancing domain similar to
a DRS Cluster.
A datastore cluster, without SDRS is just a datastore folder.
It is the functionality provided by SDRS which makes it more
than just a folder. 2TB
datastore cluster
500GB 500GB 500GB 500GB
datastores
5. Storage DRS Operations – Initial Placement (1 of 6)
Initial Placement – VM/VMDK create/clone/relocate.
• Select a datastore cluster rather than an individual datastore and let SDRS
choose the appropriate datastore.
• Storage DRS selects datastore based on space utilization and I/O load.
• By default, all the VMDKs of a VM will be placed on the same datastore within
a datastore cluster (VMDK Affinity Rule).
2TB
datastore cluster
500GB 500GB 500GB 500GB
datastores
300GB 260GB 265GB 275GB
available available available available
6. Storage DRS Operations – Load Balancing (2 of 6)
Load balancing – SDRS triggers on space usage & latency threshold.
Algorithm makes migration recommendations when I/O response time
and/or space utilization thresholds have been exceeded.
• Space utilization statistics are constantly gathered by vCenter, default
threshold 80%.
• I/O load trend is currently evaluated every 8 hours based on a past day history,
default threshold 15ms.
Storage DRS will do a cost / benefit analysis!
For I/O load balancing Storage DRS leverages Storage I/O Control
functionality.
8. Storage DRS Operations – Datastore Maintenance Mode (4 of 6)
Datastore Maintenance Mode
• Evacuates all VMs & VMDKs from selected datastore.
• Note that this action will not move VM Templates.
• Currently, SDRS only handles registered VMs.
Place VOL1 in
maintenance
mode 2TB
datastore cluster
VOL1 VOL2 VOL3 VOL4
datastores
9. Storage DRS Operations – Rules (5 of 6)
Datastore Cluster Datastore Cluster Datastore Cluster
VMDK affinity VMDK anti-affinity VM anti-affinity
Keep a Virtual Machine’s Keep a VM’s VMDKs on Keep VMs on different
VMDKs together on the different datastores datastores
same datastore
Useful for separating Similar to DRS anti-
Maximize VM availability log and data disks of affinity rules
when all disks needed in database VMs
order to run Maximize availability of
Can select all or a a set of redundant VMs
On by default for all VMs subset of a VM’s disks
10. Storage DRS Operations – Scheduling (6 of 6)
SDRS allows you to create a schedule to change its settings.
This can be useful for scenarios where you don’t want VMs to migrate
between datastore or when I/O latency might rise, giving false
negatives, e.g. during VM backups.
12. So What Does It Look Like? Load Balancing.
The Storage DRS tab will show “utilization before” and “after”.
There’s always the option to override the recommendations.