ProphetStor StellarFlash® Storage€¦ · · 2017-03-16Document Changes Document changes ......
Transcript of ProphetStor StellarFlash® Storage€¦ · · 2017-03-16Document Changes Document changes ......
2 ProphetStor StellarFlash® Storage Best Practices for VMware vSphere
CONTENTS
Document Changes ......................................................................................................................... 3 Goals and Objectives ....................................................................................................................... 4 Audience ............................................................................................................................................ 4 Prophetstor StellarFlash® All-Flash-Array and Hybrid Storage Introduction ............................... 5
Unified Storage Arrays ................................................................................................................... 5
Key Features ................................................................................................................................... 5
Reference Hardware Specification ............................................................................................ 7
Unified-Storage Management and Scale-Any Architecture .................................................. 8
Quick Reference: Best Practice Settings ........................................................................................ 9 Design Considerations and Best Practices ................................................................................... 10
SAN Design and Setup ................................................................................................................ 11
VMware Native Multipathing plugin(NMP) Configuration .................................................... 11
MRU or Round-Robin configuration and connectivity ....................................................... 12 Networking ................................................................................................................................... 12
iSCSI Configuration .................................................................................................................. 12 Virtual Storage Access Considerations..................................................................................... 15
VMFS Datastore Mounted Volumes ...................................................................................... 16 VMware APIs for Array Integration(VAAI) .................................................................................... 17
Hardware Assisted Locking -- Atomic Test & Set (ATS) ........................................................... 18
Full Copy or Hardware Accelerated Copy: XCOPY (Extended Copy) ............................... 21
Block Zero or WRITE_SAME .......................................................................................................... 21
Guest OS Level configuration ........................................................................................................ 23 Parameter tuning Checklist Summary .......................................................................................... 26
ProphetStor StellarFlash® Storage Best Practices for VMware vSphere 3
Document Changes Document changes have begun to be tracked starting with the October 2016 release of
the document
Version Changes
October 20th 2016 First released version
4 ProphetStor StellarFlash® Storage Best Practices for VMware vSphere
Goals and Objectives This document is intended to provide understanding and insight into any pertinent best
practices when using VMware vSphere with ProphetStor StellarFlash® Storage. Options or
configurations that are to be left at the default are generally not mentioned and
recommendations for the default should be assumed. Changing or altering parameters
not mentioned in this guide may in fact be supported but are likely not recommended
and should be considered on a case-by-case basis.
Please note this will be updated frequently, so for the most up-to-date version please refer
to ProphetStor official website.
Audience This document is intended for use by pre-sales consulting engineers, sales engineers,
partners, and customers who want to deploy the ProphetStor StellarFlash® Storage in
VMware vSphere-based virtualized datacenters.
ProphetStor StellarFlash® Storage Best Practices for VMware vSphere 5
Prophetstor StellarFlash® All-Flash-Array and Hybrid Storage
Introduction
Unified Storage Arrays StellarFlash® Storage appliances deliver powerful and flexible storage systems offering
enterprise class data services. With built in storage optimization and integration
technologies with particular x86 hardware, StellarFlash® offers businesses a high
performance scalable storage infrastructure at unbeatable prices.
StellarFlash® Storage appliances are available in all-flash-array (AFA) configuration that
delivers unprecedented user experiences or as a hybrid combination of both SSDs and
hard disks offering a blend of capacity and performance.
With the StellarFlash®, digital business services are given a new lease of life.
Key Features
Cost Effective Performance
StellarFlash® AFA delivers the industry-leading standard for All-Flash-Arrays, serving
businesses with over 400K IOPs in a cost efficient package. Whether Virtual Desktop
Infrastructures (VDI) or Customer Relationship Management (CRM) systems, businesses
can now deliver unparalleled user experiences for its digital business services.
Smart Caching
Smart Cache, a patent pending technology that comprises the Traffic Modelling
Module (TMM) and Elastic Resource Control (ERC), automatically utilizes predictive
analysis of IO operations to dynamically design an optimized cache policy based on
workloads. With this, StellarFlash® improves its IOPs utilization by over 45% and ensures
critical business services are allocated with the required resources as necessary.
Optimized Storage Utilization
While flash is expensive, StellarFlash® AFA includes native deduplication and
compression technologies that makes efficient use of space, reducing the storage
footprint dramatically. Together with Smart Cache, savings of over 90% can be
achieved, making the StellarFlash® AFA a truly unique value proposition.
Predictive Analytics
StellarFlash® AFA is supported by a patented analytics service that addresses data loss
prevention in a unique way. StellarFlash® AFA’s predictive analytics service accesses
operational data of SSDs to accurately predict when disk failures will occur and
generates actionable prescriptions to determine the best time for replacement without
affecting the service levels.
6 ProphetStor StellarFlash® Storage Best Practices for VMware vSphere
Data Protection
As businesses come to rely on StellarFlash® AFA for its mission critical data, StellarFlash®
AFA offers unrivalled data protection technologies built in. With high availability,
snapshots and replication, StellarFlash® AFA protects your investment against
hardware, software and site level failures.
Faster Deployment
StellarFlash® AFA includes a web-based interface for centralized management of the
entire storage environment through a single pane that simplifies and speeds up the
process of deployment in data centers. In addition, StellarFlash® AFA include feature
rich REST APIs for integration, allowing for rapid provisioning of flash resources for
workloads.
ProphetStor StellarFlash® Storage Best Practices for VMware vSphere 7
StellarFlash® Storage Features
Reference Hardware Specification
8 ProphetStor StellarFlash® Storage Best Practices for VMware vSphere
Unified-Storage Management and Scale-Any Architecture
Federator SDS Orchestrator
Scale-Any Flexible Architecture
ProphetStor StellarFlash® Storage Best Practices for VMware vSphere 9
Quick Reference: Best Practice Settings This is the quick reference guide to our recommended changes. If you would like a more
in-depth explanation including where these settings reside.
ESXi Parameters Recommended Default Description
VMware Tools Install Not
installed
VMware Paravirtual driver, clock, sync,
increased disk timeouts, and graphic
support are part of the tools hence it is
crucial step.
HardwareAccelerateMove 1 1 Enables and controls use of XCOPY on
ESXi.
HardwareAcceleratedinit 1 1 Enables and controls use of Block
Same AKA WRITESAME
VMFS3.HardwareAcceleratedLocking 1 1 Enables and controls the use of Atomic
test & Set(ATS)
MaxHWTransferSize 16384 4096 Controls the maximum size a single
XCOPY SCSI command can describe,
16384KB is the maximum
TCP Delayed ACK(iSCSI) Disable Enabled
iSCSI Login Timeout 30 5
Jumbo Frames(Optional) 9000 1500
Disk.DiskMaxIOSize 4096 32768 Dictates the largest IO the ESXi kernel
will transmit. This must be lowered when
using EFI-enabled virtual machines.
Guest OS level disk timeout 60s 360s
ATS heartbeat Disable Enabled ESXi 5.5 update 2 and above
10 ProphetStor StellarFlash® Storage Best Practices for VMware vSphere
Design Considerations and Best Practices VMware vSphere enables customers to transform current IT infrastructure into a private
cloud. It provides a solid foundation with built-in availability, scalability, manageability
and business continuity for the virtualization of business critical applications. If you want to
take advantage of the build-in features such as vSphere HA, DRS, vmotion, Storage
vmotion, shared storage is a requirement. There storage planning and architectural
design become imperative for the successful deployment of a solid foundational
architecture that provides Infrastructure as a Service.
ProphetStor StellarFlash® Storage solution is built to provide a complete application-
aware data storage solution that includes primary storage. Intelligent caching, instant
application-aware backup, and replication. You can consolidate management of
primary, secondary, and off-site disaster recovery storage within a single storage solution.
A ProphetStor StellarFlash® Storage provide FC/iSCSI volumes to VMware hosts as well as
guest virtual machines. Any Volumes that you create on StellarFlash® storage are highly
optimized for virtual machines by providing the following benefits:
IOPS provisioning: Provides “Static” and “Dynamic” IOPS provisioning, increasing
storage utilization.
IOPS and Throughput throttling: Efficiently uses storage capacity.
Flexible volume block size: provides 4k, 8k, 16k, 32k, 64k, 128k block size volume
for application-aware. Recommended for 32k, 64k on VMware environment.
Thin provisioning: Efficiently stores actual written rather than reserved space.
In-line Compression: Reduces storage footprint on physical disk by 50-90%.
Snapshot backup: Instant point-in-time backup that eliminated the backup
windows.
WAN-Optimized and high- safety Replication: Dramatically reduces bandwidth
required for disaster recovery, also provide 128bit Encryption to make data
safety.
This document reviews the design considerations and best practices for implementing
VMware vSphere with Prophetstor StellarFlash® Storage. It is written for audiences that
have a basic understanding of VMware vSphere and ProphetStor StellarFlash® Storage
ProphetStor StellarFlash® Storage Best Practices for VMware vSphere 11
SAN Design and Setup
The most of IT virtual infrastructure storage deployments are based on SANs. SANs provide
storage connectivity to a virtual server or a cluster through a protocol like Fibre Channel
or iSCSI which offer a high reliability, availability and scalability. Designing a highly flexible
SAN fabric includes at minimum
Dual initiator ports per host
Dual fabric switch infrastructures
Highly-available storage platform
These components are important for business critical application deployment.
The following are some of the general guidelines while configuring a SAN switch. For
specific SAN switch setting, you should contact the switch vendor to get help or
reference vendor’s best practice.
Implement dual SAN fabric design to supply redundant and resilient inter-hardware
connectivity.
Implement a single initiator to all of StellarFlash® HA target zoning. Multiple initiators
and multiple target is a definite risk for spurious Registered State-Change Notifications
(RSCNs) waiting to overwhelm the initiators and targets, hence it should be avoided.
VMware Native Multipathing plugin (NMP) Configuration
The VMkernel Multipathing plugin that ESX/ESXi provides, by default, is the VMware Native
Multipathing Plugin (NMP). The NMP is an extensible module that manages subplugins.
There are two types of NMP subplugins: Storage Array Type Plugins (SATPs), and Path
Selection Plugins (PSPs). SATPs and PSPs can be built-in and provided by VMware, or can
be provided by a third party.
Figure 2 vSphere Pluggable Storage Architecture (PSA)
12 ProphetStor StellarFlash® Storage Best Practices for VMware vSphere
MRU or Round-Robin configuration and connectivity
The StellarFlash® is an ALUA-complaint storage. When StellarFlash® Storage
connects to an ESXi host, the array’s devices are claimed by the
“WMW_SATP_ALUA” storage array type policy (SATP). The default SATP selection is
“Most Recently Used”.
On Multi-Initiator or Multi-target
For optimal performance, this needs to be changed to Round Robin. Furthermore, an
advanced parameter within the Round Robin PSP allows an administrator to
configure how often Round Robin moves on to a different active logical path for a
given device when issuing I/O. By default, ESXi will switch to a new active path every
1,000 I/Os that it issues to that device. StellarFlash® recommends lowing this down to
the minimum value of 1. This will cause ESXi to change paths after every I/O. This
behavior will allow ESXi to better leverage the StellarFlash® access path.
On Single Initiator environment
It is no change requirement for general environment. It is important to verify proper
connectivity prior to implementing production workloads on a host or volume.
1.> Verify proper Multipathing setting in ESXi
2.> Verify the proper numbers of paths
Networking
iSCSI Configuration Make sure that the VMware vSphere ESX host has a minimum of two physical NICs. It is
recommended that you have a minimum of two physical NICs dedicated for
StellarFlash® Storage access via iSCSI protocol, for production environment we prefer
use of 10 or 40 Gb/s Ethernet Adapter. On the ESX host, you can use the following NIC
configuration as reference:
• vmnic0 and vmnic1(Management, vMotion traffic and VM traffic): 1Gb/s,
10Gb/s Ethernet Adapter.
• vmnic2 and vmnic3(VMkernel port for IP storage): 10,40 Gb/s Ethernet Adapter.
iSCSI connectivity is one of the methods for accessing StellarFlash® Storage. You can
use the following methods to achieve high availability and load distribution for storage
access.
Method 1:
One vmnic per vSwitch, and vmkernel port per vSwitch.
All vmkernel ports must be bound to software iSCSI adapter.
Method 2:
Two or more vmnics per vSwitch, dedicated one vmkernel port to one vmnic.
All vmkernel ports must be bound to the software iSCSI adapter.
ProphetStor StellarFlash® Storage Best Practices for VMware vSphere 13
Tips:
Make sure that the NIC teaming active/passive policy is overridden so that one
vmkernel port is active on only a single vmnic. Both methods enable the ESX iSCSI
Multipathing to provide high availability and load distribution for storage access. The
second method is recommended because it is easier to deploy and manage because
only physical NICs instead of multi-port NICs are used, you need to ensure iSCSI traffic
spans different physical NICs instead of multiple ports on the same physical NIC. This
avoids a single physical NIC failure to disrupt access to iSCSI storage.
Figure1: One-to-one relationship between the vmkernel ports and the vmnics in the
vSwitch
http://www.vmware.com/content/dam/digitalmarketing/vmware/en/pdf/techpaper/vmware-
multipathing-configuration-software-iscsi-port-binding-white-paper.pdf
by this configuration, it is recommended to setup dual physical switches for the
connectivity between the ESX host and the StellarFlash® Storage to prevent single
switch failure that can cause an outage to the virtual infrastructure.
Set iSCSI Login Timeout to a Larger Value
For example, to set the Login Timeout value to 30 seconds, use commands similar to the
following:
• Log in to the vSphere Web Client and select the host under Hosts and Clusters.
• Navigate to the Manage tab.
• Select the Storage option.
• Under Storage Adapters, select the iSCSI vmhba to be modified.
• Select Advanced and change the Login Timeout parameter. This can be done on
the iSCSI adapter itself or on a specific target.
The default Login Timeout value is 5 seconds and the maximum value is 60 seconds.
14 ProphetStor StellarFlash® Storage Best Practices for VMware vSphere
Disable DelayedAck
DelayedAck is an advanced iSCSI option that allows or disallows an iSCSI initiator to
delay acknowledgement of received data packets.
Disabling DelayedAck in ESXi 5.x:
• Log in to the vSphere Web Client and select the host under Hosts and Clusters.
• Navigate to the Manage tab.
• Select the Storage option.
• Under Storage Adapters, select the iSCSI vmhba to be modified.Navigate to
Advanced Options and modify the DelayedAck setting by using the option that best
matches your requirements, as follows:
Option 1: Modify the DelayedAck setting on a particular discovery address
(recommended) as follows:
• Select Targets.
• On a discovery address, select the Dynamic Discovery tab.
• Select the iSCSI server.
• Click Advanced.
• Change DelayedAck to false.
Option 2: Modify the DelayedAck setting on a specific target as follows:
• Select Targets.
• Select the Static Discovery tab.
• Select the iSCSI server and click Advanced.
• Change DelayedAck to “false”.
Option 3: Modify the DelayedAck setting globally for the iSCSI adapter as follows:
• Select the Advanced Options tab and click Advanced.
• Change DelayedAck to “false”.
DelayedAck is highly recommended to be disabled. In highly congested networks, if
packets are lost, or simply take too long to be acknowledged, due to that congestion,
performance can drop. If DelayedAck is enabled, where not every packet is
acknowledged at once (instead one acknowledgement is sent per so many packets)
far more re-transmission can occur, further exacerbating congestion. This can lead to
continually decreasing performance until congestion clears. Since DelayedAck can
contribute to this, it is recommended to disable it in order to greatly reduce the effect
of congested networks and packet retransmission.
Enabling jumbo frames can further harm this since packets that are retransmitted are
far larger. If jumbo frames are enabled, it is absolutely recommended to disable
DelayedAck.
ProphetStor StellarFlash® Storage Best Practices for VMware vSphere 15
Virtual Storage Access Considerations
There are three primary methods that you can use to connect StellarFlash® Storage to
vSphere. You can attach virtual machines directly to StellarFlash® Storage volumes by
using an iSCSI initiator or FC NPIV in the guest operation system. You can also create a
VMFS datastore on a StellarFlash® volume or create a RAW device Map (in either
physical or virtual compatibility mode) to the StellarFlash® Storage. By planning your
StellarFlash® volume-creation carefully.
Figure 2: Three types of disk connectivity methods for virtual machines.
The following reference table highlights use cases, as well as benefits and additional
considerations for usage of each connectivity method
Use Case Benefits Planning Consideration
Guest
Connected/Direct
Attached
VM OS disk (VMDK on
VMFS); with VM
application disk(s)
(NTFS/ext3) guest
connected
- Simple to manage
with one-to-one
mapping between
storage volume and
application data
volume
- Easy to interchange
between virtual and
physical
environments without
VMDK conversion.
- Ability to create
storage volume block
size to match
application data size
- SRM (Site Recovery Manager)
requires custom script
(customer defined, not created
not maintained by ProphetStor
StellarFlash® Storage) for
mounting guest-connected
storage during test failover and
actual failover
- Ensure that the correct
performance policy is selected
during volume creation
- Ensure in-guest MPIO, firewall,
disk timeout registry settings are
configured properly inside the
virtual machine (Explained on
another page)
- Ensure virtual machine guest OS
partition is aligned
VMDK on VMFS - Both VM IS disk and
application disk(s)
as VMDKs on VMFS
- Simple to configure
- Fully integrated into
VMware Site
- Microsoft Exchange backup
through VMware VSS driver
does NOT truncate log files.
16 ProphetStor StellarFlash® Storage Best Practices for VMware vSphere
- Application
consistent
quiescent through
VMware Tools VSS
driver
- Item level recovery
Recovery Manager
for virtual protection,
test failover, failover,
and failback.
Ensure there is third party
Exchange truncation backup
solution in place.
- If all VMS in a VMFS volume are
hosting applications that are
stateless in nature (i.e., Web
Server, File Server, Print Server),
VMware VSS quiesced
snapshot is NOT required for
such VMs; therefor, ensure that
the volume synchronization
setting is set to “None”
- Running multiple VMDS on a
VMFS volume requires
additional time for VMware VSS
quiesced snapshots to be
taken for all VMDKSs on the
given datastore.
- Item level recovery involves
additional steps to clone VMFS
volume snapshot and
attaching VMDK to staging
virtual machine to export files to
destination VM needing restore
RDM (Physical
Compatibility
Mode)
- VMDK for IS and
application binary,
RDM in physical
Compatibility mode
for application
data disk.
None - There is no performance
benefit in using RDM in
comparison to VMDK or guest
connected iSCSI/FC storage
- vSphere has 256 target
maximum, consider trade-off
on running more VMs per VMFS
volume with one RDM target
per VM.
VMFS Datastore Mounted Volumes
Mounting a StellarFlash® Storage volume as a VMFS datastore provides the simplest
configuration when you use StellarFlash® Storage with vSphere. At minimum, VMFS
datastore are used to hold the virtual machine configuration and Operation System
volume. Using VMFS Datastores reduces management burden by not requiring the
installation of additional tools and the maintenance on each guest to properly
quiesce applications or database. In addition, VMFS Datastores permit keeping the
entire virtual machine together on the same protected volume. Using VMFS datastores
is a convenient method of mounting storage to VMware.
ProphetStor StellarFlash® Storage Best Practices for VMware vSphere 17
VMware APIs for Array Integration (VAAI)
In a virtualized environment, storage operations traditionally have been expensive from a
resource perspective. Functions such as cloning and snapshots can be performed more
efficiently by the storage device than by the host.
VMware vSphere Storage APIs “Array Integration (VAAI), also referred to as hardware
acceleration or hardware offload APIs, are a set of APIs to enable communication
between VMware vSphere ESXi hosts and storage devices. The APIs define a set of storage
primitives. that enable the ESXi host to offload certain storage operations to the array,
which reduces resource overhead on the ESXi hosts and can significantly improve
performance for storage-intensive operations such as storage cloning, zeroing, and so on.
The goal of VAAI is to help storage vendors provide hardware assistance to speed up
VMware I/O operations that are more efficiently accomplished in the storage hardware.
Without the use of VAAI, cloning or migration of virtual machines by the vSphere VMkernel
Data Mover involves software data movement. The Data Mover issues I/O to read and
write blocks to and from the source and destination datastores. With VAAI, the Data
Mover can use the API primitives to offload operations to the array if possible. For example,
if the desired operation were to copy a virtual machine disk (VMDK) le from one datastore
to another inside the same array, the array would be directed to make the copy
completely inside the array. Whenever a data movement operation is invoked and the
corresponding hardware offload operation is enabled, the Data Mover will first attempt
to use the hardware offload. If the hardware offload operation fails, the Data Mover
reverts to the traditional software method of data movement.
The VMWare APIs for Array Integration VAAI) is a feature set introduced vSphere 4.1. These
features enable and ESXi host to offload specific virtual machine and storage
management operations to compliant storage hardware. With the storage hardware
assistance, an ESXi host can perform these operations faster and more efficiently while
consuming far less CPU, memory, and storage fabric bandwidth. StellarFlash® supports
VAAI in ESXi5.0 and later.
The following five vStorage APIs are available for block storage vendors to implement and
support:
• Hardware Assisted Locking—commonly referred to as Atomic Test & Set (ATS) uses
the SCSI command COMPARE and WRITE (0x89), which is used during the creation,
alteration and deletion of files and metadata on a VMFS volume.
• Full Copy—leverages the SCSI command XCOPY (0x83), which is used to copy or
move virtual disks.
• Block Zero—leverages the SCSI command WRITE SAME (0x93) which is used to zero-
out virtual disk regions during virtual disk block allocation operations.
• Dead Space Reclamation—leverages the SCSI command UNMAP (0x42) to reclaim
previously used but now deleted space on a block SCSI device.
18 ProphetStor StellarFlash® Storage Best Practices for VMware vSphere
• (*) Thin Provisioning Stun and Resume—allows for the underlying storage to inform
ESXi that capacity has been entirely consumed, which then causes ESXi to
immediately “pause” virtual machines until additional capacity can be
provisioned. Note: (*) StellarFlash® will support in future release version.
Hardware Assisted Locking -- Atomic Test & Set (ATS)
In VMware vSphere VMFS, many operations must establish a lock on the volume when
updating a resource. Because VMFS is a clustered le system, many ESXi hosts can
share the volume. When one host must make an update to the VMFS metadata, a
locking mechanism is required to maintain le system integrity and prevent another
host from coming in and updating the same metadata. The following operations
require this lock:
1. Acquire on-disk locks
2. Upgrade an optimistic lock to an exclusive/physical lock
3. Unlock a read-only/multiwriter lock
4. Acquire a heartbeat
5. Clear a heartbeat
6. Replay a heartbeat
7. Reclaim a heartbeat
8. Acquire on-disk lock with dead owner
It is not essential to understand all of these operations in the context of this whitepaper.
It is sufficient to understand that various VMFS metadata operations require a lock.
ATS is an enhanced locking mechanism designed to replace the use of SCSI
reservations on VMFS volumes when doing metadata updates. A SCSI reservation
locks a whole LUN and prevents other hosts from doing metadata updates of a VMFS
volume when one host sharing the volume has a lock. This can lead to various
contention issues when many virtual machines are using the same datastore. It is a
limiting factor for scaling to very large VMFS volumes. ATS is a lock mechanism that
must modify only a disk sector on the VMFS volume. When successful, it enables an
ESXi host to perform a metadata update on the volume. This includes allocating
space to a VMDK during provisioning, because certain characteristics must be
updated in the metadata to reflect the new size of the le. The introduction of ATS
addresses the contention issues with SCSI reservations and enables VMFS volumes to
scale too much larger sizes.
In vSphere 4.0, VMFS3 used SCSI reservations for establishing the lock, because there
was no VAAI support in that release. In vSphere 4.1, on a VAAI-enabled array, VMFS3
used ATS for only operations 1 and 2 listed previously, and only when there was no
contention for disk lock acquisitions. VMFS3 reverted to using SCSI reservations if there
was a multihost collision when acquiring an on-disk lock using ATS.
ProphetStor StellarFlash® Storage Best Practices for VMware vSphere 19
In the initial VAAI release, the ATS primitives had to be implemented differently on
each storage array, requiring a different ATS opcode depending on the vendor. ATS
is now a standard T10 SCSI command and uses opcode 0x89 (COMPARE AND WRITE).
For VMFS5 datastores formatted on a VAAI-enabled array, all the critical section
functionality from operations 1 to 8 is done using ATS. There no longer should be any
SCSI reservations on VAAI-enabled VMFS5. ATS continues to be used even if there is
contention. On non-VAAI arrays, SCSI reservations continue to be used for establishing
critical sections in VMFS5.
Figure 3: Diagram representing old method before VAAI on the left and hardware-
assisted locking method available with VAAI on the right
ATS Only Flag
An ATS only flag appears on newly created VMFS5 datastores. When the host detects
that the array supports ATS on the device, the ATS only flag is written to the datastore.
From that point on, ATS always will be used on that datastore, so it can be used for all
metadata operations.
The flag is not enabled, however, on VMFS5 volumes that were upgraded from
VMFS3, facilitating seamless upgrades from VMFS3 to VMFS5. This is because VMFS3
was not ATS complete, and during the upgrade process, some hosts might continue
to use SCSI reservations for certain metadata operations.
20 ProphetStor StellarFlash® Storage Best Practices for VMware vSphere
The standard use cases benefiting the most from ATS include:
• High virtual machine to VMFS density
• Extremely dynamic environments—numerous provisioning and de-provisioning of
VMs (e.g. VDI using non-persistent linked-clones).
• High intensity virtual machine operations such as boot storms, or virtual disk growth
ATS heartbeat
A new VMFS heartbeat update method was supported since ESXi 5.5 Update 2.
Whereas previous version ESXi kernel handles heartbeat validation by using SCSI
Read/Write commands, the new heartbeat update method offloads the validation
to VAAI-enabled storage system by leveraging VAAI ATS commands.
The new heartbeat update method reduces the processing load of ESXi kernel, but
may fail heartbeat with ATS miscompare errors in certain circumstances.
To ensure ESXi cooperates with StellarFlash® Storage without this issue, the solution is
to disable ATS heartbeat. ESXi then reverts to legacy SCSI Read/Write heartbeat if ATS
heartbeat is disabled.
To disable ATS heartbeat, run the CLI command:
#esxcli system settings advanced set -i 0 -o /VMFS3/UseATSForHBOnVMFS5
To enable ATS heartbeat:
#esxcli system settings advanced set -i 1 -o /VMFS3/UseATSForHBOnVMFS5
To confirm ATS heartbeat is disabled properly, run the CLI command:
# esxcli system settings advanced list -o /VMFS3/UseATSForHBonVMFS3
You should see “Int Value:” in the output is ‘0’:
Path: /VMFS3/UseATSForHBOnVMFS3
Type: integer
Int Value: 0
Default Int Value: 0
Min Value: 0
Max Value: 1
String Value:
Default String Value:
Valid Characters:
Description: Use ATS for HB on ATS supported VMFS3 volumes
ProphetStor StellarFlash® Storage Best Practices for VMware vSphere 21
Full Copy or Hardware Accelerated Copy: XCOPY (Extended Copy)
Without VAAI, a clone or migrate operation must use the VMkernel software Data Mover
driver. If the files being cloned are multiple GB in size, the operation might last for many
minutes to many hours. This full copy consumes host resources such as CPU cycles, DMA
buffers and SCSI commands in the HBA queue.
This primitive requests that the array perform a full copy of blocks on behalf of the Data
Mover. It primarily is used in clone and migration operations (such as a VMware vSphere
Storage vMotion® instance). ESXi hosts can be configured to enable the EXTENDED
COPY SCSI command. The SCSI opcode for XCOPY is 0x83.
XCOPY benefits are leveraged during the following operations3:
• Virtual machine cloning
• Storage vMotion
• Deploying virtual machines from template
Block Zero or WRITE_SAME
ESXi supports three disk formats for provisioning virtual disks:
1. Eagerzeroedthick—the entirety of the virtual disk is completely reserved and pre-
zeroed on the VMFS upon creation. This virtual disk allocation mechanism offers
the most predictable performance and the highest level of protection against
capacity exhaustion.
2. Zeroedthick—this format reserves the space on the VMFS volume upon creation
but does not pre- zero the allocated blocks until the guest OS writes to them. New
writes cause iterations of on- demand zeroing in segments of the block size of the
target VMFS (almost invariably 1 MB with VMFS 5). There is a slight performance
impact on writes to new blocks due to the on-demand zeroing.
3. Thin—this format neither reserves space on the VMFS volume nor pre-zeroes blocks.
Space is allocated and zeroed on-demand in segments in accordance to the
VMFS block size. Thin virtual disks allow for the highest virtual machine density but
provide the lowest protection against possible capacity exhaustion. There is a
slight performance impact on writes to new blocks due to the on-demand zeroing
behavior.
Prior to WRITE SAME support, the performance differences between these virtual disk
allocation mechanisms were distinct. This was because before an unallocated block
could be written to, zeroes would have to be written first causing an allocate-on-first-
write penalty (increased latency). Therefore, for every new block written to there were
actually two writes; the zeroes then the actual data. For thin and zeroedthick virtual
disks, this zeroing was on-demand so the penalty was seen by applications. For
eagerzeroedthick, it was noticed during deployment because the entire virtual disk had
22 ProphetStor StellarFlash® Storage Best Practices for VMware vSphere
to be zeroed prior to use. This zeroing caused unnecessary I/O on the SAN fabric,
subtracting available bandwidth from “real” I/O.
To resolve this issue, VMware introduced WRITE SAME support. WRITE SAME is a SCSI
command that tells a target device (or array) to write a pattern (in this case, zeros) to
a target location. ESXi utilizes this command to avoid having to actually send a payload
of zeros but instead simply communicates to any array that it needs to write zeros to a
certain location on a certain device. This not only reduces traffic on the SAN fabric, but
also speeds up the overall process since the zeros do not have to traverse the data
path.
Verifying that VAAI is Enabled
In ESXi 5.x hosts, to determine whether or not VAAI is enabled, use the service console
in ESXi or the vCLI in ESXi, and run these command to check if the Int Value is set to 1
(enabled):
#esxcli system settings advanced list -o /DataMover/HardwareAcceleratedMove
#esxcli system settings advanced list -o /DataMover/HardwareAcceleratedInit
#esxcli system settings advanced list -o /VMFS3/HardwareAcceleratedLocking
You will see an output similar to:
Path: /VMFS3/HardwareAcceleratedLocking
Type: integer
Int Value: 1 <-- Value is 1 if enabled Default Int Value: 1
ProphetStor StellarFlash® Storage Best Practices for VMware vSphere 23
Guest OS Level configuration
Overview
One of the important considerations for deploying StellarFlash® storage to interoperate
effectively with the VMware ESX/ESXi guest operating systems in a SAN environment is to
utilize the StellarFlash® recommended guest OS tunings in the virtual machines. This article
describes the guest OS tunings utilized and the settings recommended by StellarFlash® to
help improve interoperability. The article also describes the purpose of updating guest OS
tunings from the previous settings and provides guidance on adopting the updated guest
OS tunings.
Why are guest OS tunings required?
The following are some reasons why guest OS tunings are required:
• To help improve error handling and interoperability during storage controller
failover events.
• To improve recovery times following a storage controller failover event.
What are the guest OS tunings utilized?
In a typical VMware virtual machine deployment, the guests utilize the local SCSI disks
served by the VMware vSphere hypervisor with the backing storage, either using VMware
virtual disk (VMDK) or raw device map (RDM) formats. The guest OS tunings
recommended are for the SCSI disks inside the virtual machines. In particular, the following
is a list of the tunings for the different guest operating systems:
1. Windows: disk timeout
2. Linux: disk timeout
3. Solaris: disk timeout and additional I/O tunings concerning busy/not-ready/reset
retries and I/O throttle settings
What are the settings recommended?
Historically, the VMWare vSphereStorage tools ESX Host Utilities 5.2.1 and VSC 4.0 set the
disk timeout for the Windows, Linux, and Solaris guests to 180 seconds. In addition, they
also adjust the I/O tuning settings for the Solaris guest.
With the introduction of more advanced StellarFlash® storage controller and clustered
technologies, and to align with newer versions of VMware vSphere best practices and to
correct the vendor ID (VID) and product ID (PID) information on Solaris I/O tuning
specifications, StellarFlash® Storage recommends update the guest OS tunings. The
following table summarizes the historical guest OS tunings and the recommended
updated guest OS tunings.
Guest OS Type Historical Guest OS Tuning for SAN Updated Guest OS Tuning for SAN
Windows disk timeout = 360 disk timeout = 60
Linux disk timeout = 360 disk timeout = 60
24 ProphetStor StellarFlash® Storage Best Practices for VMware vSphere
What are the StellarFlash® Storage guidelines for deployment?
Use the following guidelines to determine if you should update the guest OS tunings:
1. This KB addresses the guest OS tuning updates for a VMware SAN deployment.
2. There is no need to update the Windows and Linux guest OS tunings in existing
solutions that are working well with the historical guest OS tuning settings.
3. For the Solaris guest OS, adopt the corrected VID/PID information provided below
to help improve error handling and interoperability during storage controller
failover events.
4. When upgrading the ESX/ESXi hosts or StellarFlash® Storage controller software to
a recent release, utilize the opportunity to also deploy the updated guest OS
tunings.
5. If you are utilizing software iSCSI initiator from the guest OS, please follow respective
StellarFlash® documentations on the native OS interoperability requirements for
supported configurations, multipathing configurations, and any additional
required tunings in Host Utilities.
How to implement the updated guest OS tunings
You can manually configure the virtual machines with the recommended guest
OS tunings or utilize the scripts bundled within VSC to implement the tunings. Reboot the
guest after the tuning update for the settings to take effect.
Manual Configuration
WARNING: Using Registry Editor incorrectly might cause serious problems that require
reinstalling your operating system. Make a backup copy of the registry before making
any changes to the Windows registry.
• Windows: Set Windows disk timeout to 60 seconds by using the TimeOutValue
registry key located
below:HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Disk\TimeOutValue
• Linux: Set Linux disk timeout to 60 seconds can be achieved by creating an udev
rule with the following entry.
DRIVERS=="sd", SYSFS =="0|7|14", RUN+="/bin/sh -c 'echo 60 > /sys$$DEVPATH/device/timeout'"
Solaris
disk timeout = 360
busy retry = 300
not ready retry = 300
reset retry = 30
max. throttle = 32
min. throttle = 8
disk timeout = 60
busy retry = 300
not ready retry = 300
reset retry = 30
max. throttle = 32
min. throttle = 8
corrected VID/PID specification
ProphetStor StellarFlash® Storage Best Practices for VMware vSphere 25
◦ In addition, the VMware Tools in the Linux guest OS provide an udev rule to
set the disk timeout to 180 seconds automatically for VMware virtual disks.
You can 'grep' for the 'VMware' vendor ID in the udev rules directory to find
out which script was installed by VMware and modify it accordingly.
◦ Verify again after a VMware Tools update to ensure the disk timeouts is at
the desired value.
• RHEL 7.x:
26 ProphetStor StellarFlash® Storage Best Practices for VMware vSphere
Parameter tuning Checklist Summary
Acknowledged
/Done?
Description
Set the DataMover.MaxHWTransferSize to 16 MB.
#esxcfg-advcfg –g /DataMover/MaxHWTransferSize 4096 is default
#esxcfg-advcfg -s 16384 /DataMover/MaxHWTransferSize
For iSCSI, disable DelayedAck and set the Login Timeout to 30 seconds.
Jumbo Frames are optional.
In vSphere 6.x, change EnableBlockDelete to enabled.
Run UNMAP frequently. When running UNMAP in ESXi 5.5 and later, use a
block count that is equal to or less than 1% of the free capacity (in MB) on
the target VMFS.
For ESXi hosts running EFI-enabled VMs set the ESXi parameter
Disk.DiskMaxIOSize to 4 MB.
DataMover.HardwareAcceleratedMove,
DataMover.HardwareAcceleratedInit, and
VMFS3.HardwareAcceleratedLocking should all be enabled.
Ensure all ESXi hosts are connected to both StellarFlash® Storage
controllers. Ideally at least two paths to each. Aim for total redundancy.
Install VMware tools whenever possible.
When mounting snapshots, use the ESXi resignature option and avoid force-
mounting.
Configure Initiator Groups on the StellarFlash® Storage identically to clusters
in vSphere. For example, if a cluster has four hosts in it, create a
corresponding Initiator Group on the relevant StellarFlash® Storage with
exactly those four hosts—no more, no less.
Use Paravirtual SCSI adapters for virtual machines whenever possible.
VMware KB
Make sure 64 block size volume creation on StellarFlash® Storage
ATS-only should be configured on all StellarFlash® Storage volumes. This is a
default configuration and no changes should normally be required