- Apply space utilization data to manage storage resources
- Provision and manage storage resources according to Virtual Machine requirements
- Understand interactions between virtual storage provisioning and physical storage provisioning
- Apply VMware storage best practices
- Configure Datastore Alarms
- Analyze Datastore Alarms and errors to determine space availability
- Configure Datastore Clusters
Last update: 14-06-2012
Apply space utilization data to manage storage resources
Official Documentation: vSphere Monitoring and Performance, Chapter 4,”Monitoring Storage Resources”, page 149.
Summary: For me it is not 100% clear what to expect from this one. Using the vSphere Client’s “Datastores and Datastore Clusters” view seems to be the place to collect data on:
- Storage Capacity, Provisioned and Free Space;
- Which VMs are located on Datastore;
- Space Utilization and Performance;
However the most informative way is to use the Storage View tab in vCenter. This tab offers to options to display storage information:
- Reports, display relationship tables that provide insight about how an inventory object is associated with storage entities. They also offer summarized storage usage data for the object’s virtual and physical storage resources. Use the Reports view to analyze storage space utilization and availability, multipathing status, and other storage properties of the selected object and items related to it.
- Maps, Storage topology maps visually represent relationships between the selected object and its associated virtual and physical storage entities
The Storage View tab depends on the vCenter Storage Monitoring plug-in, which is enabled by default under normal conditions.
Chapter 4 goes into detail how to Display, Filter, Customize and Export Storage Reports and Maps.
N.B. Do not search for the Export button. Just right-click under an overview.
Provision and manage storage resources according to Virtual Machine requirements
Official Documentation: vSphere Virtual Machine Administration, Chapter 4 “Creating a Virtual Machine in the vSphere Client”, Section “Selecting a Virtual Disk Type”, page 38. More useful information in Chapter 8 “Configuring Virtual Machines”
Summary: When you are provisioning storage resources to a VM, you make several decisions like:
- Type of Storage Controller. Today for a virtual SCSI controller, four controller types exist: (Buslogic Parallel, LSI Logic Parallel, LSI Logic SAS and VMware paravirtual)
- Type of Disk, RDM or Virtual disk (Tick Provision Lazy Zeroed, Thick Provision Eager Zeroed or Thin Provision)
But when it comes to selecting the Datastore that will store your newly created virtual disk, you are probably making the most important decision. By choosing a Datastore, you are selecting your type of Physical Storage and making decisions concerning:
- Local Storage
- Networked Storage
- Fibre Channel (FC)
- Intermet SCSI (iSCSI)
- Network-attached Storage (NAS, aka NFS)
- Shared Serial Attached SCSI (SAS)
- RAID levels
- Number of physical Disks in the Volume
- Path Selection Policies
When placing a virtual disk on a Datastore, besides capacity, be aware of the requested disk performance in terms of R/W speed and IOPS. Listen to end-users and monitor the performance with use of the vSphere Client and/or ESXtop.
VMware Storage Profiles (Objective 1.1) can be useful managing your storage.
Understand interactions between virtual storage provisioning and physical storage provisioning
Summary: imho, this objective has a lot in common with the previous one.
Apply VMware storage best practices
Official Documentation: VMware website: http://www.vmware.com/technical-resources/virtual-storage/best-practices.html
Summary: See also Objective 1.1.
VMware states that best practices for physical storage also apply for virtual storage environments and advises to keep in mind the following rules:
- Configure and size storage resources for optimal I/O performance first, then for storage capacity.
- Aggregate application I/O requirements for the environment and size them accordingly.
- Base your storage choices on your I/O workload.
- Remember that pooling storage resources increases utilization and simplifies management, but can lead to contention.
- Ivo Beerens on http://www.ivobeerens.nl presents a collection of Storage Best practices from several vendors like HP, NetAPP, EMC, Dell and so on.
- VMware “Performance Best Practices for VMware vSphere 5.0” has some topics on storage.
Configure Datastore Alarms
Official Documentation: : vSphere Examples and Scenarios, Chapter 10,”Alarm Example: Setting an Alarm Action for Datastore Usage on a Disk”, page 89.
Summary: This chapter presents a very detailed example on:
- Accessing the Alarm settings in vCenter
- Specify how the Alarm is triggered
- Specify which actions to Perform when triggered
- How to Acknowledge triggered Alarms
- How to Reset a triggered Alarm
- Maybe, I am wrong. Part of documentation in the previous vSphere edition 4.0 is the “vSphere Basic System Administration Guide”. Chapter 21 “Working with Alarms” contained very detailed information on Configuring Alarms
Analyze Datastore Alarms and errors to determine space availability
Official Documentation: see the previous bullet and vSphere Monitoring and Performance, Chapter 4,”Monitoring Events, Alarms and Automated Actions”, page 38.
Summary: Out of the box, vSphere comes with a set of pre-configured Alarm Definitions.
Depending on the type of Storage, extra alarms will be available. For instance, after installation of a Dell Equallogic Array, new definitions will be available, specific for this type of Array.
It is also a good practice to create an Alarm to monitor Virtual Machine snapshots. Forgotten snapshots can lead to serious problems.
- More reading, KB 2001034: “Triggered datastore alarm does not get cleared”
Configure Datastore Clusters
Official Documentation: vSphere Resource Management Guide, Chapter 11,”Creating a Datastore Cluster” , page 77. Also Chapter 12 “Using Datastore Clusters to Manage Storage resources”, page 83.
Summary: Datastore Clusters and Storage DRS are new features, introduced in vSphere 5. According to VMware: “A datastore cluster is a collection of datastores with shared resources and a shared management interface.
Datastore clusters are to datastores what clusters are to hosts.
When you create a datastore cluster, you can use vSphere Storage DRS to manage storage resources.
When you add a datastore to a datastore cluster, the datastore’s resources become part of the datastore cluster’s resources. As with clusters of hosts, you use datastore clusters to aggregate storage resources, which enables you to support resource allocation policies at the datastore cluster level”
The following Resource Management capabilities are available per Datastore cluster:
- Space utilization load balancing.
In other words, when space use on a datastore exceeds a certain threshold, Storage DRS kicks in and will generate recommendations or perform Storage vMotions.
- I/O latency load balancing
Instead of space use thresholds, I/O latency thresholds can be set.
- Anti-affinity rules
Option to create anti-affinity rules for Virtual Machine Disks. For example, the
- virtual disks of a certain virtual machine must be kept on different datastores
In essential, a Storage DRS enabled Datastore Cluster is to storage, what a DRS enabled Cluster is to CPU and Memory resources.
Initial placement, VMs are automatically placed on a Datastore with Low latency and most free space. This happens when the virtual machine is being created or cloned, when a virtual machine disk is being migrated to another datastore cluster, or when you add a disk to an existing virtual machine.
Creating a Datastore Cluster
Use the wizard in the Datastores and Datastore Clusters view. The first step is providing a name for the new Datastore Cluster and to decide if you wish to enable (default) Storage DRS.
With Storage DRS, you enable these functions:
- Space load balancing among datastores within a datastore cluster.
- I/O load balancing among datastores within a datastore cluster.
- Initial placement for virtual disks based on space and I/O workload.
After enabling SDRS, two automation levels are available: Manual or Fully Automated.
Next part is setting the Runtime rules. It is advised to enable the “I/O Metric for SDRDS recommendations” option. When you disable this option, vCenter Server does not consider I/O metrics when making Storage DRS recommendations. When you disable this option, you disable the following elements of Storage DRS:
- I/O load balancing among datastores within a datastore cluster.
- Initial placement for virtual disks based on I/O workload. Initial placement is based on space only.
Storage DRS is triggered based on:
- Space usage, default threshold is > 80% utilization;
- I/O Latency, default threshold is > 15 ms latency. It uses the 90th percentile I/O latency measured over the course of a day to compare against the threshold
Under the Advanced option, you can configure additional options:
- Space utilization difference: This threshold ensures that there is some minimum difference between the space utilization of the source and the destination, default is 5%. Storage DRS will not make migration recommendations from datastore A to datastore B if the difference in free space is less than the threshold value.
- Check Imbalance very: After this interval (default 8 hours), Storage DRS runs to balance I/O load.
- I/O imbalance threshold: Has changed into a continuous slider without numbers, but with Aggressive to Conservative settings
Selecting Hosts and Clusters. Make sure that all hosts attached to the datastores in a datastore cluster must be ESXi 5.0 and later. If datastores in the datastore cluster are connected to ESX/ESXi 4.x and earlier hosts, Storage DRS does not run.
Selecting datastors, a few considerations:
- NFS and VMFS datastores cannot be combined in the same datastore cluster.
- Replicated datastores cannot be combined with non-replicated datastores in the same Storage-DRS enabled datastore cluster.
- Datastores shared across multiple datacenters cannot be included in a datastore cluster
- As a best practice, do not include datastores that have hardware acceleration enabled in the same datastore cluster as datastores that do not have hardware acceleration enabled. Datastores in a datastore cluster must be homogeneous to guarantee hardware acceleration-supported behaviour
Datastore Clusters offer a new options for managing storage. One of the coolest is Storage DRS maintenance |Mode.
Datastores can be placed in maintenance mode to take it out of use to service, just like ESXi hosts in a Cluster. There are a few prerequisites:
- Maintenance mode is available to datastores within a Storage DRS-enabled datastore cluster.
- Standalone datastores cannot be placed in maintenance mode
- No CD-ROM image files are stored on the datastore.
- There are at least two datastores in the datastore cluster
Important: Storage DRS affinity or anti-affinity rules might prevent a datastore from entering maintenance mode. You can enable the Ignore Affinity Rules for Maintenance option for a datastore cluster.
Edit the Settings for the Datastore Cluster, go to SDRS Automation, button Advanced options, and select IgnoreAffinityRulesForMaintenance and change the value from 0 to 1.
After creating a Storage DRS Clustrer using the Wizard, you can edit the settings. A few options are now available:
- SDRS Scheduling
- Virtual Machine Settings
With SDRS Scheduling you can create scheduled tasks for:
- changing Storage DRS settings for a datastore cluster so that migrations for fully automated datastore clusters are more likely to occur during off-peak hours.
- changing the automation level and aggressiveness level for a datastore cluster to run less aggressively during peak hours, when performance is a priority. During non-peak hours, Storage DRS can run in a more aggressive mode and be invoked more frequently
Creating a scheduled task results in effectively creating two tasks, usually a start and a end task. After finishing a task you can edit or remove individual tasks.
Storage DRS has a Anti-Affinity Rules.
You can create Storage DRS anti-affinity rules to control which virtual disks should not be placed on the same datastore within a datastore cluster. By default, a virtual machine’s virtual disks are kept together on the same datastore.
Anti-affinity rules are enforced during initial placement and Storage DRS-recommendation migrations, but are not enforced when a migration is initiated by a user.
Anti-affinity rules do not apply to CD-ROM ISO image files that are stored on a datastore in a datastore cluster, nor do they apply to swapfiles that are stored in user-defined locations.
There are 3 types of (Anti) Affinity rules:
- VMDK affinity rules are enabled by default for all virtual machines that are in a datastore cluster. You can override the default setting for the datastore cluster or for individual virtual machines.
- Vmdk anti-affinity, or Intra-VM Anti-Affinity rules: which virtual disks associated with a particular virtual machine must be kept on different datastores. Creating a vmdk anti-affinity rule will break the default vmdk affinity.
- VM anti-affinity, or Inter-VM Anti-Affinity rules: which VMs should not reside on the same datastore.
Under Virtual Machine Settings, you can override the datastore cluster-wide automation level for individual virtual machines. You can also override default virtual disk affinity rules.
Note: Restoring VMDK affinity will remove conflicting anti-affinity rules!
- Storage DRS Interoperability on Yellow Bricks;
- Storage DRS Interoperability whitepaper by VMware;
- Nice video from Eric Sloof on Storage DRS