This issue is fixed in ESXi 7.0 Update 3f, Build# 20036589
Workaround:
For hosts already upgraded to 7.x1. Run the following command to list the vmkernel adapters on the ESXi host:
esxcfg-vmknic -l
2. Gather iSCSiConfig from ConfigStore:
configstorecli config current get -c esx -g storage_iscsi -k software_adapter -outfile iscsiConfig.json
3. Edit the output file iscsiConfig.json and remove all vmk adapters from the vmknics section that not listed on the step 1.
4. Save the changes to the json file.
5. Update the ConfigStore with the edited iSCIConfig information:
configstorecli config current set -c esx -g storage_iscsi -k software_adapter -infile iscsiConfig.json
6. Reboot host. iSCSI targets should persist
For hosts yet to upgrade but still running ESXi versions prior 7.0U2 1. Run the following command to list the vmkernel adapters on the ESXi host:
esxcfg-vmknic -l
2. Run the following command to check the port binding configuration and associated vmkernel adapters
esxcli iscsi networkportal list
3. Remove the bound vmkernel ports which are not available in networking configurations from step 1
esxcli iscsi networkportal remove -A vmhbaX -n vmk#
- Where X is the adapter id number taken from step2
- # is the vmkernel adapter id still present on step 2 but not listed in step1
4. Host can be upgraded now.