How to find information to create device specific PSP rule

When you connect your storage device to your ESXi hosts, a Path Selection Policy (PSP) will selected based on defined rule set. To help the host to select the right policy for your device, you have a few options. I personally prefer to create a device specific rule based on Vendor and Model. I will describe for ways to get the information about your device you need.

Which PSP Plugin. Get the information about installed device from vendor. In my opinion it is the vendors task to provide best practices. Your should at least get the information which PSP Plugin (Most Recently Used, Fixed or Round Robin) should be used. You should also use VMware Compatibility Guide for storage to determine preferred plugin.

Find Vendor and Model. Here are four ways to get Vendor and Model-IDs. Based on information you already have or connection state of you device take the way you need.

  1. Device is not connected
    You can use VMware Compatibility Guide for storage to find you storage device. Under “Model Details” you can see: “Vendor Id” ad “Product Id”. “Product Id” stands for Model. I recommend to check these data with your running system.
  2. Device is connected – VMFS volume already created
    In this situation, run following command in ESXi console:
    esxcli storage vmfs extent list
    In result find your VMFS volume and corresponding device ID. Use this device ID to run: esxcli storage core device list -d device_ID. In lines “Model:” and “Vendor:” you find details you need.
  3. Device is connected – no VMFS volume is created, WWN (WWPN or WWDN) of device is known
    Run following command to show path information to device using your WWN
    esxcli storage core path list | grep -i nn:mm -B 15
    In this command-example nn:mm is part of searched WWN. In line starting with “Device:” you find device ID of your device. In result find your VMFS volume and corresponding device ID. Use this device ID to run: esxcli storage core device list -d device_ID. In lines “Model:” and “Vendor:” you find details you need.
  4. Device is connected – no VMFS volume is created, unknown WWN, VVOL capable
    Run following command to show VVOL Protocol Endpoints:
    esxcli storage core device list --pe-only
    You should find your device in the result of the command

To create a simple PSP rule you can use command:

esxcli storage nmp satp rule add --vendor="vendor_name" --model="model_name" --description="Text" --satp="satp_plugin_name" --psp="psp_plugin_name" --psp-option="iops=1"

Description:

  • satp_plugin_name
    Used satp-plugin defines your storage array type. For your device can be found in VMware Compatibility Guide for storage or running: esxcli storage nmp device list -d device_ID. You can get installed satp-plugins when running: esxcli storage nmp satp list.
  • psp_plugin
    Defines the policy for path selection during operation without failure. To list available plugins run: esxcli storage nmp psp list.
  • optional: –-psp-option “iops=1”
    When psp_plugin is VMW_PSP_RR (Round Robin), option “iops=1” can be used – default: iops=1000. With this option, every IO is sent on the next storage controller. For some devices this option is for better performance, but most often it is used to reduce path-failover time when a failure occurs. When you can’t find information about this option at you vendor, at least test this setting.

When there is an error when creating a rule, look at /var/log/vmkernel.log for more details. To remove a rule, run same command, just replace “add” by “remove”.

To create PSP rules using PowerCLI, look here (example for creating 3PAR rule)

One response to “How to find information to create device specific PSP rule”

  1. […] commands for a Nimble array as example. To find necessary information for your storage see my post here. For a more detailed example of creating PSP rule see my post for 3PAR (an active/active […]

Leave a Reply

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