In a previous post, I talked about using Openfiler's iSCSI target capabilities to provide network-connected storage to my ESX server.
After days of fighting with a weird, intermittent problem with the ESX server not discovering the iSCSI target when rescanning HBAs, I ran across a solution mentioned in a storage solution company's FAQ document (thank you EqualLogic!) The solution that worked for me was to simply reset iscsi daemon on the esx server.
Here is a snippet of the document that helped me:
Apply the hangup signal (HUP) to the vmkiscsid daemon.
NOTE: Only use the HUP signal with vmkiscsid. Any other signal, i.e. kill -9 can result in the iSCSI daemon crashing or hanging.
1. Log in to the ESX server as root, using the console or an SSH client.
#killall -HUP vmkiscsid
2. Return to the Storage menu. Select "Rescan" and see if the volume is now seen. If not, rescan a few more times.
NOTE: Executing this command will not affect established iSCSI connections.
This seems like such a simple fix (and it was, thankfully), but when you've got virtual networks, kernel network connections, virtual routers/gateways, kernel routers/gateways, external (not officially supported) iSCSI target software, and numerous other technologies in between, troubleshooting all of this can push you to the brink of insanity. Hence the main reason for this post: so I never have to try to troubleshoot this issue again. ;)