0% found this document useful (0 votes)
54 views88 pages

Scsi Storage

The VMware Storage Certification Guide (SCSI Block) provides comprehensive instructions for installing and configuring a storage certification testbed for VMware ESXi 8.0. It covers certification requirements, installation procedures, and specific tests for various storage types including iSCSI, Fibre Channel, and NAS. The guide is intended for VMware partners seeking to certify storage devices for compatibility with VMware's hardware compatibility list (HCL).

Uploaded by

ashuraj.btech
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
54 views88 pages

Scsi Storage

The VMware Storage Certification Guide (SCSI Block) provides comprehensive instructions for installing and configuring a storage certification testbed for VMware ESXi 8.0. It covers certification requirements, installation procedures, and specific tests for various storage types including iSCSI, Fibre Channel, and NAS. The guide is intended for VMware partners seeking to certify storage devices for compatibility with VMware's hardware compatibility list (HCL).

Uploaded by

ashuraj.btech
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 88

VMware Storage

Certification Guide (SCSI


Block)
VMware ESXi 8.0
VMware Storage Certification Guide (SCSI Block)

You can find the most up-to-date technical documentation on the VMware website at:

https://docs.vmware.com/

VMware, Inc.
3401 Hillview Ave.
Palo Alto, CA 94304
www.vmware.com

©
Copyright 2019 VMware, Inc. All rights reserved. Copyright and trademark information.

VMware, Inc. 2
Contents

1 About Storage Certification Guide (SCSI Block) 6

2 Certification Requirements 9
Required Software 10
Required Hardware 10
License Requirement 11
Installation and Configuration Overview 11
Installing ESXi 12
Configuring ESXi Hosts 13
Installing vCenter Server 14
Configuring the vCenter Server 14
Installing STAF and HWE vibs on the ESXi Hosts 14
Allocating LUNs 16
Setup requirements for Configuration and Verification, Data Intergity, Failover, iSCSI, Functional
and Permanent Device Loss Tests 17
Special Tests 17
Configuring Datastores 18
Guest Operating Systems for Storage Certifications 18
Installing and Configuring Virtual Machines 18
Naming Convetion for Virtual Machines 19
Minimum Requirements for Virtual Machines 19
Installing Tools on Virtual Machines 20
Setup Requirements for VAAI - ATS, BlockZero, and FullCopy Tests 21
Setup Requirements for Thin Provisioning Tests 22
Setup Requirements for Thin Provisioning Space Reclamation and TPUNMAP Tests 23
Setup Requirements for Extended Xcopy 23
Testbed Topology (VMFS5 TP UNMAP) 23
Testbed Topology (VMFS6 Automatic Unmap) 23
Additional Settings for Virtual Machine 24
Certification Types 25
Full Certification 25
Recertification 26
Storage Virtual Appliance (SVA) Certification 26
Minor Storage Firmware Revision (mSFR) Certification 26
Storage Certification Questionnaire 27
User Parameters 29

3 Running the Tests 36

VMware, Inc. 3
VMware Storage Certification Guide (SCSI Block)

Online Mode 36
Offline Mode 36

4 Storage Test Descriptions 38


SCSI-3 Write Exclusive-Registrants Only (WE-RO) Persistent Reservation Tests 54
Configuring Shared Pass-through RDM's 55
Adding the RDM to a Virtual Machine on ESXi B 55
GOS SCSI-3 Persistent Reservation Tests 56
SCSI-3 Write Exclusive-All Registrants Persistent (WE-AR) Reservation Tests 58
Creating a Datastore on Misaligned Partitions 60

5 iSCSI Storage Certification 62


Hardware iSCSI Testbed Topology 62
Tests 63
Software iSCSI Testbed Topology 64
Binding iSCSI Ports to iSCSI Adapters on Both ESXi Hosts 65
Tests 66
Software and Hardware iSCSI Testbed Topology 67
Binding iSCSI Ports to iSCSI Adapters on ESXi Host A 68
Tests 69
iSCSI Over RDMA 69
iSCSI Over RDMA Topology 70
iSCSI over RDMA Testbed Requirements 70
iSCSI Over RDMA Setup 70
LUN Requirement from Storage 71
Test Configuration 71
Tests 72
Test Parameters 73

6 Fibre Channel Storage Certifications 74


FC SAN Testbed Topology 74
FC DAS Testbed Topology 75

7 SVD/Gateway Storage Certifications 77


SVD/Gateway Testbed Topology 78
Software and Hardware iSCSI SVD Topology 78
NAS SVD Topology 79
SVD/Gateway Tests 80

8 Certification Results Submission 81

VMware, Inc. 4
VMware Storage Certification Guide (SCSI Block)

9 Appendix 82

VMware, Inc. 5
About Storage Certification Guide
(SCSI Block) 1
The VMware Storage Certification Guide ( SCSI Block) explains how to install and configure a
Storage Certification testbed.

The Storage Certification supports ESXi version 8.0, and includes the certification tests for the
Block storage program (iSCSI, FC, FCoE, NAS-SVD and SAS).

NAS storage certifications are covered in the NAS certification document. Contact your VMware
representative for more information.

New Feature In vSphere 8.0 U1 For Block SCSI Storage


Extended Xcopy (EXcopy): VAAI Xcopy functionality is supported within the same array today.
New feature Extended Xcopy (EXcopy) added in 8.0 U1 enables offloading storage migration or
clone operation between two datastores configured from two arrays. Destination array should
have EXcopy support and it gets certified by running the new certification tests added in 8.0 U1
storage hardware cert update.

Clustered VMDK: Clustered VMDK support for WSFC type failover clusters to use shared VMDK
as quorum drive is added in vSphere 8.0 for FC Storage arrays. Storage array must support
Write Exclusive-All Registrants (WE-AR) type SCSI3 Persistent Reservation which is a mandatory
pre-requisite for this feature. Certification tests verify this pre-requisite.

Note
n Clustered VMDK feaure is supported only for FC arrays in this release.

n If your array firmware/OS is already certified and wants to add Clustered VMDK support in 8.0
VCG, select Partial Certification drop-down menu on Session Configuration page in the VIVa
UI and click Support for WE-AR Type Reservation check-box under partial certification. It lists
only subset of tests specific to Clustered VMDK feature support requirement.

Intended Audience
This guide is intended for VMware partners who want to certify a storage device with ESXi to claim
compatibility in the VMware HCL.

Users must be familiar with:

n Basic networking concepts

VMware, Inc. 6
VMware Storage Certification Guide (SCSI Block)

n Storage device(s) to be certified

n Installing and administering ESXi

n Installing and administering VMware vSphere Web Client

n Installing and operating VMware Server, VMware Workstation, or VMware Player used to run
the certification

How This Guide Is Organized


This guide contains the following information:

n Certification Requirements - An overview of the certification requirements and detailed


instructions to set up the testbed.

n Storage Test Descriptions - List of tests for iSCSI, NAS-SVD, FC, FCoE and SAS.

n iSCSI Storage Certification - Testbed topology and list of tests to run for iSCSI.

n Fibre Channel Storage Certifications - Testbed topologies for FC SAN and DAS certifications.

n SVD/Gateway Storage Certifications - Testbed topologies for SVD/Gateway, NAS SVD and
list of tests to run SVD/Gateway certifications..

VMware Documentation
For information about configuring and running certification tests, and submitting results using the
VIVa user interface, refer to the VMware Integration Validation User Guide available on the VIVa
platform > Help > User Guide.

Note You must be familiar with the VMware Integration Validation User Guide before you start
your certification.

To access VMware documentation, go to http://www.vmware.com/support/pubs. The following


references are useful:

n ESXi Installation and Upgrade Guide


n Basic System Administration
n Server Configuration Guide
n iSCSI SAN Configuration Guide

Document Feedback
VMware welcomes your suggestions to improve our documentation. If you have comments, send
your feedback to your project email alias.

VMware, Inc. 7
VMware Storage Certification Guide (SCSI Block)

VMware Technical Publications Glossary


VMware Technical Publications provides a glossary of terms that might be unfamiliar to you.
For definitions of terms as they are used in VMware technical documentation go to http://
www.vmware.com/support/pubs.

Technical Support
To obtain technical support for tests in this guide, create a DCPN from the VMware Integration
Validation User Interface.

VMware, Inc. 8
Certification Requirements
2
This chapter describes the testbed requirements for storage certification.

Review this chapter before setting up your testbeds and make sure you meet all of the
requirements defined here. Then consult the chapter specifying the type of certification
environment you want to set up.

This chapter includes the following topics:

n Required Software

n Required Hardware

n License Requirement

n Installation and Configuration Overview

n Installing ESXi

n Installing vCenter Server

n Installing STAF and HWE vibs on the ESXi Hosts

n Allocating LUNs

n Setup requirements for Configuration and Verification, Data Intergity, Failover, iSCSI,
Functional and Permanent Device Loss Tests

n Special Tests

n Configuring Datastores

n Guest Operating Systems for Storage Certifications

n Installing and Configuring Virtual Machines

n Certification Types

n Storage Certification Questionnaire

n User Parameters

VMware, Inc. 9
VMware Storage Certification Guide (SCSI Block)

Required Software
All storage certifications require the following software:

n ESXi

n vCenter Server

n VMware Tools

n Guest operating system listed in Table 2-2. Recommended Minimum Guest Operating Systems
for Storage Certifications

Required Hardware
All hardware components, except for the storage array under test, must be listed in the VMware
Compatibility Guides for systems, I/O, or SAN.

Storage certifications require the following hardware:

n Two ESXi hosts:

n One (1) Intel or AMD 2 x 4 Core Server minimum

n Local disk minimum capacity required if boot from SAN is not available: 73 GB

n On board system memory minimum: 32 GB

n HBAs and NICs recommended by VMware

n HBA and NIC port requirements for storage traffic—see Figure 2-1. Virtual Machine and
Storage Topology for iSCSI Storage.

n ESX Network ports minimum: 3 (4 recommended)

n One port for virtual machine management

n Two ports for vmkernel. 1 GB or higher are required for VMotion network.

n A third ESXi host to run vCenter Server on a virtual machine:

n CPU: 2vCPU

n Minimum memory: 4 GB

n One storage array:

n For Block storage array certification, if the array supports multiple storage processors
then a minimum of two storage processors are required.

n For SVD device certification, the storage array must be an FC device consisting of a
minimum of two storage processors and connected to the back-end of the SVD.

n For NAS-SVD or clustered NAS, the storage array must consist of two storage
processors or a minimum of two NAS nodes or gateways.

VMware, Inc. 10
VMware Storage Certification Guide (SCSI Block)

n Two switches (not required for DAS configuration)

n Managed network switches for iSCSI.

n SVD arrays:

n Two additional FC switches.

n SVD device with a minimum of two storage processors.

n Two VMFS datastores, see Chapter 5 iSCSI Storage Certification to set up the topology for
the type of certification you want to run.

n For software iSCSI certification, you must configure the iSCSI network. For more
information, see Chapter 5 iSCSI Storage Certification.

n Testbed requirements for Extended xCOPY:

n Destination Array : Storage array with Extended XCOPY supported firmware.

n Source Array : Any supported source arrays

n LUNs : 2 x 500GB LUNs from Source and Destination arrays shared across both ESXi
servers.

Note Source and destination array must be zoned together.

License Requirement
You must have licenses for the guest operating systems, vCenterServer and ESXi.

Installation and Configuration Overview


Following are the high-level steps to install and configure your testing environment.

For detailed instructions, see the corresponding sections referenced in each step.

Procedure

1 Install and configure ESXi hosts. For more information, see Installing ESXi.

n Install the vSphere Web Client if not present.

n For storage testing, assign LUN's to ESXi Servers.

2 Install and configure vCenter Server. For more information, see Installing vCenter Server.

n Create a datacenter and a cluster on vCenter Server

n Add hosts. Ensure that the two hosts used for tests are added to cluster. Remove extra
hosts or clusters from vCenter.

3 Allocating LUNs. For more information, see Allocating LUNs

4 Configuring datastores. For more information, see Configuring Datastores

VMware, Inc. 11
VMware Storage Certification Guide (SCSI Block)

5 Install and configure virtual machines. For more information, see Installing and Configuring
Virtual Machines.

6 Create RDM on the virtual machines.

Note RDM for Linux machines must be mounted as /rdm1 only.

Installing ESXi
The storage certification testbed requires installing and configuring two ESXi hosts, labeled ESXi
A and ESXi B in the topology diagrams, for each certification type. See the relevant certification
chapter.

Perform the following:

Prerequisites

n All tests must be performed with ESXiinstalled on boot from SAN. Otherwise a footnote on the
HCL will be added to indicate boot from SAN is not supported with the array. You must have
one array on the system under test.

Note Boot from SAN is not supported from the software FCoE adapter for ESXi.

n All tests run across a multi-host environment. For example, the virtual machine data integrity
test runs on the virtual machines on both ESXi hosts concurrently.

n Enable VMotion and verify that VAAI is enabled in both ESXi hosts. VAAI is enabled by
default.

n Synchronize time between the ESXi hosts and:

n All hardware components (example: switches, storage).

n All guest operating systems using VMware Tools.

Procedure

1 Open a console terminal on the virtual machine.

2 Run yast2 command.

3 On the left-hand pane highlight System.

4 Now on the right-hand pane select Date and Time.

5 Select your Region.

6 Select your time zone from the Time Zone section.

7 In the Hardware Clock section, uncheck the UTC radio box to deactivate the default settings.

8 Go to the Date and Time section and select Change. Manually set the wall clock time to match
the time set on your system components. For example: ESXi server(s), storage array(s) and
switch synchronization.

VMware, Inc. 12
VMware Storage Certification Guide (SCSI Block)

9 Click Accept.

10 Press the Tab key to highlight OK and then press F10.

11 Press F9 to quit.

Configuring ESXi Hosts

After the ESXi installation is complete, perform the following:

Prerequisites

n Acquire approved servers and install approved HBAs.

n Restore the HBAs to factory defaults using their BIOS.

Install ESXi using the bootable CD-ROM. Set the ESXi date and time to wall clock date and time
using the excli system time set command.

Procedure

1 Click Finish to reboot the system.

2 After the ESXi host restarts, press F2 to enter the Customize System menu.

3 Select Configure Password to set the password.

4 Navigate to Configuration Management Network > IP Configuration to obtain IP address


through DHCP or to assign static IP Address Subnet Mask and Default Gateway.

Note For IPv6 tests, configure IPv6 address for ESXi Servers and iSCSI target server.

5 Navigate to Configuration Management Network > DNS Configuration to set the Primary and
Alternative DNS Server IP and hostname. The DNS server must successfully resolve the ESXi
and vCenter hostname.

6 Select Troubleshooting Mode Options and enable ESX Shell, SSH and Restart the
Management Agents.

7 Press F11 to apply the changes.

8 Press Esc to return to the main screen, then press Alt+F1 to log onto the console as root.

9 Deactivate the firewall on both ESXi hosts at the command prompt before testing. . Use the
following commands to deactivate the firewall:

To deactivate the firewall

# esxcli network firewall set --enabled false

To check the firewall status

# esxcli network firewall get

10 If you have not already done so, install the vSphere Web Client.

11 Using the vSphere Web Client, connect to ESXi for licensing and final installation steps.

VMware, Inc. 13
VMware Storage Certification Guide (SCSI Block)

12 From the SAN storage array, assign LUNs to the iSCSI HBAs in the ESXi system. A minimum of
four paths per LUN must be visible through the ESXi system.

13 Verify the LUN visibility and path selection. Use the client or the command line interface to
view your storage targets and path information.

Installing vCenter Server


Install vCenter Server on a virtual machine on an ESXihost separate from ESXi A and ESXi B, if not
already installed.

Note The vCenter virtual machine is on a datastore that resides on the local device of ESXi and
not on the storage under test.

Configuring the vCenter Server

Before running tests, you must to configure vCenterServer.

Procedure

1 Connect to vCenter Server using the vSphere Web Client.

2 Create a datacenter and a cluster on vCenter Server.

3 Add both ESXi hosts to this cluster in this datacenter. Do not add any other ESXi hosts in this
datacenter.

What to do next

Note Ensure that HA and DRS are deactivated for the cluster. They will be activated by the tests
when required.

Installing STAF and HWE vibs on the ESXi Hosts


You must install STAF and HWE vibs on the ESXi Hosts before executing the tests.

1 Install STAF using the following procedure.

a Copy the STAF folder from the container to the datastore in the ESXi Host.

b Log in to the agent VM.

#docker images

For example: #docker images

REPOSITORY TAG IMAGE ID CREATED SIZE


certhub.vmware-aws.com/ latest 8def1a27c1ec 32 hours ago
1.58GB
cert-cicd/storage/storage-cert

VMware, Inc. 14
VMware Storage Certification Guide (SCSI Block)

c Load the docker image.

#docker run -it <REPOSITORY>

For example: # docker run -it certhub.vmware-aws.com/cert-cicd/storage/storage-


cert80

d Copy the STAF Folder to the test ESXi Host.

scp -r /certs/common/temp/STAF/ root@<TestaHost_IP>:/vmfs/volumes/


<datastore_name>/

e Exit the container by running the following command.

#exit

2 Check the libcrypto under /lib64/libcrypt* on both the ESXi Hosts using the following
command.

ls /lib64/libcrypt*

if libcrypto.so.3 is the output of the above command, install staf_ssl3.vib on the ESXi
Host

else install staf.vib on the ESXi Host

3 Install the STAF vib using the following command.

n If libcrypto.so.3 is the output of Step 2, install staf_ssl3.vib on ESXi Host using the
following command:

esxcli software vib install </vmfs/volumes/<datastore_name>/STAF/


<staf_ssl3.vib> -f

n If libcrypto.so.3 is not the output of Step 2, install staf.vib on ESXi Host using the
following command:

esxcli software vib install -v </vmfs/volumes/<datastore_name>/STAF/


<staf.vib> -f

4 Install STAF by running the install_staf.sh command.

Note The script must be run from the root directory using the following command:

install_staf.sh /vmfs/volumes/<datastore_name>/

5 Install the hwe.vib using the following command:

esxcli software vib install -v </vmfs/volumes/<datastore_name>/STAF/


<hwe.vib> -f

6 Verify that the STAF and HWE Vib Installation succeeds.

7 Verify that the STAF is installed correctly and is pingable using the following command:

staf local ping ping

VMware, Inc. 15
VMware Storage Certification Guide (SCSI Block)

Allocating LUNs
VMware recommends allocating a minimum of 35 LUNs on the block storage array assigned to
both ESXi hosts used according to the table.

Table 2-1. Block Storage-LUN Usage

Number of LUNs Usage for ESXi A and ESXi B Capacity

2 Boot for ESXi A and ESXi B 20 GB

1 Shared VMFS6 datastore 1 for virtual 400 GB


machines

1 Shared VMFS5 datastore 2 for virtual 400 GB


machines

2 VMFS Spanning 50 GB

2 Pass-thru RDMs 5 GB

2 Non-pass-thru RDMs 5 GB

1 Volume Grow VMFS datastore 50 GB

2 1 VMFS6, 1 VMFS5 50 GB

1 Raw LUN for VAAI 20 GB

1 Shared RDM attached to VM for SCSI3 1 GB


PR WE-RO, WE-AR type reservation
tests.

1 Datastore created using thin- 10 GB


provisioned LUN, VMFS6

1 Datastore created using thin- 400 GB


provisioned LUN, VMFS5

Note
n All LUNs mentioned in the Table 2-1. Block Storage-LUN Usage should be defined as visible to
both ESXi hosts.

n The boot LUNS for ESXi A and ESXi B are an important exception, shown in the first line of
Table 2-1. Block Storage-LUN Usage.

n The boot LUN for ESXi A should not be visible to ESXi B, and vice versa.

n The boot LUNs for ESXi A and ESXi B must not be shared by the two hosts.

With respect to creating any remaining unused LUNs, do not make LUN IDs perfectly sequential.
There should be gaps between the ID integers, for example: LUN ID 1, 3, 5 and so on.

VMware, Inc. 16
VMware Storage Certification Guide (SCSI Block)

Setup requirements for Configuration and Verification, Data


Intergity, Failover, iSCSI, Functional and Permanent Device
Loss Tests
The following tests need this setup:

n Verify

n LunReset

n HBA_Port_Failover

n SwitchPort_Failover

n StorageProcessor_Reset_Stress

n StorageProcessor_NDU

n VMKNIC_Failover

n Hot_Add_LUNs and Hot_Remove_LUNs

n vMotion_Storage_vMotion

n High_Availabilty

n Dynamic_Resource_Sheduling

n Unplanned_Device_Loss

Note This setup is not mandatory for Hot_Add_LUNs and Hot_Remove_LUNs, Volume_Grow
and Static_Discovery tests. These tests will also work without VMs. For more information about
these tests, see Chapter 4 Storage Test Descriptions.

Special Tests
(Special tests must not be queued with other tests)

n High_Availabilty

n Dynamic_Resource_Sheduling

These test cases need host reboot and VM migration, Ensure the following:

n Setup must only have VMs mentioned in Table 2-3. Remove any extra VMs registered to hosts.

n Run these test cases individually. Do not queue them with other tests.

n After these test runs are complete, ensure that the setup is intact. Verify that the VMs are
registered to the correct host and datastore.

n SCSI3 PR WE-RO tests, SCSI3 PR WE-AR tests, Shared VMDK support: These tests require
additional VM and configurations must be run separately.

VMware, Inc. 17
VMware Storage Certification Guide (SCSI Block)

Configuring Datastores
Configure a minimum of two datastores shared between the two ESXi hosts.

n One VMFS6 datastore and one VMFS5 datastore.

n Each datastore must have a minimum of 250 GB of free space.

n Each datastore must host two virtual machines, two on each ESXi host.

n An additional RHEL-6 VM is required for SCSI3 PR WE-RO and WE-AR (Shared VMDK
support) tests. Create and configure the additional VM only before running those tests
separately.

Guest Operating Systems for Storage Certifications


Install the necessary guest operating systems listed in following table for the testbed.

Table 2-2. Recommended Minimum Guest Operating Systems for Storage Certifications

Guest Operating System

Red Hat Enterprise Linux (RHEL)6 64-bit for LSI SAS/LSI Parallel

SuSE Linux Server (SLES) 11 SP4 (32-bit) for Bus logic


SuSE Linux Server (SLES) 11 SP4 (64-bit) for PV SCSI

Installing and Configuring Virtual Machines


Create and set up two virtual machines on each ESXi host residing on shared datastores.

An additional RHEL-6 VM is required for SCSI3 PR WE-RO and WE-AR (Shared VMDK support)
tests. Create and configure the additional VM only before running those tests separately. See the
SCSI3 PR tests section for more details.

The following figure illustrates the topology for each ESXi host and virtual machine configuration
for iSCSI storage:

VMware, Inc. 18
VMware Storage Certification Guide (SCSI Block)

Figure 2-1. Virtual Machine and Storage Topology for iSCSI Storage

Naming Convetion for Virtual Machines


VMware recommends using the following naming convention for virtual machines:

<ESXi Host A or B>-<Virtual Machine #>-<GOS>-<Adapter Type>

For example: ESXiA-VM1-lin-lsi

Note Do not use -p as a value for <Adapter Type>. Using -p may cause anomalous behavior.

Minimum Requirements for Virtual Machines


Each virtual machine must have a minimum of the following:

n One virtual network adapter connected to the virtual machine management network virtual
switch.

n 20 GB of virtual disk for the virtual machine system drive for Linux virtual machines with 2 GB
of available free space.

n 3 vCPUs for Linux virtual machines.

n 4 GB virtual RAM for each Linux virtual machine.

VMware, Inc. 19
VMware Storage Certification Guide (SCSI Block)

n Configure Datastores 1 and 2 on high-performance LUNs/Volumes to sustain high I/O


workload from 4 virtual machines along with virtual disks cloning on each ESXi host.

n For block storage, Datastores 1 and 2 are on VMFS. Also, you need 10 iSCSI volumes of size 3
GB mounted on both ESXi hosts. All the iSCSI volume names must be in sequential order.

Ensure that after you reboot the host, it boots properly and does not wait or expect an input to
proceed. Some hosts prompt you to press F1 to proceed with the boot or a security warning might
display stating that the box has been opened and needs input to proceed.

Note
n Ensure that /usr/local/etc/ directory exists in all the Virtual Machines.

n All the VMs mentioned in the following table must have the same root password.

n ESXi hosts must be added to Host Selection page in VIVa, using the root username. Also,
ensure that both the ESXi hosts have same root password.

n Each VM must have only one RDM mounted as /rdm1 and must be 5 GB or more.

n While creating FS on RDM, if you are creating ext4 file system in SUSE 11, ensure that it is not
mounted as read-only.

n Ensure that glibc libraries are installed in all the VMs. Run the following command to install
the libraries (if required):

yum -y install glibc.i686

Table 2-3. Virtual Machine and Datastore Configuration Requirements


Virtual One RDM per
Machine Virtual Virtual Virtual Datastore
Name Machine Type Adapter Boot Machine Datastore Type

ESXiA-VM1- RHEL6 64 bit LSI Parallel YES Non Pass-thru Shared on VMFS6
lin-lsiPAR Datastore 1

ESXiA-VM2- SLES 11 64 bit PV SCSI YES Pass-thru Shared on VMFS6


lin-pvs Datastore 1

ESXiB-VM1- RHEL6 64 bit LSI SAS YES Pass-thru Shared on VMFS5


lin-lsiSAS Datastore 2

ESXiB-VM2- SLES 11 32 bit Bus Logic YES Non Pass-thru Shared on VMFS5
lin-BUS Datastore 2

Installing Tools on Virtual Machines

Prerequisites

Install the following tools on each virtual machine:

1 Linux Operating Systems as listed in Table 2-2. Recommended Minimum Guest Operating
Systems for Storage Certifications

VMware, Inc. 20
VMware Storage Certification Guide (SCSI Block)

2 VMware Tools

Steps to Install VMware Tools

Install VMware tools by performing the following steps:

Procedure

1 In vSphere Web Client or vSphere Client, mount the VMware Tools virtual disk on the guest
operating system.

To mount VMware tools, Right click the VM, click Guest OS and then select Install VMware
Tools.

2 In the virtual machine, log in to the guest operating system as root.

3 Right-click the VMware Tools installer file VMwareTools.x.x.x-xxxx.tar.gz, click Extract


to, and select the desktop for your Linux distribution. The vmware-tools-distrib folder is
extracted to the desktop.

4 Open a terminal window and run the installer and configure VMware Tools by using the
following command. This command may vary slightly across different Linux distributions.

cd vmware-tools-distrib
sudo ./vmware-install.pl -d

Results

The vmware-config-tools.pl configuration file runs after the installer file completes execution.

Setup Requirements for VAAI - ATS, BlockZero, and FullCopy Tests


For VAAI, ATS, BlockZero, and FullCopy tests, use the setup illustrated in this section.

Set the test variables as follows:

n primaryDatastoreVAAI set to Datastore D1

n secondaryDatastoreVAAI set to Datastore D2

n rawLUN set to LUN NAA of RDM P1

n primaryDatastoreVAAILUN points to LUN NAA for Datastore D1

n secondaryDatastoreVAAILUN points to LUN NAA for Datastore D2

Note Datastore D1 must be VMFS6 and D2 must be VMFS5.

VMware, Inc. 21
VMware Storage Certification Guide (SCSI Block)

Figure 2-2. Virtual Machine and Storage Configuration for VAAI, ATS, BlockZero, and FullCopy
Tests

Note The boot virtual disk for the virtual machines used in the test must not exceed 6 GB.
Datastores D1, D2, and rawLUN P1 must be shared between both the hosts. Both D1 and D2
datastores must have minimum of 50 GB free space. The RawLUN P1 must be 20 GB.

Setup Requirements for Thin Provisioning Tests


The following Thin Provisioning tests need this setup:

n TPReportCapable

n TP_Soft_Error_Distributed

n TP_Hard_Limit_Provision_More

n Create a datastore named TESTVOL using the thin provisioned LUN of 10 GB. The test cases
fails if the free space on TESTVOL is greater than 10 GB. This datastore should be shared
across both the hosts.

n Another thin provisioned raw LUN of 3 GB is needed. This LUN must be added to TESTVOL
when prompted by the TP_Hard_Limit_Provision_More test.

VMware, Inc. 22
VMware Storage Certification Guide (SCSI Block)

Setup Requirements for Thin Provisioning Space Reclamation and


TPUNMAP Tests
Space reclamation, as part of VAAI Block Thin Provisioning efficiently reclaims deleted space while
coordinating with vSphere. ESXi identifies Thin Provisioned LUNs and issues UNMAP commands
to reclaim deleted space on the storage.

VMFS6 is the new file system version shipped with vSphere 2016 release. On VMFS6 datastores,
vSphere 2016 supports the following:

n Automatic asynchronous reclamation of free space for VMFS file deletion or truncation.

n Guest OS based automatic unmap when Guest OS file is deleted or truncated.

The unmap opertation on the VMFS5 datastore continues to be manual operation. Successful
completion of the tests validates that the TP UNMAP feature operates in a stable manner with the
specified storage array.

Setup Requirements for Extended Xcopy

The Extended Xcopy requires the following test setup:

n 1 x RHEL7 VM with name "rhel7-64bitpv" The VM "rhel7-64bitpv" can be kept on some local or
other datastores which is not used by test.

n One VMFS5 and VMFS6 datastore created on both source & destination LUNs.

n Do not keep any VM on test datastores as the test tries to unmount/remount these datastores
while adding claim rules, so unmount operation will fail if there are registered VMs on these
datastores.

Testbed Topology (VMFS5 TP UNMAP)


Perform the following before running these tests:

n Create a datastore using thin provisioned LUN of 400 GB. Datastore version must be VMFS5
and shared across both the hosts.

n Create RHEL 6 64 bit VM on the datastore created in the previous step. It must be registered
to the primary host. Remove extra vmdks apart from GOS vmdk before running these tests.

n An extra thin provisioned raw LUN of 50 GB must be presented to both the hosts.

Testbed Topology (VMFS6 Automatic Unmap)

For these tests, you need the following:

n VM with GOS Win2K12 and VM HW version 13.

n The GOS VMDK size must not be greater than 20 GB. No additional VMDKs must be
attached except for the GOS VMDK.

n VMware tools must be installed on the VM.

VMware, Inc. 23
VMware Storage Certification Guide (SCSI Block)

n Ensure that C:\Temp directory is created in this VM before running Automatic UNMAP
tests.

n Auto login must be enabled on the VM, with the password set as ca$hc0w. For more
information, see the Additional Settings for Virtual Machine.

n VMFS6 datastore created on a thin-provisioned LUN. The datastore size must be 200 GB or
more.

n VMFS6 datastore spanned across two thin-provisioned LUNs. The datastore size must be 200
GB or more.

n VMFS6 datastore created on a misaligned partition. The datastore size must be 200 GB or
more.

n For the Volume Grow test, four additional thin provisioned raw LUNs of 10 GB are needed.

Creating a Datastore on Misaligned Partitions


Perform the following steps to create a datastore on misaligned partitions:

Note Use freshly created LUNs to run the following commands.

1 Identify the ending sector number by running the following command:

partedUtil getUsableSectors /vmfs/devices/disks/<LUN ID>

Example output:

partedUtil getUsableSectors
/vmfs/devices/disks/naa.600601605bd02d0048f0a9c64a16e511
1 41943039

In the preceding example, 41943039 is end sector number. Use this number to create
partition.

2 Create the misaligned partition using the following command:

# partedUtil "setptbl" "/vmfs/devices/disks/<LUN ID>" "gpt" "1 4096 <end


sector> AA31E02A400F11DB9590000C2911D1B8 0"

3 Create a VMFS6 datastore using the created LUN:

# vmkfstools -C vmfs6 -S NewDatastore /vmfs/devices/disks/<LUN ID>:1

Additional Settings for Virtual Machine

Ensure the following for Windows VMs:

n There are no pop-ups in the VMs after reboot.

n GOS allows auto login into root/admin account.

VMware, Inc. 24
VMware Storage Certification Guide (SCSI Block)

To enable auto login on Windows Administrator accounts, perform the following steps:

1 Navigate to Start > Run. In the Run window, type netplwiz and click OK.

2 In the Users tab, clear the checkbox for Users must enter a user name and password to use
this computer, and click Apply.

3 Now select the administrator username and click OK.

4 In the Automatically Log On window, enter the Windows administrator user name that you
want to automatically log into and the account password, and click OK.

Networking inside the virtual machines is configured for DHCP. For each virtual machine, set disk
time out value to 60.

For example:

n On Windows 2008, set


HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Disk\TimeOutValue to 60.

For Windows virtual machines, set the Driver Signing Options to Ignore. Reboot the host to check
if Windows expects an input to proceed. Some hosts prompt you to press F1 to proceed or a
security warning might appear stating that the box has been opened and needs user input to
proceed.

Certification Types
VMware recognizes several levels/kinds of certifications.

Partial Feature Certification


Shared VMDK support is a new feature added in ESXi 8.0. It is available only for FC arrays
in this release. Storage array must support Write Exclusive-All Registrants (WE-AR) type SCSI3
persistent reservation is a mandatory pre-requisite for this feature. If FC Storage Array firmware
with WE-AR type reservation support is already certified, you can go through partial feature
certification in 8.0 by running a subset of specific tests . Session Configuration page in VIVa UI
provides the option for partial feature certification.

Full Certification
Full Certification is a mandatory certification for all new releases of ESXi (with the exception of
binary compilable releases) and if the storage array is getting certified for the first time with
VMware.

Partners must run and pass all test items designated by the corresponding certification kit.

VMware, Inc. 25
VMware Storage Certification Guide (SCSI Block)

Recertification
A recertification is required when something cannot be carried forward. It is specifically required in
following two cases:

n If a partner makes one or more critical changes in the firmware or features of an array product
that has already been certified.

n If VMware releases a new vSphere version that requires recertification to verify compatibility
with a partner’s previously certified products.

Storage Virtual Appliance (SVA) Certification


SVA certification kit is deprecated from 8.0. vSphere 8.0 onwards, any new software defined
storage solution implementation with a virtual appliance VM acting as storage controller and
exports the storage space as iSCSI LUNs or NAS volumes to external servers can run the Storage
HW certification and get listed as SVA type storage in VMware HCL.

Minor Storage Firmware Revision (mSFR) Certification


If a minor storage firmware update is made to previously certified firmware, a recertification
trigger may or may not be called. If the minor changes do not impact compatibility with vSphere,
a recertification may not be required. On the other hand, depending on the magnitude of any
firmware update/changes, VMware reserves the right to require recertification.

mSFR certification process is changed in new VIVa certification platform. mSFR approval request
must be raised through DCPN tool after initial steps of test session creation and questionnaire
inputs in VIVa. mSFR approval request appears as a manual test in VIVa. As a part of this test,
DCPN case can be created from VIVa and upload the request form. Upon review and approval of
the request, the test status is marked as passed and allows to run remaining mSFR tests.

Therefore, VMware offers an option to run a minimal, basic set of tests with a shorter total test
duration, rather than running a full certification. If the firmware update meets the criteria for a
recertification, perform the following:

1 On the Session Configuration page, choose the certification type as mSFR.

2 A new test case MSFR_Approval_test is available in Test Selection page. This is a manual test
added specifically for mSFR approval.

3 Click the flag icon which is next to MSFR_Approval_test on theTest Execution page and
create a support request.

4 You have to download mSFR request form from code.vmware.com and fill all the required
details and upload to the support request created.

5 Once you get the approval, the MSFR_Approval_test will be automatically marked as passed.

VMware, Inc. 26
VMware Storage Certification Guide (SCSI Block)

6 After that you can run all the listed tests and proceed for submission.

Note
n Complete the mSFR approval process before running the tests

n You must be certain that your array firmware meets the mSFR certification criteria. If it is
determined later that your configuration requires full certification, the log review process may
reject the submitted certification.

Storage Certification Questionnaire


When you start a new storage certification, the Session Configuration page appears in the
VIVa UI, which you must complete before you start running certification tests. The questionnaire
contains information used during testing.

n Certification type—select Full Certification or Partial Feature Certification, the required tests
are displayed in the test catalog. For more information about test configurations for other
protocols, see respective certification guides.

Protocol Test Configuration

iSCSI Software iSCSI


Hardware iSCSI
Software and Hardware iSCSI
Software iSCSI - SVD
Hardware iSCSI - SVD
Software and hardware iSCSI - SVD
iSCSI over RDMA (iSER)

FC FC SAN
FC DAS
FC SAN - SVD

NAS NAS-SVD

VMware, Inc. 27
VMware Storage Certification Guide (SCSI Block)

Protocol Test Configuration

FCoE Hardware FCoE End-to-End


Software FCoE End-to-End
Software and Hardware FCoE End to End
Hardware FCoE FC SAN
Software FCoE FC SAN
Software and Hardware FCoE FC SAN

SAS Shared SAS DAS


Shared Switched SAS

Note If your array is Software and Hardware iSCSI, you must select the Software and
Hardware iSCSI topology and select any one of configurations from below list.

n Software and Dependent Hardware iSCSI

n Software and Independent Hardware iSCSI

n Software, Dependent, and Independent Hardware iSCSI

n Indicate if there are more than one SP controllers in the storage array.

n If more than one SP is supported answer below question.

Is array type Active/Active?

n Select Yes if array type is Active/Active.

n Select No otherwise.

n VAAI support in the array: Select specific primitives to certify or supported—Block Zero,
Full Copy, Hardware Assisted, Locking (also called Atomic Test and Set (ATS)), and Thin
Provisioning. Indicate if an Async VAAI plug-in is required for any of these VAAI primitives.

n Support for WE-AR type reservation: Select Yes, if FC arrays supports Write Exclusive - All
Registrants type SCSI3 persistent reservation to claim support for Shared VMDK feature.

n Vendor-specific VAAI plug-in:

n Select Yes if a vendor-specific plug-in is supported.

n Select No if a vendor-specific plug-in is not supported, and if the certification is for the
VAAI T10 plug-in.

n iSCSI IPv6 support in the array.

n Select Yesif the array supports iSCSI over IPv6. This selection lists the tests which support
both iSCSI over IPv4 and iSCSI over IPv6.

n Select No if the array does not supports iSCSI over IPv6. This selection lists the tests which
only support iSCSI over IPv4. IPv6 test cases will be hidden if this option is selected.

n Does your array support 1 MB UNMAP granularity or less than 1 MB UNMAP granularity?

n Select Yes if the array supports UNMAP granularity of 1 MB or less.

VMware, Inc. 28
VMware Storage Certification Guide (SCSI Block)

n Select No if the array only supports UNMAP granularity of more than 1 MB.

n SVS Support: Any software based storage solution which is implemented as a virtual appliance
and serve storage to storage clients or servers outside the Storage cluster through iSCSI or
NAS host IO protocol can come for certification.

Is array of type Storage Vitrual Appliance (SVA)?

Select Yes if the storage solution meets above requirement.

n mSFR support

n Select Yes if you want to certify a minor storage firmware.

n Select No if you want full certification.

User Parameters
Prompts appear where you must enter these parameters. You might have to enter more
information during a specific test.

Note Perform the following steps to fetch parameter values for HOST1PG and HOST2PG:

1 In the vCenter, navigate to Host > Configure > Storage Adapters and click Hba used for iSCSI
port binding.

2 Enter the vmkernel adapter names listed under the Network Port Binding section for vmhba.

For example: vmk1, vmk2. Port group names such as VMkernel/VMkernel 2 are not applicable
anymore. Test case fails if port group names are entered.

Table 2-4. User Parameters

Parameter (Tag) Prompt/Value Comment

Extended xCOPY

srcDsNames Comma separate list of source


datastore names

dstDsNames Comma separate list of destination


datastore names

srcVendor Source array vendor name

srcModel Source array model name

excopyVendor Destination array vendor name

excopyModel Destination array model name

ESXi/DataCenter Host Information

VC_IP Enter vCenter Host name or IP


address.

Data Center Name

VMware, Inc. 29
VMware Storage Certification Guide (SCSI Block)

Table 2-4. User Parameters (continued)

Parameter (Tag) Prompt/Value Comment

Host 1 Name/IP Address.

Host 2 Name/IP Address.

VC_NAME Enter VC User name. Enter the VC User name.

VC_PASS Enter VC Password. Enter the VC Password.

Certification Type

Data Store

primaryDatastore Enter Datastore1 Name. This datastore contains the virtual


machines.

secondaryDatastore Enter Datastore2 Name. This datastore contains the virtual


machines.

dstype Enter datastore type as VMFS for Provide the datastore type.
iSCSI protocol.

Configuration Path/Policy Information

PrimaryDSPathPolicy Enter Path Policy for VMFS After path policy is used, you
Datastore 1, VMW_PSP_FIXED, can have PathPolicyDS1 and
VMW_PSP_FIXED_AP, PathPolicyDS1 set to the same value.
VMW_PSP_MRU,
VMW_PSP_MRU_RANKED,
VMW_PSP_RR, partner_PSP.

SecondaryDSPathPolicy Enter Path Policy for VMFS After path policy is used, you
Datastore 2, VMW_PSP_FIXED, can have PathPolicyDS1 and
VMW_PSP_FIXED_AP, PathPolicyDS1 set to the same value.
VMW_PSP_MRU,
VMW_PSP_MRU_RANKED,
VMW_PSP_RR, partner_PSP.

vMotion Information

PrimaryHostVMotionIP Enter Host1 vMotion IP address. Set up vMotion.

SecondaryHostVMotionIP Enter Host2 vMotion IP address. Set up vMotion.

I/O Tools

SG3 Enter the full path for the folder When running GOS SCSI2/SCSI3 tests
location of SG-3util for Windows only, use the Windows expected
virtual machines. path with a backslash (\). Example:
C:\SG-3util For the Verify test only,
use a forward slash (/).

Virtual Machine Names

H1VM1 Enter VM name for RHEL6 VM on Used functional, fail over, and other
Host1. tests.

VMware, Inc. 30
VMware Storage Certification Guide (SCSI Block)

Table 2-4. User Parameters (continued)

Parameter (Tag) Prompt/Value Comment

H1VM2 Enter VM name for SLES 11 64bit Used functional, fail over, and other
Linux VM on Host1. tests.

H2VM1 Enter VM name for RHEL6 Linux VM Used functional, fail over, and other
on Host2. tests.

H2VM2 Enter VM name for SLES 11 32bit Linux Used functional, fail over, and other
VM on Host2. tests.

iSCSI CHAP Information

PRIMARYCHAPNAME Enter TestHost initiator CHAP Name. Provide the initiator CHAP name for
ESXi A.

PRIMARYCHAPSECRET Enter TestHost initiator CHAP Secret. Provide the initiator CHAP secret for
ESXi A.

SECONDARYCHAPNAME Enter AuxHost initiator CHAP Name. Provide the initiator CHAP name for
ESXi B.

SECONDARYCHAPSECRET Enter AuxHost initiator CHAP Secret. Provide the initiator CHAP secret for
ESXi B.

MUTUALCHAPNAME Enter initiator Mutual CHAP Name. Provide the initiator mutual CHAP
name, used for the BiDirectionalChap
test.

MUTUALCHAPSECRET Enter initiator Mutual CHAP Secret. Provide the initiator mutual CHAP
secret, used for the BiDirectionalChap
test.

iSCSI IPv6/IPv4 Information

Vmhba Enter VMHBA under test. Enter the VMHBA id of the HBA (For
example: vmhba2).

Iqn Enter IQN of HBA. Enter the IQN of HBA.

staticIPv6Address1 Enter IPV6 address of HBA. Enter the IPV6 address of HBA.

staticIPv6Address2 Enter second IPV6 address of HBA. Enter the second IPV6 address of
HBA.

gatewayIPv6 Enter IPv6 address of gateway of Enter the IPv6 address of gateway of
HBA. HBA.

TargetName Enter IPv6 address of Target. Enter the IPv6 address of Target.

TargetIQN Enter Target IQN. Enter the Target IQN.

NoOfLunsPerTarget Enter number of LUNs for target. Enter the number of LUNs for target.

ESXHostname Enter FQDN of ESX host under test. Enter the FQDN of ESX host under
test.

ESXip Enter IP address of ESX under test. Enter the IP address of ESX under
test.

VMware, Inc. 31
VMware Storage Certification Guide (SCSI Block)

Table 2-4. User Parameters (continued)

Parameter (Tag) Prompt/Value Comment

vmnic1 Enter vmnic to be used for Enter the vmnic to be used for
PortGroup1. PortGroup1 (For example: vmnic1)

vmnic2 Enter vmnic to be used for Enter the vmnic to be used for
PortGroup2. PortGroup2 (For example: vmnic2)

vmnicIPv6add1 Enter IPv6 address for PortGroup1. Enter the IPv6 address for
PortGroup1.

vmnicIPv6add2 Enter IPv6 address for PortGroup2. Enter the IPv6 address for
PortGroup2.

TestVswitch Enter the vSwitch configured for SW Enter the vSwitch name.
FCoE (For example: vSwitch1).

TestVMFS VMFS datastore to use. Enter the name of the VMFS


datastore available, when VN2VN is
enabled.

VLANID Enter VLAN ID. Enter the VLAN ID.

vmnicIPv4add1 Enter IPv4 address for PortGroup1 Enter IPv4 address for PortGroup1

vmnicIPv4add2 Enter IPv4 address for PortGroup2 Enter IPv4 address for PortGroup2

staticIPv4Address1 Enter IPv4 address of HBA Enter IPv4 address of HBA

gatewayIPv4 Enter IPv4 address of gateway of HBA Enter IPv4 address of gateway of HBA

Other Test Parameters

ProtocolType Enter Test Certification Protocol Enter the value as SWISCSI or


'SWISCSI', 'HWISCSI'. HWISCSI.

SHAREDLUN Enter Test LUN UUID for GOS Enter the LUN naa for Pass-thru
SCSI3PR and SCSI2 Reserve Tests. RDM for GOS SCSI-3 Persistent
Reservation tests and GOS SCSI-2
Reserve/Release tests.

HOST1PG Enter 2 VMkernel NICs for VMkernel Port group network label of VMkernel
virtual switch-on Host 1. type vSwitch. For example: VMk1,
VMk2. This parameter is used for
VMKNIC_Failover test.
For more information, see Note.

HOST2PG Enter 2 VMkernel NICs for VMkernel Port group network label of VMkernel
virtual switch-on Host 2. type vSwitch. For example: VMk1,
VMk2. This parameter is used for
VMKNIC_Failover test.
For more information, see Note.

TESTVOL Please Enter Thin Provisioned VMFS6 VAAI Thin Provisioned VMFS volume.
Volume (Capacity of 10 GB).

TESTVOL_LUN Enter naa ID of the LUN used Thin TESTVOL LUN id.
Provisioned VMFS Volume.

VMware, Inc. 32
VMware Storage Certification Guide (SCSI Block)

Table 2-4. User Parameters (continued)

Parameter (Tag) Prompt/Value Comment

LUNformat Enter the device format of the LUN. Enter the device format of the LUN.
For example: 512e or 512n and
so on. This parameter is used for
VMFS_Spanning test.

VCCluster Enter Cluster Name: Name of the cluster in vCenter.

ISCFSupport Does your array supports Internal Used for the array that has
Storage Controller Failovers (ISCF) transparent failover to ESXi Host.
'yes', or 'no'.

primaryHostHBA Enter primary host HBA. Enter vmhba# for the primary ESXi
host (For example: vmba1).

secondaryHostHBA Enter secondary host HBA. Enter vmhba# for the secondary ESXi
host (For example: vmba1).

PDLLun Enter the naa ID for the PDL LUN. LUN NAA number to unmap/remove
for Unplanned_Device_Loss test.
Ensure that this LUN is free and
datastores are not created using this
LUN.

rawLUN Enter naa ID of a free LUN of size 20 Used for


GB for rawLUN. Full_Copy_Clone_VM_RDM tests.

GOSvmdkPath Enter GOS vmdk path for standard- Used by Full_Copy_Clone_VM test.
vm. You can use an existing virtual
machine for this test.

SHAREDLUN Enter the naa ID of shared LUN for Enter a naa id of the rdm which is
SCSI3PR tests for SHAREDLUN. used for scsi3pr tests.

ThinProvisionedLUN Enter a free thin provisioned LUN naa Enter the naa ID of the
ID for ThinProvisionedLUN (50 GB). thin provisioned raw LUN
of 50 GB. Needed for
VGrowEagerZeroedThickSReclaim
test.

ThinProvisionedDatastore Enter the Thin Provisioned VMFS Enter the name of the VMFS5
Volume for ThinProvisionedDatastore datastore created using thin
(400 GB). provisioned LUN of 400 GB. This is
used for TPUNMAP tests.

TPVM Enter the linux VM name for UNMAP Enter the RHEL 6 64 bit VM name.
tests for 'TPVM'. This is used for TPUNMAP tests.

TVPMPassword Enter the root password for the VM Enter root password for TPVM.
for 'TPVMPassword'.

primaryDatastorenaaid Enter naa-id of primary datastore. naa-id of primaryDatastore, for


example:
naa.600a098054356545543f495471
734c37.

FirmwareVersion Enter Firmware Version of Array. Firmware version of the array on


which you are running certification.
For example: x.0.0.0.

VMware, Inc. 33
VMware Storage Certification Guide (SCSI Block)

Table 2-4. User Parameters (continued)

Parameter (Tag) Prompt/Value Comment

Vendor Enter Array Vendor Name. Vendor Name of the array on which
you are running certification. For
example: VMW.

Model Enter Array Model. Array Model of which you are


running certification. For example:
datatank10.

ESXi1_boot_device is ESXi1 booted from SAN. Enter yes if your array supports boot
from SAN.

ESXi2_boot_device is ESXi2 booted from SAN. Enter yes if your array supports boot
from SAN.

MajorCertSR For MSFR, SR number of previously Enter the SR number of the Major
certified Major Firmware version. Firmware version, which is using the
mSFR. If you have no mSFR, input NA.

mSFReligibilitySR For MSFR, Enter SR number of mSFR Enter the SR number which approves
eligibility approval request. the mSFR eligibility. If you have no
mSFR input NA.

Collect_Storage_Information Test Parameters

primaryDatastorenaaid Enter naa-id of primary datastore. naa-id of primaryDatastore, for


example:
naa.600a098054356545543f4954717
34c37.

FirmwareVersion Enter Firmware Version of Array. Firmware version of the array on


which you are running certification.
For example: x.0.0.0.

Vendor Enter Array Vendor Name. Vendor Name of the array on which
you are running certification. For
example: VMW.

Model Enter Array Model. Array Model of which you are running
certification. For example: datatank10.

ESXi1_boot_device is ESXi1 booted from SAN. Enter yes if your array supports boot
from SAN.

ESXi2_boot_device is ESXi2 booted from SAN. Enter yes if your array supports boot
from SAN.

MajorCertSR For MSFR, SR number of previously Enter the SR number of the Major
certified Major Firmware version. Firmware version, which is using the
mSFR. If you have no mSFR, input NA.

mSFReligibilitySR For MSFR, Enter SR number of mSFR Enter the SR number which approves
eligibility approval request. the mSFR eligibility. If you have no
mSFR input NA.

vmdevice Enter the name of the HBA/NIC/CNA Enter the name of the HBA/NIC/CNA
device used to connect the Storage device used to connect the Storage
array. array.

VMware, Inc. 34
VMware Storage Certification Guide (SCSI Block)

Table 2-4. User Parameters (continued)

Parameter (Tag) Prompt/Value Comment

DriverName Enter the Driver name of vmhba or Enter the Driver name of adapter or
vmnic used for the certification. NIC connected to array according to
the following command:
Note Ensure that IO Adapter driver
For software iSCSI : esxcli network
used in the certification testbed is
nic get -n <vmnic>
a certified or inbox driver in ESXi
8.0. Driver name entered match with For others: esxcli storage san
the value in VMware HCL, otherwise <Protocol> list
submission fails.

DriverVersion Enter the Driver version of vmhba or Enter the Driver version of adapter or
vmnic used for the certification. NIC connected to array according to
the following command:
Note Ensure that IO Adapter
For software iSCSI : esxcli network
driver version used in the certification
nic get -n <vmnic>
testbed is a certified or inbox driver
in ESXi 8.0. Driver version entered For others: esxcli storage san
match with the value in VMware HCL, <Protocol> list
otherwise submission fails.

ServerModel Enter the Server model used for the Enter the Server model used for the
certification. certification according to the VCG.

Note Ensure that Server model used


in the Storage certification testbed
is a certified model in any of ESXi
releases. Server model name entered
match with the value in VMware HCL,
otherwise submission fails.

VMware, Inc. 35
Running the Tests
3
This chapter provides information about running the certification tests in online and offline modes.

For more information, see the VMware Integration Validation User Guide.

This chapter includes the following topics:

n Online Mode

n Offline Mode

Online Mode
Before running the certification tests in online mode, verify the testbed prerequisites.

Procedure

1 Create a test session.

2 In the Agent Selection tab, select the Online Mode radio button.

If you don't have an agent deployed already, download the agent OVA file by clicking the
AGENT IMAGE button and deploy the agent. For steps to deploy and register the agent, see
the VMware Integration Validation User Guide.

Note Agent VM must be deployed on the third ESXi host, not on test hosts.

3 In the Host Selection tab, enter the host details.

4 In the Session Configuration tab, select the necessary configurations.

5 In the Test Selection tab, select the Copy_diskTool test.

6 In the Test Parameters tab, enter the parameters required for the selected tests.

7 In the Test Execution tab, click EXECUTE TESTS.

8 After the Copy_diskTool test run is done, Install STAF.

Offline Mode
Before running the certification tests in offline mode, verify the testbed prerequisites.

VMware, Inc. 36
VMware Storage Certification Guide (SCSI Block)

Procedure

1 Download the agent OVA.

2 Create a test session.

3 In the Agent Selection tab, select the Offline Mode radio button.

Note Agent VM must be deployed on the third ESXi host, not on test hosts.

4 In the Host Selection tab, enter the host details.

5 In the Session Configuration tab, select the necessary configurations.

6 In the Test Selection tab, all the tests are selected by default.

7 In the Test Parameters tab, update the parameters required for the selected tests.

8 In the Test Execution tab, download the RUNLIST (runlist.json).

9 Run the tests from the offline agent UI.

a Open a new browser tab and go to the URL: https://<agent IP>/agent-ui

b Upload the runlist.json file by clicking the UPLOAD RUNLIST button.

c In the Host Selection tab, enter the host details and click NEXT.

d In the Test Selection tab, select the Copy_diskTool test.

e In the Test Parameters tab, enter the required parameters and click NEXT.

f In the Test Execution tab, click EXECUTE TESTS.

g After Copy_diskTool test run, install STAF.

VMware, Inc. 37
Storage Test Descriptions
4
This chapter describes the storage tests and estimated runtime. For VN2VN supported arrays,
VN2VN must be enabled.

Extended Xcopy

Estimated Running Time (in


Test Configuration Test Description minutes)

Extended_xCOPY_SVMotio n vmfs5to5_ThintoThin This test verifies 60


n n vmfs5to6_LZTtoThin the SVMotion with
an extended xcopy
n vmfs6to6_ThintoEZT
feature enabled.

SVMotion_MultiSeg_And_ vmfs6to6_EZTtoEZT This test uses a 120


Array_Reported_Transfer_ non-default transfer
Size_vmfs6to6_EZTtoEZT size. It adds a
claim rule to source
and destination LUNs
to enable multi-
segment, and array
reported transfer
size.

SVMotion_SingleSeg_Custo vmfs6to6_LZTtoLZT This test uses a non- 120


m_Transfer_Size_vmfs6to6 default transfer size
_LZTtoLZT and adds a claim
rule to source and
destination LUNs to
use a custom transfer
size.

Extended_xCOPY_XVMotio n vmfs5to6_ThintoThin This test verifies 120


n n vmfs6to6_ThintoLZT the XVMotion with
an extended xcopy
feature enabled.

Extended_xCOPY_CloneV n vmfs5to6_ThintoLZT_crossHos This test verifies 60


M t the VM clone with
n vmfs6to6_ThintoThin_crossHo an extended xcopy
st feature enabled.

Extended_xCOPY_CloneV vmfs6to6_arrayValues This test verifies the 60


mdk_vmfs6to6_arrayValues VMDK clone with
an extended xcopy
feature enabled.

VMware, Inc. 38
VMware Storage Certification Guide (SCSI Block)

Estimated Running Time (in


Test Configuration Test Description minutes)

APD_During_SVMotion_v vmfs6to6_ThintoThin_APD This test includes 60


mfs6to6_ThintoThin_APD APD with an
extended xcopy
feature enabled. The
host should be up
after clearing APD.

Reboot_During_SVMotion_ vmfs6to6_ThintoThin_Reboot This test performs 60


vmfs6to6_ThintoThin_Rebo a host reboot with
ot an extended xcopy
feature enabled. The
host should be up
after the reboot
completes.

Test Name Test Description Estimated Test Run Time (in minutes)

mSFR Test

MSFR_Approval_test This a manual test, applicable only


for mSFR certifications. See Minor
Storage Firmware Revision (mSFR)
Certification for more details.

CopyBinary Test

Copy_dt_Tool This test copies the binaries required 30


for tests to VMs.

Copy_diskTool This test copies the binaries required 10


for tests to hosts.

Verify This test verifies ESXi hosts, 15


virtual machines, datastores, including
VMware Tools.

Collect_Storage_Information This test collects all the information 10


about the array for VCG listing. This
test should be run before submission.

Note Install STAF to run this test.

Data Integrity Test

LunReset This test verifies that virtual machine 10


I/O can survive SCSI LUN resets.

Failover Tests (Semi-automated)

HBA_Port_Failover This test verifies that virtual machine 120


I/O and simultaneous import and
export operations to the same
datastore from multiple hosts can
survive failovers caused by switch
port activate/deactivate for the HBA
connection.

VMware, Inc. 39
VMware Storage Certification Guide (SCSI Block)

Test Name Test Description Estimated Test Run Time (in minutes)

SwitchPort_Failover This test verifies that virtual machine 120


I/O and simultaneous import and
export operations to the same
datastore from multiple hosts can
survive failovers caused by switch port
activate/deactivate for the storage
processor connection.

StorageProcessor_Reset_Stress This test verifies that virtual machines 120


I/O and simultaneous import and
export operations to the same
datastore from multiple hosts, can
survive failure caused by storage
processor resets.

StorageProcessor_NDU This test verifies that virtual machine 120


I/O and simultaneous import and
export operations to the same
datastore from multiple hosts, can
survive failovers during the storage
processor non-disruptive firmware
upgrade.

iSCSI Tests

Static_Discovery This test verifies the Static Discovery 10


functionality.

UniDirectionalChap This test verifies the bidirectional 25


CHAP functionality using the primary
and secondary ESXi hosts.

BiDirectionalChap This test verifies the bidirectional 25


CHAP functionality using the
secondary ESXi host.

VMKNIC_Failover This test verifies that virtual machine 30


I/O and simultaneous import and
export operations to the same
datastore from multiple hosts can
survive failovers caused by activate/
deactivate vmknic interfaces.

Dynamic Target Discovery with Validates the creation of VMkernel 20


Initiator having single static IPv4 port group with multiple IPv4 static
address addresses is successful and targets
can be discovered successfully.

Dynamic Target Discovery with Validates the creation of VMkernel 20


Initiator having DHCP address port group for the IPv4 address
assigned from the DHCPv4 server
and if targets can be discovered
successfully.

Dynamic Target Discovery with iSCSI Verifies that ISCSI targets can be 20
IPv4 Target Names discovered over IPv4 iSCSI SAN by
specifying the IPv4 iSCSI target name

VMware, Inc. 40
VMware Storage Certification Guide (SCSI Block)

Test Name Test Description Estimated Test Run Time (in minutes)

Static Target Discovery with Initiator Validates the creation of VMkernel 20


having DHCP address port group for the IPv4 address
assigned from the DHCPv4 server
and targets can be discovered
successfully.

Static Target Discovery with Initiator Validates the creation of VMkernel 20


having Satic IPv4 address port group with single IPv4 static
address is successful and targets can
be discovered successfully.

Static Target Discovery with iSCSI Verifies that iSCSI targets can be 20
IPv4 Target Names discovered over IPv4 iSCSI SAN
by specifying the IPv4 iSCSI Target
names.

Target discovery with discovery Verifies that the same subnet targets 20
IPv4 address in same Subnet with are discovered through the iSCSI
portbinding for depedent or software adapter when there is compliant
iSCSI adapters port binding configured for the iSCSI
adapter.

Target discovery with targets in Verifies that different subnet targets 20


different subnet and reachable only are discovered through the gateway
through gateway for all iSCSI adapters for independent-iSCSI adapters.

Verify the Boot time with iSCSI targets The purpose of this test case is to 20
discovered via ipv4 iSCSI SAN verify the boot time with iSCSI.

Verify overnight session add or The purpose of this test case is 20


remove stress to the iSCSI targets to verify the iSCSI configuration by
discovered via iSCSI IPv4 SAN adding and removing the sessions
continuously.

Verify overnight Target add or The purpose of this test case is 20


remove stress to the iSCSI targets to verify the iSCSI configuration by
discovered via iSCSI IPv4 SAN adding and removing and rescanning
the Targets continuously over iSCSI
IPv4 SAN.

LUN Support Tests

LUN_Masking_UnMasking This test verifies that the ESXi host 15


can mask and unmask a particular
SHARED LUN.

VMFS_Spanning This test verifies adding multiple 30


extents to a VMFS volume while
virtual machine I/O running on
the volume from multiple hosts is
successful.

Functional Tests

Hot_Add_LUNs and This test verifies that the ESXi host 30


Hot_Remove_LUNs (Semi- discovers newly added and removed
automated) LUNs without requiring a reboot.

VMware, Inc. 41
VMware Storage Certification Guide (SCSI Block)

Test Name Test Description Estimated Test Run Time (in minutes)

Vmotion_Storage_Vmotion This test verifies concurrent Storage 60


vMotion operations and virtual
machine I/O from multiple hosts to
the same datastore.
Before running this test, run vMotion
manually to make sure it meets
vMotion requirements.
Ensure the following:
n No shared RDMs are configured
on the virtual machines.
n On Linux virtual machines, no
extra virtual disks are attached
other than /, /rdm1, /rdm2 devices
with the specified storage capacity
on Linux virtual machines.

Volume_Grow This test verifies expanding of a VMFS 20


volume during virtual machine I/O on
the VMFS volume from multiple hosts.
Before running this test, configure all
virtual machines with only one virtual
adapter.

High_Availability This test verifies High_Availability 60


operations and virtual machine I/O by
rebooting ESXi.
Before running this test, run vMotion
manually to make sure it meets
vMotion requirements.

Note Ensure that both the hosts have


local datastore of size minimum 100
GB, when running this test.

Dynamic_Resource_Sheduling This test verifies DRS operations and 60


virtual machine I/O by introducing
memory stress on the VMs. Before
running this test, run vMotion
manually to make sure it meets
vMotion requirements.

SVD Tests

SVD_Backend_Switch_Port_Disable This test verifies that virtual machine 480


_ Enable I/O and simultaneous import and
export operations, to the same
datastore from multiple hosts can
survive failures caused by switch port
activate/deactivate at the back end of
an SVD device.

VMware, Inc. 42
VMware Storage Certification Guide (SCSI Block)

Test Name Test Description Estimated Test Run Time (in minutes)

SVD_Backend_StorageProcessor_R This test verifies that virtual machine 430


eset_Stress I/O and simultaneous import and
export operations, to the same
datastore from multiple hosts can
survive failures caused by SP resets
on the storage array connected to the
back end of an SVD device.

SVD_Backend_StorageProcessor_N This test verifies that virtual machine 217


DU I/O and simultaneous import and
export operations, to the same
datastore from multiple hosts can
survive failures caused by non-
disruptive firmware upgrade on the
storage array connected to the back
end of an SVD device.

ATS Tests

ATS_File_Open_Close This test verifies that when ESXi 5


enables the VAAI ATS primitive,
the file create, delete, read, and
write operations perform faster with
simultaneous access to the LUN from
two ESXi hosts.
The operation compares execution
time with and without enabling the
VAAI ATS primitive. The test passes
only if the execution time with VAAI
enabled is less than with VAAI
deactivated.

ATS_File_Create_Delete This test verifies that when ESXi 5


enables the VAAI ATS primitive,
the file create, delete, read, and
write operations perform faster with
simultaneous access to the LUN
from two ESXi hosts. The operation
compares execution times, with and
without the VAAI ATS primitive
enabled. The test passes only if the
execution time with VAAI enabled is
less than with VAAI deactivated.

VMware, Inc. 43
VMware Storage Certification Guide (SCSI Block)

Test Name Test Description Estimated Test Run Time (in minutes)

ATS_Multi_Length_File This test verifies that when ESXi 10


hosts use the VAAI ATS primitive,
simultaneous file modifications from
two ESXi hosts function properly.
The operation compares execution
time with and without enabling the
VAAI ATS primitive. The operation is
conducted with and without enabling
the VAAI ATS primitive. The test logs
note the execution times, but the time
does not determine the test passing
or failing.

ATS_Reserve_Tests This test verifies that when ESXi 5


hosts use the VAAI ATS primitive, file
locking and unlocking modifications
from two ESXi hosts function
properly.
This test is conducted with no I/O to
the array under test.

BlockZero Tests

Block_Zero_Disk This test verifies that when the 5


ESXi host uses the VAAI BlockZero
primitive, an eager-zeroed-thick vmdk
volume is created faster.
The operation compares execution
time with and without enabling the
VAAI BlockZero primitive. The test
passes only if the execution time with
VAAI enabled is less than with VAAI
deactivated.

Block_Zero_Multi_Offload This test verifies that simultaneous 20


creation of virtual disks on a shared
datastore from two ESXi hosts with
VAAI BlockZero primitive enabled
functions properly. The operation is
conducted with and without enabling
the VAAI BlockZero primitive. The
test logs note the execution times
with and without the VAAI BlockZero
primitive, but the time does not
determine the test passing or failing.

FullCopy Tests

VMware, Inc. 44
VMware Storage Certification Guide (SCSI Block)

Test Name Test Description Estimated Test Run Time (in minutes)

Full_Copy_Disk This test verifies that when the 5


ESXi host uses the VAAI FullCopy
primitive, a vmdk volume clones
faster. The operation is conducted
with and without enabling the VAAI
FullCopy primitive. The test logs note
the execution times with and without
the VAAI FullCopy primitive, but the
time does not determine the test
passing or failing.

Full_Copy_Multi_Offload This test verifies that the VAAI feature 30


improves concurrent Full Copy from
two ESXi hosts. The operation is
conducted with and without enabling
the VAAI FullCopy primitive. The test
logs note the execution times, but
the time does not determine the test
passing or failing.

Full_Copy_RDM_PassThru This test verifies that cloning a vmdk 5


volume to an RDM disk is done
correctly when the ESXi host uses the
VAAI FullCopy primitive. The test is
run with a pass-thru RDM disk as the
destination disk.
The operation is conducted with and
without enabling the VAAI FullCopy
primitive. The test logs note the
execution times with and without the
VAAI FullCopy primitive, but the time
does not determine the test passing
or failing.

Full_Copy_RDM_NonPassThru This test verifies that cloning a vmdk 5


volume to an RDM disk is done
correctly when the ESXi host uses the
VAAI FullCopy primitive. The test is
run with the non-pass-thru RDM disk
as the destination disk. The operation
is conducted with and without the
VAAI FullCopy primitive enabled. The
test logs note the execution times,
with and without the VAAI FullCopy
primitive enabled, but the time does
not determine the outcome of the
test.

VMware, Inc. 45
VMware Storage Certification Guide (SCSI Block)

Test Name Test Description Estimated Test Run Time (in minutes)

Full_Copy_Clone_VM This test verifies that virtual machine 20


cloning operations function properly
with the VAAI FullCopy primitive
enabled. The test clones a virtual
machine to the same datastore as
the source virtual machine and to a
different datastore.
The operation compares execution
time with and without enabling the
VAAI FullCopy primitive. The test
passes only if the execution time with
VAAI enabled is less than with VAAI
deactivated.

VAAI Array reported XCOPY Transfer Size Tests

VMware, Inc. 46
VMware Storage Certification Guide (SCSI Block)

Test Name Test Description Estimated Test Run Time (in minutes)

Note
n For running the variable VAAI Array reported XCOPY Transfer size tests, create the following RHEL 7 virtual
machines on the primary datastore that is registered to the primary ESXi host.
n XCOPY_VM_eager_zeroed_thick
n XCOPY_VM_thick
n XCOPY_VM_thin
n Ensure that the above VMs have the same root password.
n The guest operating system’s VMDK type of the three RHEL 7 virtual machines that you create must correspond to
the virtual machine’s name.
n Run the following command on the LUNs used to run the tests and make sure VAAI T10 plug-in VMW_VAAIP_T10
is listed.

esxcli storage core device vaai status get -d


<PRIMARYDATASTORELUNID/SECONDARYDATASTORELUNID>

n If VAAI T10 plug-in is not listed, perform the following steps:


a List the claim rules created for VAAI:

esxcli storage core claimrule list -c VAAI

b If there is an existing claimrule for the array, remove it using the following command:

esxcli storage core claimrule remove -r <ClaimRuleNumber> -c VAAI

c List the claim rules created for Filter:

esxcli storage core claimrule list -c Filter

d If there is an existing claimrule for the array, remove it using following commands. Skip to step f if there is no
claimrule.

esxcli storage core claimrule remove -r <ClaimRuleNumber> -c Filter

e Load and run VAAI claimrules:

esxcli storage core claimrule load --claimrule-class=Filter

esxcli storage core claimrule load --claimrule-class=VAAI

esxcli storage core claimrule run --claimrule-class=Filter

f Add filter claim rule using the following command for VAAI T10 plugin: \

esxcli storage core claimrule add -r 914 -t vendor -V <ArrayVendor> -M <ArrayModel>


-P VMW_VAAIP_T10 -c VAAI -a -s

After adding the claimrule, load and run the Filter using commands mentioned in steps 5.

Copy_sbin_Tool Copies the binaries required for the 30


tests to VMs.

VMware, Inc. 47
VMware Storage Certification Guide (SCSI Block)

Test Name Test Description Estimated Test Run Time (in minutes)

Verify_ArrayReported_HWTransferSi This test verifies the optimal transfer 20


ze size supported by the array using
the claimrule, when multiple segments
are enabled.

Clone_VM_MultipleSegmentEnabled This test verifies the clone operation 100


on a datastore where multiple
segments is enabled. The operation
is conducted by cloning the virtual
machines.

StorageVMotion_MultipleSegment This test verifies the Storage vMotion 100


operation on a datastore after
enabling multiple segment and setting
the maximum transfer size to the
value that the array supports.

Concurrent_Clone_SVMotion This test verifies that the concurrent 120


XCOPY offload tasks such as Storage
vMotion and cloning complete
successfully after enabling multiple
segments on one host and single
segment on another host. It also
verifies the Max Transfer size setting.

XCOPY_unmap This test verifies that the unmap 80


operation completes successfully after
the XCOPY command is run, with the
hardware transfer size set to the array
supports.

Thin Provisioning Tests

Note Before running the Thin Provisioning tests, ensure that a VMFS6 datastore is created using 10 GB thin provisioned
LUN. The datastore must be shared between both the ESXi hosts. Test cases fails if free space for the datastore exceeds
10 GB.

TPReportCapable This test verifies that a thin- 5


provisioned LUN is reporting its
capability to the ESXi hosts.

TP_Soft_Error_Distributed (Semi- This test verifies that the ESXi 15


automated) hosts report a soft error when thin-
provisioned LUN is shared among
multiple ESXi hosts, if a threshold
on a thin-provisioned VMFS volume
(TestVol) set by the storage admin has
been exceeded.

Note The VMFS volume must have a


capacity of 10 GB.

VMware, Inc. 48
VMware Storage Certification Guide (SCSI Block)

Test Name Test Description Estimated Test Run Time (in minutes)

TP_Hard_Limit_Provision_More This test verifies that the ESXi hosts 60


(Semi-automated) report out of space, if no more
physical storage can be allocated for a
given thin-provisioned VMFS volume
(TestVol). After additional physical
storage is added, the thin-provisioned
LUN can use this space.

Note The VMFS must have a


capacity of 10 GB.

TP UNMAP Tests

Note Review the information in Table 2-4 to update the space reclamation status in the claim form before submitting
the certification request.

DeleteVmdkAndReclaim This test verifies the space reclaim 60


operations after deleting the eager
zeroed thick vmdk files with heavy I/O
in VAAI mode.

DeleteVMandReclaim This test verifies the space reclaim 60


operations after deleting the VM with
heavy I/O in VAAI mode.

VGrowEagerZeroedThickSReclaim This test verifies the space 60


reclamation after deleting VM on
datastores that have undergone
Volume Grow operation.

Snapshot Consistency This test verifies the snapshot 180


consistency of the ESXi.

Automatic TPUNMAP Tests (Semi-automated)

VMFS_Based_Auto_Unmap_file_de This test verifies if the file deletion on 60


lete the VMFS6 datastore sends automatic
UNMAP requests to the storage array
and if the requested storage space
can be reclaimed from the TP LUN.

Note For accurate results forUNMAP


count, create a fresh datastore on the
newly created thin LUN.

VMFS_Based_Auto_Unmap_VM_d This test verifies if the deletion of the 60


elete VMs on the VMFS6 datastore sends
automatic UNMAP requests to the
storage array and if the requested
storage space can be reclaimed from
the TP LUN.

Note For accurate results for


UNMAP count, create a fresh
datastore on the newly created thin
LUN.

VMware, Inc. 49
VMware Storage Certification Guide (SCSI Block)

Test Name Test Description Estimated Test Run Time (in minutes)

VMFS_Based_Auto_Unmap_VM_di This test verifies if the VM disk 60


sk_delete deletion on the VMFS6 datastore
sends automatic UNMAP requests to
the storage array and if the requested
storage space can be reclaimed from
the TP LUNs.

Note For accurate results for


UNMAP count, create a fresh
datastore on the newly created thin
LUN.

VMFS_Based_Auto_Unmap_file_de This test verifies if the file deletion on 60


lete_on_spanned_VMFS6_DS the spanned VMFS6 datastore sends
automatic UNMAP requests to the
storage array and if the requested
storage space can be reclaimed from
the TP LUN.

Note For accurate results for


UNMAP count, create a fresh spanned
datastore on the two newly created
thin LUNs.

VMFS_Based_Auto_Unmap_VM_d This test verifies if the deletion of 60


elete_on_spanned_VMFS6_DS the VMs on the spanned VMFS6
datastore sends automatic UNMAP
requests to the storage array and if
the requested storage space can be
reclaimed from the TP LUN.

Note For accurate results for


UNMAP count, create a fresh spanned
datastore on the two newly created
thin LUNs.

VMFS_Based_Auto_Unmap_VM_di This test verifies if the VM Disk 60


sk_delete_on_spanned_DS deletion on the spanned VMFS6
datastore sends automatic UNMAP
requests to the storage array and if
the requested storage space can be
reclaimed from the TP LUNs.

Note For accurate results for


UNMAP count, create a fresh spanned
datastore on the two newly created
thin LUNs.

VMware, Inc. 50
VMware Storage Certification Guide (SCSI Block)

Test Name Test Description Estimated Test Run Time (in minutes)

Guest_Based_Auto_Unmap This test verifies if Automatic UNMAP 120


request sent by the Guest due to file
deletions in the VM disk is passed
to the storage array and the unused
space is reclaimed successfully.

Note For accurate results for


UNMAP count, create a fresh spanned
datastore on the two newly created
thin LUNs.

Permanent Device Loss Test

Unplanned_Device_Loss (Semi- This test verifies that removing or 30


automated) unmapping a SAN LUN connected
to multiple ESXi hosts (known as
unplanned permanent device loss
condition) by the storage array
software does not impact virtual
machine I/O running on a different
SAN LUN.

Note Virtual Machine must be


powered off before the test.

iSER Tests

iSER_Failover This test verifies if ESXi works well 60


with failover/failback operations.

iSER_AllPathDown This test verifies APD behavior. 60

iSER_DT This test validates the IO correctness 60


on the iSCSI LUN using dt tool.

iSER_ReserveRelease This test verifies that ESXi is resilient 60


to short term LUN reservation from
other host.

iSER_RDM_Import_Export_Physical This test verifies Raw Disk Mapping 120


Physical mode’s import and export
behavior.

iSER_RDM_Import_Export_Virtual This test verifies Raw Disk Mapping 120


Virtual mode’s import and export
behavior.

iSER_SVmotionWithSnapshot This test verifies if the VM migration 120


is successful from source LUN to
destination LUN.

iSER_SuspendResume This test verifies that ESXi works well 60


with the suspend/resume operation.

iSER_Target_LunReset This test verifies correct behavior of 60


the SCSI LUN-reset command.

VMware, Inc. 51
VMware Storage Certification Guide (SCSI Block)

Test Name Test Description Estimated Test Run Time (in minutes)

iSER_VMFSSpan This test verifies that the ESXi can use 60


vmkfstools to add a new device to the
existing VMFS datastore.

iSER_MaskUnMaskLun This test verifies the functionality of 60


LUN masking using PSA claim rule
when iSER is enabled.

iSER_AddRemove This test verifies that sessions can be 60


added and removed when iSER is
enabled.

Note Tests similar to the IPv4 configuration appear for IPv6 based on your questionnaire selections. Descriptions for
the common tests appear earlier in this table. Following are the details specific to IPv6 tests.

Dynamic Target Discovery with Validates the creation of VMkernel 20


Initiator having DHCPv6 address port group for the IPv6 address
assigned from the DHCPv6 server
and if targets can be discovered
successfully.

Dynamic Target Discovery with Validates the creation of VMkernel 20


Initiator having Router advertised port group for the IPv6 address
IPv6 address assigned from router advertisement
and targets can be discovered
successfully.

Dynamic Target Discovery with Validates the creation of VMkernel 20


Initiator having Single Static IPv6 port group with multiple IPv6 Static
address addresses is successful and targets
can be discovered successfully.

Dynamic Target Discovery with Validates the creation of VMkernel 20


Initiator having multiple Static IPv6 port group with multiple IPv6 Static
address addresses is successful and targets
can be discovered successfully.

Dynamic Target Discovery with Validates the creation of a VMkernel 20


Initiator having multiple IPv6 port group with multiple IPv6 address
addresses from different sources assigned from router advertisements,
DHCPv6 server and one or more
staticIPv6 addresses is successful
and targets can be discovered
successfully.

Dynamic Target Discovery with iSCSI Verifies that ISCSI targets can be 20
IPv6 Target Names discovered over ipv6 iSCSI SAN
by specifying the IPv6 iSCSI target
names.

Static Target Discovery with Initiator Validates the creation of VMkernel 20


having DHCPv6 address port group for the IPv6 address
assigned from the DHCPv6 server
and targets can be discovered
successfully.

VMware, Inc. 52
VMware Storage Certification Guide (SCSI Block)

Test Name Test Description Estimated Test Run Time (in minutes)

Static Target Discovery with Initiator Validates the creation of VMkernel 20


having Router advertised IPv6 port group for the IPv6 address
address assigned from router advertisement
and targets can be discovered
successfully.

Static Target Discovery with Initiator Validates the creation of VMkernel 20


having Single Static IPv6 address port group with single IPv6 Static
address is successful and targets can
be discovered successfully.

Static Target Discovery with Initiator Validates the creation of VMkernel 20


having multiple Static IPv6 addresses port group with multiple IPv6 static
address is successful and targets can
be discovered successfully.

Static Target Discovery with Initiator Validates the creation of VMkernel 20


having multiple IPv6 addresses from port group with multiple IPv6 address
different sources assigned from router advertisements,
DHCPv6 server and one or more
staticIPv6 address is successful
and targets can be discovered
successfully.

Static Target Discovery with iSCSI Verifies that iSCSI targets can be 20
IPv6 Target Names discovered over ipv6 iSCSI SAN by
specifying the IPv6 iSCSI Target
names.

Target discovery with discovery Verifies that the same subnet targets 20
IPv6 address in same Subnet with are discovered through the iSCSI
portbinding for dependent-iSCSI adapter when there is compliant
adapters port binding configured for the iSCSI
adapter.

Target discovery with targets in Verifies that different subnet targets 20


different subnet and reachable only are discovered through the gateway
through gateway for independent- for independent-iSCSI adapters.
iSCSI adapters

Verify the Boot time with iSCSI targets The purpose of this test case is to 20
discovered using ipv6 iSCSI SAN verify the boot time with iSCSI.

Verify overnight session add/remove The purpose of this test case is 20


stress to the iSCSI targets discovered to verify the iSCSI configuration by
using iSCSI IPv6 SAN adding and removing the sessions
continuously.

Verify overnight Target add/remove The purpose of this test case is 20


stress to the iSCSI targets discovered to verify the iSCSI configuration by
using iSCSI IPv6 SAN adding and removing and rescanning
the Targets continuously over iSCSI
IPv6 SAN.

This chapter includes the following topics:

n SCSI-3 Write Exclusive-Registrants Only (WE-RO) Persistent Reservation Tests

VMware, Inc. 53
VMware Storage Certification Guide (SCSI Block)

n Configuring Shared Pass-through RDM's

n Adding the RDM to a Virtual Machine on ESXi B

n GOS SCSI-3 Persistent Reservation Tests

n SCSI-3 Write Exclusive-All Registrants Persistent (WE-AR) Reservation Tests

n Creating a Datastore on Misaligned Partitions

SCSI-3 Write Exclusive-Registrants Only (WE-RO) Persistent


Reservation Tests

Prerequisites

n Red Hat Enterprise Linux (RHEL 6) 64-bit for LSI SAS is the recommended Guest Operating
Systems for SCSI3PR Tests.

n The RHEL6 VM name must be in <VMname>_test_vm format, for example :


SCSIPRHost1_test_vm. Also remove other VM's from the inventory during SCSI3PR tests.

Note Hosts must not be part of the HA/DRS cluster.

Procedure

1 Deploy RHEL 6 64 bit on both ESXi hosts.

2 Install STAF. To install STAF on VM, perform the following steps:

a Run the following commands:

# yum --assumeyes install wget

# yum --assumeyes install unzip

# wget http://sourceforge.net/projects/staf/files/staf/V3.4.26/
STAF3426-setup-linux-amd64.bin

# chmod 777 ./STAF3426-setup-linux-amd64.bin

# ./STAF3426-setup-linux-amd64.bin -DACCEPT_LICENSE=1 -i silent


-DUSE_TCP_VERSION=IPV4_IPV6 -r staf_install.log

b Set the trust level to 5.

c Edit the file /usr/local/staf/bin/STAF.cfg

# vi /usr/local/staf/bin/STAF.cfg

d Add the following lines under # Set default local trust:

trust machine * level 5

trust user * level 5

VMware, Inc. 54
VMware Storage Certification Guide (SCSI Block)

e Reboot the virtual machine:

# reboot

3 Deactivate firewall on the VM.

4 Download and install SG3-Util package version 1.28 and above, and its dependency packages.

5 Configure shared pass-thru RDM's on both RHEL 6 VMs

Note For certain tests like vMotion_Storage_vMotion, VMware HA and DRS must not have a
configured shared RDM. Ensure that the shared RDM is created just before SCSI-3PR reserve
tests and removed as soon as the tests are successfully completed.

Configuring Shared Pass-through RDM's


Add RDM to RHEL6 Virtual Machine on ESXi A.

Procedure

1 In the vSphere Web Client inventory, select the RHEL6 virtual machine and power it off.

2 Select Edit Settings and select a new SCSI controller device and click Add.

3 Expand New SCSI controller and change type to VMware paravirtual, change SCSI BUS
Sharing to Physical and click OK.

4 Select Edit Settings again and select a new RDM DISK device and click Add.

5 Select an unformatted LUN and click OK.

6 Expand New Hard disk, Ensure that the compatibility mode is physical and change virtual
Device Node to SCSI controller1 and SCSI (1:0).

7 Click Ok and power on the virtual machine.

Adding the RDM to a Virtual Machine on ESXi B

Procedure

1 From the vSphereWeb client inventory, select the RHEL6 virtual machine and power it off.

2 Select Edit Settings and select a new SCSI controller device and click Add.

3 Expand New SCSI controller and change type to VMware paravirtual, change SCSI BUS
Sharing to Physical and click OK.

4 Select Edit Settings again and select a new Exisiting Hard Disk device and click Add.

5 Select the vmdk file from the disk, which was added as RDM in the virtual machine on ESXi A
and click OK.

6 Expand New Hard disk and change virtual Device Node to SCSI controller1 and SCSI (1:0).

VMware, Inc. 55
VMware Storage Certification Guide (SCSI Block)

7 Click OK and power on the virtual machine.

GOS SCSI-3 Persistent Reservation Tests


These tests require a RHEL virtual machine on the ESXiA and ESXi B hosts, sharing a pass-through
RDM LUN, and LSI SAS on the second virtual controller for each virtual machine.

Note The Virtual Machine must be in the power on state.

Test Name Test Description Estimated Test Run Time (in minutes)

SCSI3PR_Multipath_Preempt_Fixed This test verifies the functionality of 20


pre-empting a reservation that applies
to all available paths for FIXED path
policy. This is applicable to an Active-
Active storage array.

SCSI3PR_Multipath_Preempt_MRU This test verifies the functionality of 20


pre-empting a reservation that applies
to all available paths for MRU path
policy. This is applicable to an Active-
Passive storage array.

SCSI3PR_Multipath_Preempt_RR This test verifies the functionality of 20


pre-empting a reservation that applies
to all available paths for RR path
policy.

SCSI3PR_Reservation_Power_Cycle This test verifies the reservation key 20


and reservation are retained after
the ESXi Host/virtual machine power
cycles (off/on). All virtual machines
are powered off before the test.

SCSI3PR_Benign_Cluster_Failover_ This test verifies a successful benign 20


ptRDM cluster failover of the reservation on a
pass-through RDM LUN.

SCSI3PR_Failover_HBA This test verifies that the reservation 20


keys and the persistent reservation
are retained after HBA failover.

SCSI3PR_Failover_SP This test verifies that the reservation 20


keys and the persistent reservation
are retained after storage processor
failover.

SCSI3PR_Multipath_Clear_Fixed This test verifies the functionality of 20


clearing a reservation that applies to
all available paths for a FIXED path
policy. This is applicable to an Active-
Active storage array.

VMware, Inc. 56
VMware Storage Certification Guide (SCSI Block)

Test Name Test Description Estimated Test Run Time (in minutes)

SCSI3PR_Multipath_Clear_MRU This test verifies the functionality of 20


clearing a reservation that applies
to all available paths for MRU path
policy. This is applicable to an Active-
Passive storage array.

SCSI3PR_Multipath_Clear_RR This test verifies the functionality of 20


clearing a reservation that applies to
all available paths for RR path policy.
This is applicable to an Active-Active
storage array.

SCSI3PR_Multipath_Register_Fixed This test verifies the functionality of 20


registering a reservation key that
applies to all available paths for FIXED
path policy. This is applicable to an
Active-Active storage array.

SCSI3PR_Multipath_Register_MRU This test verifies the functionality of 20


registering a reservation key that
applies to all available paths for MRU
path policy. This is applicable to an
Active-Passive storage array.

SCSI3PR_Multipath_Register_RR This test verifies the functionality of 20


registering a reservation key that
applies to all available paths for RR
path policy. This is applicable to an
Active-Active storage array.

SCSI3PR_Multipath_Release_Fixed This test verifies the functionality 20


of releasing a reservation key that
applies to all available paths for a
FIXED path policy. This is applicable
to an Active-Active storage array.

SCSI3PR_Multipath_Release_MRU This test verifies the functionality 20


of releasing a reservation key that
applies to all available paths for MRU
path policy. This is applicable to an
Active-Passive storage array.

SCSI3PR_Multipath_Release_RR This test verifies the functionality 20


of releasing a reservation key that
applies to all available paths for RR
path policy. This is applicable to an
Active-Active storage array.

SCSI3PR_Multipath_Reserve_Fixed This test verifies the functionality of 20


reservation that applies to all available
paths for FIXED path policy. This is
applicable to an Active-Active storage
array.

VMware, Inc. 57
VMware Storage Certification Guide (SCSI Block)

Test Name Test Description Estimated Test Run Time (in minutes)

SCSI3PR_Multipath_Reserve_MRU This test verifies the functionality of 20


reservation that applies to all available
paths for MRU path policy. This
is applicable to an Active-Passive
storage array.

SCSI3PR_Multipath_Reserve_RR This test verifies the functionality of 20


reservation that applies to all available
paths for RR path policy.

SCSI3PR_Successful_Challenge_ptR This test successfully challenges 20


DM reservation on a pass-thru RDM LUN.

SCSI3PR_Successful_Defence_ptRD This test successfully defends 20


M reservation on a pass-thru RDM LUN.

SCSI-3 Write Exclusive-All Registrants Persistent (WE-AR)


Reservation Tests
These tests require an additional RHEL virtual machine on the ESXi A and ESXi B hosts, sharing a
pass-through RDM LUN, and VMware paravirtual on the second virtual controller for each virtual
machine.

Refer SCSI-3 PR WE-RO tests configuration steps for configuring RHEL VM.

Note
n The virtual machine must be in the power on state.

n Multiple paths from hosts to storage are required: Use FIXED MPP only.

Table 4-1. SCSI-3 WE-AR Persistent Reservation Tests - Shared VMDK

Test Description Runtime

ClusteredVMDK_NVMe_PRIN_Read This test verifies the SCSI3PR PRIN 20 minutes


Keys readkeys functionality.

ClusteredVMDK_NVMe_PRIN_Read This test verifies the SCSI3PR PRIN 20 minutes


Reservation ReadReservation functionality.

ClusteredVMDK_NVMe_PROUT_Re This test verifies the SCSI3PR PROUT 20 minutes


gister Register functionality.

SClusteredVMDK_NVMe_PROUT_R This test verifies the SCSI3PR PROUT 20 minutes


eserve Reserve functionality with wear type
reservations.

ClusteredVMDK_NVMe_PROUT_Rel This test verifies the SCSI3PR PROUT 20 minutes


ease Release functionality with wear type
reservations.

ClusteredVMDK_NVMe_PROUT_Cle This test verifies the SCSI3PR PROUT 20 minutes


ar Clear functionality with wear type
reservations.

VMware, Inc. 58
VMware Storage Certification Guide (SCSI Block)

Table 4-1. SCSI-3 WE-AR Persistent Reservation Tests - Shared VMDK (continued)

Test Description Runtime

ClusteredVMDK_NVMe_PROUT_Pre This test verifies the SCSI3PR PROUT 20 minutes


empt Preempt functionality with wear type
reservations.

ClusteredVMDK_NVMe_PROUT_Pre This test verifies the SCSI3PR PROUT 20 minutes


emptAndAbort PreemptAndAbort functionality with
wear type reservations.

ClusteredVMDK_NVMe_PROUT_Re This test verifies the SCSI3PR PROUT 20 minutes


gisterAndIgnoreExistingKey Register functionality with wear type
reservations by IgnoreExistingKey.

ClusteredVMDK_NVMe_RegisterMult This test verifies the SCSI3PR PROUT 20 minutes


ipleSameKey_SingleHost Register functionality with wear type
reservations with same key on same
host.

ClusteredVMDK_NVMe_RegisterMult This test verifies the SCSI3PR PROUT 20 minutes


ipleDIffKeys_SingleHost Register functionality with wear type
reservations with different key on
same host.

ClusteredVMDK_NVMe_RegisterMult This test verifies the SCSI3PR PROUT 20 minutes


ipleDIffKeys_MultipleHosts Register functionality with wear type
reservations with different key on
diffrent hosts.

ClusteredVMDK_NVMe_Preempt_U This test verifies the SCSI3PR PROUT 20 minutes


nRegisteredITNexus Release functionality with wear type
reservations.

ClusteredVMDK_NVMe_Preempt_In This test verifies the SCSI3PR PROUT 20 minutes


validKeys Preempt functionality with wear type
reservations when preempted with
invalid key.

ClusteredVMDK_NVMe_Preempt_Z This test verifies the SCSI3PR PROUT 20 minutes


ero Preempt functionality with wear type
reservations when preempted with
zero key

ClusteredVMDK_NVMe_Preempt.No This test verifies the SCSI3PR PROUT 20 minutes


MatchPRholder_ZeroSARKey reservations functionality with wear
type reservations gives confluct when
try to reserve same device from other
host.

ClusteredVMDK_NVMe_Reservation This test verifies the SCSI3PR PROUT 20 minutes


PowerCycle reservations is persistent post power
cycle.

ClusteredVMDK_NVMe_Multipath_R This test verifies the functionality of 20 minutes


egister registering a reservation key that
applies to all available paths for FIXED
pathpolicy.

VMware, Inc. 59
VMware Storage Certification Guide (SCSI Block)

Table 4-1. SCSI-3 WE-AR Persistent Reservation Tests - Shared VMDK (continued)

Test Description Runtime

ClusteredVMDK_NVMe_Multipath_R This test verifies the functionality 20 minutes


eserve of Reserving a reservation key that
applies to all available paths for FIXED
pathpolicy

ClusteredVMDK_NVMe_Multipath_R This test verifies the functionality 20 minutes


elease of Releasing a reservation key that
applies to all available paths for FIXED
pathpolicy.

ClusteredVMDK_NVMe_Multipath_C This test verifies the functionality 20 minutes


lear of Clearing a reservation key that
applies to all available paths for FIXED
pathpolicy.

ClusteredVMDK_NVMe_SCSICmndC This test verifies the status of SCSI 20 minutes


heck_Preempt commands in SCSI3PR pre-empt
workflow.

ClusteredVMDK_NVMe_SCSICmndC This test verifies the status of 20 minutes


heck_Clear SCSI commands in SCSI3PR clear
registration and reservation workflow.

ClusteredVMDK_NVMe_SCSICmndC This test verifies the status of 20 minutes


heck_Release SCSI commands in SCSI3PR release
workflow.

ClusteredVMDK_NVMe_Unregister This test verifies the functionality 20 minutes


of the Persistent Reservation Out
service action code Register and
Ignore Existing Key with key=0x0.

Creating a Datastore on Misaligned Partitions


Perform the following steps to create a datastore on misaligned partitions:

Note Use freshly created LUNs to run the following commands.

1 Identify the ending sector number by running the following command:

partedUtil getUsableSectors /vmfs/devices/disks/<LUN ID>

Example output:

partedUtil getUsableSectors
/vmfs/devices/disks/naa.600601605bd02d0048f0a9c64a16e511
1 41943039

In the preceding example, 41943039 is end sector number. Use this number to create
partition.

2 Create the misaligned partition using the following command:

VMware, Inc. 60
VMware Storage Certification Guide (SCSI Block)

# partedUtil "setptbl" "/vmfs/devices/disks/<LUN ID>" "gpt" "1 4096 <end


sector> AA31E02A400F11DB9590000C2911D1B8 0"

3 Create a VMFS6 datastore using the created LUN:

# vmkfstools -C vmfs6 -S NewDatastore /vmfs/devices/disks/<LUN ID>:1

VMware, Inc. 61
iSCSI Storage Certification
5
This chapter contains information specific to iSCSI certifications.

This chapter includes the following topics:

n Hardware iSCSI Testbed Topology

n Tests

n Software iSCSI Testbed Topology

n Tests

n Software and Hardware iSCSI Testbed Topology

n Tests

n iSCSI Over RDMA

Hardware iSCSI Testbed Topology


For purposes of this certification, the term Hardware iSCSI in this section refers to an independent
HW iSCSI adapter. As defined in the VMware iSCSI SAN Configuration Guide for ESXi 5.x, an
independent HW iSCSI adapter implements its own networking and iSCSI configuration and
management interfaces.

To certify an independent HW iSCSI adapter, configure your testbed as described in this section.

To certify a dependent HW iSCSI adapter, see Software iSCSI Testbed Topology or Software and
Hardware iSCSI Testbed Topology.

Set up the Hardware iSCSI test environment according to the topology shown in figure.

VMware, Inc. 62
VMware Storage Certification Guide (SCSI Block)

Figure 5-1. Hardware iSCSI Testbed Topology

The topology consists of the following components:

n Two ESXi hosts.

n Dual single ported HBAs or one single dual ported HBA on each ESXi host.

n The HBAs on any ESXi host must be from the same vendor. Different ESXi host may have
HBAs from a

different vendor.

Dual Ethernet switches.

Dual ported iSCSI storage controllers.

Note iSCSI adapters must be on a private dedicated network.

Tests
The Hardware iSCSI certification requires these additional tests:

Static_Discovery

UniDirectionalChap

VMware, Inc. 63
VMware Storage Certification Guide (SCSI Block)

Software iSCSI Testbed Topology


You have two options available for testbed configuration:

n Use two Software iSCSI adapters.

n Use one Software iSCSI adapter and one Dependent Hardware iSCSI adapter.

As defined in the VMware iSCSI SAN Configuration Guide for ESXi 5.x, a Dependent Hardware
iSCSI adapter depends on VMware networking and iSCSI configuration and management
interfaces provided by VMware.

Set up the Software iSCSI test environment according to the following topology.

Figure 5-2. Software iSCSI Testbed Topology

The topology consists of the following components:

n Two ESXi hosts.

n Dual single ported NICs or one single dual ported NIC on each ESXi host.

n Two Software iSCSI adapters on each ESXi host or one Software iSCSI adapter and one
Dependent Hardware iSCSI adapter on each ESXi host.

n Dual Ethernet switches.

n Dual ported iSCSI storage controllers.

n iSCSI adapters must be on a private dedicated network.

n For IPv6 tests, configure an IPv6 address for ESXi hosts and the iSCSI target array.

VMware, Inc. 64
VMware Storage Certification Guide (SCSI Block)

Binding iSCSI Ports to iSCSI Adapters on Both ESXi Hosts

Use the vSphere CLI command to bind the iSCSI port to the iSCSI adapter:

esxcli iscsi networkportal add -n port_name -A vmhba#

The following examples show how to bind multiple ports that you created for physical NICs to the
software iSCSI adapter or to multiple adapters (one for software iSCSI adapter, one for dependent
hardware iSCSI adapter).

Note For software iSCSI, repeat this command for each iSCSI port connecting all ports with the
software iSCSI adapter.

Example: Connecting iSCSI Ports to the Software iSCSI Adapter

This example shows how to connect the iSCSI ports vmk1 and vmk2 to the software iSCSI adapter
vmhba33.

1 Connect vmk1 to vmhba33: esxcli iscsi networkportal add -n vmk1 -A vmhba33

2 Connect vmk2 to vmhba33: esxcli iscsi networkportal add -n vmk2 -A vmhba33

3 Verify vmhba33 configuration: esxcli iscsi networkportal list -A vmhba33

Both vmk1 and vmk2 must be listed.

If you use the vSphere Web Client to display the Paths view for the vmhba33 adapter in this
example, you see that the adapter uses two different paths to access the same target. The runtime
names of the paths are vmhba33:C1:T1:L0 and vmhba33:C2:T1:L0. C1 and C2 indicate the two
network adapters used for multipathing in this example.

Example: Connecting iSCSI Ports to One Software iSCSI Adapter and One Dependent Hardware
iSCSI Adapter

This example shows how to connect the iSCSI ports vmk1 and vmk2 to the corresponding SW iSCSI
adapter vmhba33 and the Dependent Hardware iSCSI adapter (vmhba34).

1 Connect vmk1 to vmhba33: esxcli iscsi networkportal add -n vmk1 -A vmhba33

2 Connect vmk2 to vmhba34: esxcli iscsi networkportal add -n vmk2 -A vmhba34

3 Verify vmhba33 configuration: esxcli iscsi networkportal list -A vmhba33

4 Verify vmhba34 configuration: esxcli iscsi networkportal list -A vmhba34

VMware, Inc. 65
VMware Storage Certification Guide (SCSI Block)

Figure 5-3. Example Network Configuration Setup for Software and Hardware iSCS - Screen 1

Figure 5-4. Example Network Configuration Setup for Software and Hardware iSCS - Screen 2

Tests
The Software iSCSI certification requires the following additional tests.

Tests marked with two asterisks (**) are part of a partial certification as well as a full certification.

UniDirectionalChap

VMKNIC_Failover

Static_Discovery

BiDirectionalChap

For the VMKNIC_Failover test: Use vmk1, vmk2 for the port group name in the vmkernel virtual
switches on ESXi A and ESXi B.

VMware, Inc. 66
VMware Storage Certification Guide (SCSI Block)

Software and Hardware iSCSI Testbed Topology


The Software and Hardware iSCSI Certification allows certification of two different types of iSCSI,
Software and Hardware, in the same certification run.

Additionally, there are two configuration options for the Software iSCSI part of the configuration.

n Use two Software iSCSI adapters.

n Use one Software iSCSI adapter and one Dependent Hardware iSCSI adapter.

As defined in the VMware iSCSI SAN Configuration Guide for ESXi 5.x, a Dependent Hardware
iSCSI adapter depends on VMware networking and iSCSI configuration and management
interfaces provided by VMware.

Set up the Software and Hardware iSCSI test environment according to the following topology:

Figure 5-5. Software and Hardware iSCSI Testbed Topology

The topology consists of the following components:

n Two ESXi hosts.

n Dual single ported NIC or single dual ported NIC installed on the first ESXi host.

n Dual single ported HBAs or single dual ported HBA installed on the second ESXi host.

n Two Software iSCSI adapters must be configured on ESXi A or one Software iSCSI adapter and
one Dependent Hardware iSCSI adapter must be configured on ESXi A.

n Same Independent Hardware iSCSI adapters must be configured on ESXi B.

VMware, Inc. 67
VMware Storage Certification Guide (SCSI Block)

n Dual Ethernet switches.

n Dual ported iSCSI storage controllers.

n iSCSI adapters must be on a private dedicated network.

n For IPv6 tests, configure an IPv6 address for ESXi hosts and the iSCSI target array.

Binding iSCSI Ports to iSCSI Adapters on ESXi Host A

Use the vSphere CLI command to bind the iSCSI port to the iSCSI adapter:

esxcli iscsi networkportal add -n port_name -A vmhba#

The following examples show how to bind multiple ports that you created for physical NICs to
the software adapter or to multiple adapters (one for software iSCSI adapter, one for dependent
hardware iSCSI adapter).

Note With dependent hardware iSCSI, make sure to bind each port to an appropriate
corresponding adapter.

Example: Connecting iSCSI Ports to the Software iSCSI Adapter

This example shows how to connect the iSCSI ports vmk1 and vmk2 to the software iSCSI adapter
vmhba33.

1 Connect vmk1 to vmhba33: esxcli iscsi networkportal add -n vmk1 -A vmhba33

2 Connect vmk2 to vmhba33: esxcli iscsi networkportal add -n vmk2 -A vmhba33

3 Verify vmhba33 configuration: esxcli iscsi networkportal list -A vmhba33

Both vmk1 and vmk2 must be listed.

If you use the vSphere Web Client to display the Paths view for the vmhba33 adapter in this
example, you see that the adapter uses two different paths to access the same target. The runtime
names of the paths are vmhba33:C1:T1:L0 and vmhba33:C2:T1:L0. C1 and C2 indicate the two
network adapters used for multipathing in this example.

Example: Connecting iSCSI Ports to One Software iSCSI Adapter and One Dependent Hardware
iSCSI Adapter

This example shows how to connect the iSCSI ports vmk1 and vmk2 to the corresponding SW iSCSI
adapter vmhba33 and the Dependent Hardware iSCSI adapter (vmhba34).

1 Connect vmk1 to vmhba33: esxcli iscsi networkportal add -n vmk1 -A vmhba33

2 Connect vmk2 to vmhba34: esxcli iscsi networkportal add -n vmk2 -A vmhba34

3 Verify vmhba33 configuration: esxcli iscsi networkportal list -A vmhba33

4 Verify vmhba34 configuration: esxcli iscsi networkportal list -A vmhba34

VMware, Inc. 68
VMware Storage Certification Guide (SCSI Block)

Figure 5-6. Example Network Configuration Setup for Software iSCSI - Screen 1

Figure 5-7. Example Network Configuration Setup for Software iSCSI - Screen 2

Tests
The Software and Hardware iSCSI certification requires these additional tests:

UniDirectionalChap

Max_Targets

BiDirectionalChap

iSCSI Over RDMA


iSCSI Extensions for RDMA (iSER) is an upper layer protocol (ULP) over RDMA infrastructure. It
runs over various RDMA infrastructures such as RoCE, RoCEv2, IB, and iWARP. iSER uses the
RDMA protocol suite to supply higher bandwidth for block storage transfers, and is designed to

VMware, Inc. 69
VMware Storage Certification Guide (SCSI Block)

improve performance and lower CPU utilization by replacing the TCP stack's transport protocol
with an RDMA transport.

Since moving data uses RDMA, it lands in its final destination on the remote end without additional
copying from the TCP packet buffers. An RDMA engine within the RDMA controller handles data
transport and security concerns.

Note Storage vendors who support iSER at their target array side must go through the
certification process to list their model in HCL.

iSCSI Over RDMA Topology

Figure 5-8. iSCSI Over RDMA Topology

iSCSI over RDMA Testbed Requirements


The iSCSI over RDMA testbed requires the following:

n An iSCSI Over RDMA supported array

n An iSCSI Over RDMA supported HBA

n RHEL 6 OS

iSCSI Over RDMA Setup

Procedure

1 Add iSER HBA.

Run the following command on ESXi to add the iSER HBA:

# esxcli rdma iser add

2 Verify whether iSER HBA is added.

Run the following command to verify if your iSER HBA is configured:

# esxcli iscsi adapter list


Adapter Driver State UID Description
------- ------ ------- ----------------- --------------------
vmhba65 iser unbound iscsi.vmhba65 VMware iSCSI over RDMA (iSER) Adapter
vmhba66 iser unbound iscsi.vmhba66 VMware iSCSI over RDMA (iSER) Adapter

VMware, Inc. 70
VMware Storage Certification Guide (SCSI Block)

3 Install STAF 3.4.26.

LUN Requirement from Storage


Storage requires the following LUNs:

n 6 - 10 GB LUNs

n 6 - 2 GB LUNs

Test Configuration
The following list contains the requirements for the test configuration:

n One NFS server.

n One <VMname>. vmdk.

n Add a vmdk to a mount point created on the NFS server.

Configuring the NFS Server


The NFS server configuration is described in the following steps:

Procedure

1 Create the NFS server on any Linux machine (for example, RHEL 6).

2 Create a mount point on the NFS server (for example, /vol/).

3 Copy the <VMname>.vmdk file and add it to the mount point created on the NFS server.

Configuring the Datastore

Create a datastore on a iSER supported, 100 GB LUN.

Creating the iSER vmdk


Follow these steps to create a virtual machine named iSER.

Procedure

1 Create a RHEL 6 virtual machine with an 8 GB disk and name it RHEL6_U5_64bit_8G. Deploy
this virtual machine.

2 Power off the VM.

3 Copy the disk files to the NFS mount point that is, both RHEL6_U5_64bit_8G.vmdk and
RHEL6_U5_64bit_8G-flat.vmdk.
4 In addition, copy the disk files to the datastore you created, that is, copy both
RHEL6_U5_64bit_8G.vmdk and RHEL6_U5_64bit_8G-flat.vmdk.

Creating the Add.vmdk


Follow these steps to create a virtual machine named Add.

VMware, Inc. 71
VMware Storage Certification Guide (SCSI Block)

Procedure

1 Login to ESXi in the Web client.

2 Right click on host and select New Virtual Machine.

3 Select Create a new Virtual Machine and click Next.

4 Enter the VM name as Add and click Next.

5 Select Datastore and click Next.

6 Select Compatible with ESXi and later.

7 Select Linux as the Guest OS Family and RHEL 6 as the Guest OS Version.

8 Remove the existing hard disk by clicking the cross mark at the New Hard Disk option.

9 Select Existing Hard Disk from New Device in the drop down menu and click Add.

10 Browse the previously created RHEL vmdk (for example, the RHEL VMDK created in Step 4).

11 Go to Edit setting, select New Hard Disk from the New device drop down menu and click
Add.

12 Change the new hard disk size to 1 GB (must be 1 GB only) and click OK.

13 Go to the VM folder in the datastore on which the VM is deployed and locate Add.vmdk.

14 Copy the Add.vmdk to the NFS mount point created in Step 2 and also to the datastore
created in Step 3 under Configuring the NFS Server.

Tests

iSER_Failover

iSER_AllPathDown

iSER_DT

iSER_ReserveRelease

iSER_RDM_Import_Export_Physical

iSER_RDM_Import_Export_Virtual

iSER_SVmotionWithSnapshot

iSER_SuspentResume

iSER_Target_LunReset

iSER_VMFSSpan

iSER_MaskUnMaskLun

iSER_AddRemove

VMware, Inc. 72
VMware Storage Certification Guide (SCSI Block)

Test Parameters
The following table describes the test parameters that you must supply to the plug-in.

Table 5-1. Test Parameters

Test Parameters Description Example

iSERAUXVMHBA Enter iSER enabled HBA, connected vmhba2


from aux host to target.

ISERDATASTORE Enter the local datastore name. datastore1

ISERIQN Enter the iqn to discover iSER target. iqn.1998-01.com.vmware:abc-1bbr.en


g.a ad.com:1966904017:64

ISERNFSHOST Enter NFS server hostname, NFS abc-efg-nfs01.eng.add.com


server fully Qualified Domain Name.

ISERNFSPATH Enter path of the mount point created /mountnfs/vol1


on NFS server.

ISERVMDKNAME Enter RHEL6_64 BIT VMDK name RHEL6_U5_64bit_8G.vmdk


created and copied to NFS server.

ISERTARGETIP Enter the IP address of iSER Target. 10.10.10.222

ISERTESTDRIVER Enter iSER hba driver details. iser

ISERTESTVMHBA Enter the iSER enabled HBA, vmhba2


connected from test host to target.

ISERVMNIC Enter any free NIC available on test vmnic1


host.

ISERVMHBAAUXIP Enter the initiator IP address of iSER 10.10.11.222


HBA Aux.

ISERVMHBAAUXIPSUBNET Enter the initiator subnet address of 255.255.255.0


iSER HBA Aux.

ISERVMHBATESTIP Enter the initiator IP address of iSER 10.10.11.222


HBA host.

ISERVMHBATESTIP Enter the initiator subnet address of 255.255.255.0


iSER HBA host.

VMware, Inc. 73
Fibre Channel Storage
Certifications 6
This chapter contains information specific to Fibre Channel SAN and DAS certifications.

This chapter includes the following topics:

n FC SAN Testbed Topology

n FC DAS Testbed Topology

FC SAN Testbed Topology


Set up the FC SAN test environment according to the topology shown in the following figure:

Figure 6-1. FC SAN Testbed Topology

The topology consists of:

n Two ESXihosts

n Dual single ported HBAs or single dual ported HBA on each ESXi host

VMware, Inc. 74
VMware Storage Certification Guide (SCSI Block)

n The HBAs on any ESXi host must be from the same vendor. Different ESXi host may have
HBAs from a different vendor.

n Dual FC switches

n Dual ported FC storage controllers

FC DAS Testbed Topology


Set up the FC DAS test environment according to the topology shown in the following figure.

Figure 6-2. FC DAS Testbed Topology

The topology consists of:

n Two ESXi hosts

n Dual single ported HBAs or one single dual ported HBA on each ESXi host

n The HBAs on any ESXi host must be from the same vendor. Different ESXi host may have
HBAs from a different vendor.

n Dual ported FC storage controllers

VMware, Inc. 75
VMware Storage Certification Guide (SCSI Block)

n Dual FC storage controllers

VMware, Inc. 76
SVD/Gateway Storage
Certifications 7
The Storage Virtualization Device (SVD) certification allows you to certify multi-protocol SVDs and
Gateway devices. Gateways are typically protocol converters like the iSCSI Gateways.

SVDs can aggregate and virtualize external SAN LUNs and can also perform protocol conversions
like Gateways. SVDs can be array controller, network, appliance or software-based storage
virtualization features.

The SVD certification is for ESXi hosts connected to multi-protocol SVDs and Gateways that export
LUNs from back-end external SAN storage devices.

n Array-based SVD devices:

If you follow the optimization guidelines listed here, you do not need to perform two separate
certifications for array-based SVDs. The SVD will be listed under both Storage Array as well as
SVD in the VMware Hardware Compatibility List with one certification.

Use internal storage array LUNs in the SVD for:

n Datastore1

n Pass-thru and non-pass-thru RDMs assigned to virtual machines located on ESXi A host

Use back-end storage array LUNs for all remaining datastores and RDMs.

n Network-based or Appliance-based SVD devices:

Use back-end storage array LUNs for all datastores and RDMs.

n Switch-based SVD devices:

Use back-end storage array LUNs for all datastores and RDMs.

This chapter contains information specific to SVD certifications for the Software and Hardware
iSCSI protocol.

This chapter includes the following topics:

n SVD/Gateway Testbed Topology

n Software and Hardware iSCSI SVD Topology

n NAS SVD Topology

n SVD/Gateway Tests

VMware, Inc. 77
VMware Storage Certification Guide (SCSI Block)

SVD/Gateway Testbed Topology


Set up the SVD/Gateway test environment according to the topology shown in figure.

Figure 7-1. SVD/Gateway Testbed Topology

The topology consists of the following components:

n Two ESXi hosts.

n Dual single ported HBAs/NICs or one single dual ported HBA/NIC on each ESXi host.

n The HBAs on any ESXi host must be from the same vendor. Different ESXi host may have
HBAs from a different vendor.

n Dual front-end FC or Ethernet switches.

n Dual back-end FC switches.

n SVD/Gateway storage controllers.

n Single back-end FC storage array.

n Dual ported back-end storage controllers.

Software and Hardware iSCSI SVD Topology


The Software and Hardware iSCSI SVD topology consists of the following components:

n Two ESXi hosts.

n Dual single ported NIC or single dual ported NIC installed on one ESXi host.

n Dual single ported HBAs or single dual ported HBA installed on the second ESXi host.

n Dual front-end Ethernet switches.

n Two Software iSCSI adapters must be configured on ESXi A or one Software iSCSI adapter and
one dependent Hardware iSCSI adapter must be configured on ESXi A.

VMware, Inc. 78
VMware Storage Certification Guide (SCSI Block)

n Same independent Hardware iSCSI adapters must be configured on ESXi B.

n iSCSI SVD/Gateway device.

n Dual back-end FC switches.

n Single back-end FC storage array.

n Dual ported back-end storage controllers.

NAS SVD Topology


Set up the NAS test environment according to the topology shown in figure.

Figure 7-2. NAS SVD Testbed Topology

The topology consists of the following components:

n Two ESXi hosts.

VMware, Inc. 79
VMware Storage Certification Guide (SCSI Block)

n Two NICs teamed on ESXi.

n Single front-end Ethernet switch.

n Dual FC switches on the NAS back-end.

n Two NICs teamed on each NAS.

n Two NAS nodes clustered or NAS SVD device.

n One FC storage array on the back-end.

SVD/Gateway Tests
Run the following tests for the SVD/Gateway certification for FC and iSCSI:

n SVD_Backend_Switch_Port_Disable_Enable

n SVD_Backend_StorageProcessor_Reset_Stress

n SVD_backend_StorageProcessor_NDU

VMware, Inc. 80
Certification Results Submission
8
To submit the certification results, enter the necessary details in the Submission page and click
SUBMIT RESULTS:

n VCG Posting date: Enter the VCG posting date.

n Company Name: Enter your company name.

n Full Name: Enter your full name.

n Email Address: Enter the email address.

n Comments: Enter comments (if any).

Note Other details needed for submission such as Firmware Version and Array Model and so on
are fetched by the Collect_Storage_Information test. Ensure that this test is run just before you
submit the results.

For more information about submitting the test results, see the VMware Integration Validation
User Guide.

VMware, Inc. 81
Appendix
9
Third Party Script
The ThirdPartyScript requires details about Switch IP addresses, Port numbers, Switch login
credentials for host and Storage Switches. For SVD topology, user needs to provide SVD switch
details. This script automatically opens a connection to a switch or storage processor (SP) to:

n Activate/Deactivate switch port

n Reset SP

n Perform Non Destructive firmware Update on the SP (SP NDU)

The script then closes the connection.

Write your own python script using Sample Script as a template.

Important The script must be python3 compliant.

You must implement the following four functions in the script:

n Activate a switch port

n Deactivate a switch port

n Reset SP

n Perform SP NDU

Before running the tests validate the script by running below commands:

n Enable Port:

Python3 <scriptName.py> <switchIP> <Port> <switchUser> <switchPassword>


enable

n Disable Port:

Python3 <scriptName.py> <switchIP> <Port> <switchUser> <switchPassword>


disable

n SP NDU:

Python3 <scriptName.py> <sp> spndu

VMware, Inc. 82
VMware Storage Certification Guide (SCSI Block)

n SP Reset:

Python3 <scriptName.py> <sp> spreset

Note where

n switchIP/sp is the IP address of the device

n Port is the port number on the switch

n switchUser is the userid to login to switch

n switchPassword is the password to login to the switch

The script expects a string value, that is, activate to activate the port, deactivate to deactivate the
port, spndu to perform NDU on SP and spreset to perform SP Reset. Running the script with the
enable parameter must call the function to enable the switch port. Running the script with the
deactivate parameter must call the function to deactivate the switch port.

Before running the tests, you must perform the following steps:

1 Copy the python script to /certcontent directory of agent VM.

2 Change the permissions of the script by running the following command in agent VM.

chmod +x /certcontent/<scriptName>.py

3 Log in to agent VM, edit the settings.conf file and change the following values from False to
True:

#vi /vmware/agent/conf/settings.conf
priveleged=True
usehostnetwork=True

Note To avoid revealing passwords during certification, use temporary or dummy passwords/
accounts on the switches and SPs.

VMware, Inc. 83
VMware Storage Certification Guide (SCSI Block)

Sample Script
Agent VM supports connection to switch through Telnet and SSH. You can use either Telnet
or SSH script to establish connection to switch and perform the desired operation. Following
are the script examples. Check the activate/deactivate command syntax and ensure that it is
changed to reflect the correct command syntax for your switch. Also, implement SP Reset and
NDU operations according to your SP behaviour.

Note
n Ensure that SSH/Telnet to switch is working from agent VM.

n Since the scripts are in python, you must resolve indentation errors of the script by running it
in format mentioned above.

n Below scripts are available for download on https://code.vmware.com/group/cert/8.0/


storage.

Telnet Sample Script

#!/usr/bin/env python3
import json
import sys
import configparser
import os
import re
import subprocess
import telnetlib
import xml.etree.ElementTree as ET
#import paramiko

'''
from xml.etree.ElementTree import ElementTree
from xml.etree.ElementTree import Element
import xml.etree.ElementTree as etree'''

def disableEnable(switchIP, port, username, password, operation):


print ("you are in disable enable method")

help = 'help'
print(switchIP)
print(port)
print(username)
tn = telnetlib.Telnet(switchIP,'23')
tn.write(username.encode('ascii') + b"\r")
tn.write(password.encode('ascii') + b"\r")

tn.write('enable'.encode('ascii') + b"\r")
tn.write(password.encode('ascii') + b"\r")
tn.write('configure terminal'.encode('ascii') + b"\r")
tn.write(('interface GigabitEthernet'+port).encode('ascii') + b"\r")
if (operation == 'disable'):
tn.write('shutdown'.encode('ascii') + b"\r")
elif (operation == 'enable'):

VMware, Inc. 84
VMware Storage Certification Guide (SCSI Block)

tn.write('no shutdown'.encode('ascii') + b"\r")


tn.write('exit'.encode('ascii') + b"\r")
tn.write('exit'.encode('ascii') + b"\r")
#tn.write('show interfaces status'.encode('ascii') + b"\r")
tn.write('exit'.encode('ascii') + b"\r")
print(tn.read_all().decode('ascii'))
tn.close()

def storageArrayOperation(sp, operation):


splogin = 'myuser' # provide your SP user name
sppassword = 'mypassword' # provide your SP password

if (operation == 'spreset'):
print ("\n Perfrom Storage Processor Reset operation to your array here: SP " +
sp + " login " + splogin + " password " + sppassword + " operation " + operation) #,
sp,splogin,sppassword,operation)
elif (operation == 'spndu'):
print ("Perfrom Storage Processor Non Disruptive Upgrade (SP NDU) operation to your
array here: SP " + sp + " login " + splogin + " password " + sppassword + " operation " +
operation)
else:
print ("Invalid operation specified")
sys.exit(-1)

def main():
if len(sys.argv) == 6:
switch = sys.argv[1]
port = sys.argv[2]
userid = sys.argv[3]
password = sys.argv[4]
operation = sys.argv[5]

if not (switch or port or userid or password or operation):


print ("\n Usage: script.py switch port userid password operation\n")
print ("Example: script.py 127.0.0.1 1 tester secret disable\n")
sys.exit(-1)

print("\n Executing the script")


if operation == 'enable':
disableEnable(switch, port, userid, password, operation)
print ("\n Port %s is Enabled" %port)
elif operation == 'disable':
disableEnable(switch, port, userid, password, operation)
print ("\n Port %s is Disabled" %port)
else:
print ("\n Invalid operation specified ")

sys.exit(0)

elif len(sys.argv) == 3:
sp = sys.argv[1]
operation = sys.argv[2]

if not (sp or operation):

VMware, Inc. 85
VMware Storage Certification Guide (SCSI Block)

print ("\nUsage: script.py sp operation\n");


print ("Example: script.py 127.0.0.1 1 spndu\n");
sys.exit(-1)

print ("\n Executing the script")


if operation == 'spndu':
storageArrayOperation(sp, operation)
print("\n SP NDU on %s" %sp)
print("\n")
elif operation == 'spreset':
storageArrayOperation(sp, operation)
print ("\n SP Reset on %s" %sp)
else:
print ("Invalid operation specified")
sys.exit(-1)

sys.exit(0)

else:
print ("Invalid number of operations specified")
sys.exit(-1)

if __name__== '__main__':
main()

SSH Sample Script

#!/usr/bin/env python3
import json
import sys
import configparser
import os
import re
import subprocess
import xml.etree.ElementTree as ET
import paramiko
import time

'''
from xml.etree.ElementTree import ElementTree
from xml.etree.ElementTree import Element
import xml.etree.ElementTree as etree'''

def disableEnable(switchIP, port, usr, pwd, operation):

ssh_client = paramiko.SSHClient()
ssh_client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
print(switchIP)
print(port)
print(usr)
print(operation)
ssh_client.connect(hostname=switchIP, username=usr, password=pwd, timeout=10, port=22)
print ("Connection established")

VMware, Inc. 86
VMware Storage Certification Guide (SCSI Block)

chan = ssh_client.invoke_shell()
chan.send('enable\n')
time.sleep(0.5)
chan.send('1lvdp@s5\n')
time.sleep(0.5)
output = chan.recv(1024)
print(output.decode("ascii"))
chan.send('configure terminal\n')
time.sleep(0.5)
output = chan.recv(1024)
print(output.decode("ascii"))
chan.send('interface GigabitEthernet'+port+'\n')
time.sleep(0.5)
output = chan.recv(1024)
print(output.decode("ascii"))

if (operation == 'disable'):
chan.send('shutdown\n')
time.sleep(0.5)
elif (operation == 'enable'):
chan.send('no shutdown\n')
time.sleep(0.5)
else:
print ("Invalid operation specified. Failing the test");
sys.exit(-1)
chan.send('exit\n')
time.sleep(0.5)
chan.send('exit\n')
time.sleep(0.5)
chan.send('exit\n')
time.sleep(0.5)

output = chan.recv(1024)
print(output.decode("ascii"))

ssh_client.close()

def storageArrayOperation(sp, operation):


splogin = 'myuser' # provide your SP user name
sppassword = 'mypassword' # provide your SP password

if (operation == 'spreset'):
print ("\n Perfrom Storage Processor Reset operation to your array here: SP " +
sp + " login " + splogin + " password " + sppassword + " operation " + operation) #,
sp,splogin,sppassword,operation)
elif (operation == 'spndu'):
print ("Perfrom Storage Processor Non Disruptive Upgrade (SP NDU) operation to your
array here: SP " + sp + " login " + splogin + " password " + sppassword + " operation " +
operation)
else:
print ("Invalid operation specified")
sys.exit(-1)

def main():
if len(sys.argv) == 6:

VMware, Inc. 87
VMware Storage Certification Guide (SCSI Block)

switch = sys.argv[1]
port = sys.argv[2]
userid = sys.argv[3]
password = sys.argv[4]
operation = sys.argv[5]

if not (switch or port or userid or password or operation):


print ("\n Usage: script.py switch port userid password operation\n")
print ("Example: script.py 127.0.0.1 1 tester secret disable\n")
sys.exit(-1)

print("\n Executing the script")


if operation == 'enable':
disableEnable(switch, port, userid, password, operation)
print ("\n Port %s is Enabled" %port)
elif operation == 'disable':
disableEnable(switch, port, userid, password, operation)
print ("\n Port %s is Disabled" %port)
else:
print ("\n Invalid operation specified ")

sys.exit(0)

elif len(sys.argv) == 3:
sp = sys.argv[1]
operation = sys.argv[2]

if not (sp or operation):


print ("\nUsage: script.py sp operation\n");
print ("Example: script.py 127.0.0.1 1 spndu\n");
sys.exit(-1)

print ("\n Executing the script")


if operation == 'spndu':
storageArrayOperation(sp, operation)
print("\n SP NDU on %s" %sp)
print("\n")
elif operation == 'spreset':
storageArrayOperation(sp, operation)
print ("\n SP Reset on %s" %sp)
else:
print ("Invalid operation specified")
sys.exit(-1)

sys.exit(0)

else:
print ("Invalid number of operations specified")
sys.exit(-1)
if __name__== '__main__':
main()

VMware, Inc. 88

You might also like