Troubleshooting ESXi iSCSI Configuration Issue: Pure Shows Different Hosts in GUI and CLI
Symptoms and Description:
- Even though the ESXi HBA configuration shows the Pure ports listed and configured, Pure does not show all the same hosts as connected when using the GUI and “pureport list --initiator".
- Nothing in the zone configuration is causing this, and all physical connections and ports are ok.
- The ports show online and also appear to be correctly configured in the ESXi host adapter settings.
- You can also ping between the Pure target ports and ESXi host ports.
- “pureport list” will display all pure ports.
- “pureport list --initiator”will NOT display all host initiators and Pure ports that are configured in the ESXi host adapter settings.
This can be attributed to a problem with the ESXi Dynamic vs. Static Discovery of targets.
This happens when for the same ESXi HBA, targets are first configured as Static Discovery, and then later more targets are added as Dynamic Discovery. The targets added later as Dynamic will be the missing connections in Pure. For each host adapter, the targets listed need to either be all Static, or all Dynamic. Once Dynamic or Static Discovery is selected for an HBA, all subsequent entries must also be the same as the initial form of discovery. They must all be Dynamic or all Static, not a mix.
Before proceeding, you may also want to verify if NIC teaming is enabled for the ESXi host adapters. NIC teaming may display very similar symptoms to the Discovery issue.
If NIC teaming is not the problem, then as suggested, the ESXi Host adapter configuration for target discovery may include a few of the same Pure port name entries in both the Dynamic and Static discovery fields. This is a configuration bug in ESXi
The problem is that the host initiators are not actually mapped to the targets even though they are listed in the Dynamic and Static fields. If you look at the ESXi Adapter’s Details pane, you will not see the desired number of Connected Targets.
The solution is to remove all entries for Pure target ports from the Dynamic Discovery field in the ESXi adapter configuration settings, and then add the same targets to the Static Discovery field, after which, run a re-scan for the hosts from ESXi.
You may have to make these changes for all ESXi adapters that contain Pure ports in Discovery, so check all.
- Log into ESXi and select a host from the Inventory panel.
- Click the Configuration tab, and then click Storage Adapters in the Hardware panel. A list of available storage adapters appears.
- Select the HBA in question and click Properties.
- Click the Dynamic Discovery tab.
- Note the targets listed.
- Click the Static Discovery tab.
- Note the targets listed.
- There may be a problem if some or all of the same Pure targets are listed in both the Static and Dynamic Discovery fields.
- All targets that Pure shows as connected in the Pure GUI or CLI should be listed in the Static Discovery field for the initiator in question.
- Go back to the Dynamic Discovery tab
- Remove all Pure targets from Dynamic Discovery (all static discovery entries will remain except for the “ghost” entries that had been added later using Dynamic Discovery.
- Go back to the Static Discovery tab
- You should now see fewer targets listed in the Static Discovery field (only the initiators that show up in the Pure GUI and “pureport list --initiator” should remain.
- Add the targets you removed from the Dynamic Discovery field into the Static Discovery Field
- To add a target, click Add and enter the target's information.
- After configuring Static Discovery for the Pure target ports, you will be prompted to initiate a rescan for the ESXi host adapter. Proceed with the rescan.
- After the rescan completes, verify that the Connected Target count changed in the Details pane. It should now also include the targets that were just changed to static.
- From Pure, verify that the targets and their hosts now show with “pureport list --initiator”
- Repeat above steps for each ESXi HBA that should be connecting to Pure.