VCAP-DCV Deploy Objective 2.2 – part 1

Home / Storage / VCAP-DCV Deploy Objective 2.2 – part 1

We finally finished the first objective in the Deploy and Manage a vSphere 6.x Storage Infrastructure and now we going to discuss the second objective which is Manage Complex Storage Solutions

Here are the objective from the blueprint that we going to cover in this post:

  • Identify and tag (mark) SSD and local devices
  • Administer hardware acceleration for VAAI

Lab Setup:

Using VMware workstation:

  • Microsoft Servers 2012R2 for Services (DNS , DHCP, etc…)
  • installed esx0
  • Installed VCSA
  • iSCSI Storage

 Documents used:

  • vSphere6 Storage Guide
  • VMware KB 2013188

Identify and tag (mark) SSD and local devices:

This task can be perform via the GUI or CLI

To mark HDD as SSD in the GUI : click on the host choose an HDD (i used a second local drive) and click on the F icon , click yes and refresh the screen.

ssd

To mark SSD via the CLI:

In this example i will use my Microsoft iSCSI lun to tag as SSD. (Make sure the datastore is not mounted)

Run the following commands:

  • esxcli storage nmp device list and locate the storage and mark the naa. number and the SATP
  • esxcli storage nmp satp rule add -s VMW_SATP_DEFAULT_AA –device naa.60003ff44dc75adcbbcbfb83b299a7ab –option=”enable_ssd”
  • esxcli storage core claiming reclaim –device naa.60003ff44dc75adcbbcbfb83b299a7ab
  • esxcli storage core claimrule load
  • esxcli storage core claimrule run
  • esxcli storage core claiming reclaim -d naa.60003ff44dc75adcbbcbfb83b299a7ab
  • esxcli storage core device list -d naa.60003ff44dc75adcbbcbfb83b299a7ab  and look of is SSD :True

ssd_cli1

ssd_cli2

Results in the GUI:

ssd_cli3

 

Administer hardware acceleration for VAAI:

Also referred to as hardware acceleration or hardware offload APIs, are a set of APIs to enable communication between 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.

VAAI Block Primitives:

The following operations required on VMFS metadata locking(ATS):

  • Acquire on-disk locks
  • Upgrade an optimistic lock to an exclusive/physical lock.
  • Unlock a read-only/multiwriter lock
  • Acquire a heartbeat
  • Clear a heartbeat
  • Replay a heartbeat
  • Reclaim a heartbeat
  • Acquire on-disk lock with dead owner

XCOPY (Extended Copy) and  Write Same (Zero).

VAAI NAS Primitives:

  • Full File Clone
  • Fast File Clone/Native Snapshot Support
  • Extended Statistics
  • Reserve Space

Enable/Disable vStorage API for Array Integration (VAAI):

VAAI is enabled by default you can only turn it OFF.

Before we turn it off i will like show where we will see if our storage device support VAAI (shown as Hardware Acceleration), as you can see my NetGear ReadyNAS support hardware acceleration.

vaai1

GUI:

Click on the ESXi host >>Manage>> Settings>>Advanced System Settings.Change the following values to 0 (disabled):

  • VMFS3.HardwareAcceleratedLocking
  • DataMover.HardwareAcceleratedMove
  • DataMover.HardwareAcceleratedInit

vaai4

CLI:

To turn OFF VAAI we need to change some value to 0 in the CLI , you will also need to do it to all primitives (ATS(locking)XCOPY and WRITE_SAME)

First lets list the device and then change the value:

  • # esxcli system settings advanced list –option /VMFS3/HardwareAcceleratedLocking
  • # esxcli system settings advanced set –int-value 0 –option /VMFS3/HardwareAcceleratedLocking

and then listed again to verify:

  • # esxcli system settings advanced list –option /VMFS3/HardwareAcceleratedLocking

you will need to continue and do the same for XCOPY and WRITE_SAME here are the commands :

XCOPY:

  • #esxcli system settings advanced set –int-value 0 –option /DataMover/HardwareAcceleratedMove
  • (verify)#esxcli system settings advanced list –option /DataMover/HardwareAcceleratedMove

WRITE_SAME:

  • #esxcli system settings advanced set –int-value 0 –option /DataMover/HardwareAcceleratedInit
  • (verify)#esxcli system settings advanced list –option  /DataMover/HardwareAcceleratedInit

vaai2

To change it back just set the integer value back to one

vaai3

To integrate with the block storage arrays and to benefit from the array hardware operations, vSphere uses VAAI.
In the vSphere 5.x and later releases, VAAI implemented as the T10 SCSI based commands. As
a result, with the devices that support the T10 SCSI standard, your ESXi host can communicate directly and
does not require the VAAI plug-ins.
for Storage devices that do not support T10 SCSI you will need to install VAAI plugin on your host which the vendor will provide

To manage the VAAI capable device, your host attaches the VAAI filter and vendor-specific VAAI plug-in to the device. To list the hardware acceleration filter and plug-in claim rules.

Run the following commands:

  • esxcli storage core claimrule list –claimrule-class=VAAI
  • esxcli storage core claimrule list –claimrule-class=Filter

vaai6

To configure VAAI for a new storage who DO NOT SUPPORT T10 SCSI commands, you need to add two claim rules, one for the VAAI filter and another for the VAAI plug-in. For the new claim rules to be active, you first define the rules and then load them into your system.

The process :

  • esxcli –server=server_name storage core claimrule add –claimrule-class=Filter — plugin=vendor filter –type=vendor –vendor=vendor name –autoassign
  • esxcli –server=server_name storage core claimrule add –claimrule-class=VAAI –plugin=vendor plugin  –type=vendor –vendor=vendor name–autoassign
  • esxcli –server=server_name storage core claimrule load –claimrule-class=Filter
  • esxcli –server=server_name storage core claimrule load –claimrule-class=VAAI
  • esxcli –server=server_name storage core claimrule run –claimrule-class=Filter

In the below example i used my name as a vendor and also i used the VMW_VAIIP_CX as a plugin and the VAAI_FILTER as a filter.

vaai7

To check the VAAI capability of your storage run the following commands:

  • esxcli storage core device list (to get the naa.xx number)
  • esxcli storage core device vaai status get –device naa.6001405e7e01c8b21dd481c937460e94

vaai5

Thanks for reading

Mordi.

 

2 Comments

  • Dennis

    Hello Mordi,

    the commands are not 100% correct.
    For example this one is not working:
    esxcli system settings advanced list –option /VMFS3/HardwareAcceleratedLocking

    It should be:
    esxcli system settings advanced list –option /VMFS3/HardwareAcceleratedLocking

    The difference is –.

Leave a Reply

Your email address will not be published. Required fields are marked *