I figured this out, after researching a few other threads.
For posterity, here was the issue:
Once any datastore's IP address is unreachable, the ESX cannot mount any of them, as reported by "esxcfg-nas -l".
Also, as long as any VM (even one which is not running) has a reference to a datastore, you cannot delete it while ESX is running.
So, my solution was:
- Shut down all VMs (via the VIC)
- Put the server into maintenance mode:
# vimsh -n -e /hostsvc/maintenance_mode_enter
- For each datastore whose address has changed, delete the old, and re-add it with new address (and exact same label):
# esxcfg-nas -d <label>
# esxcfg-nas -a --host <new_name> --share <remote_nfs_share_path> <label>
- Mount the datastores
# esxcfg-nas -r
(this will fail if any datastore hosts are still unreachable, or will complete silently if all goes well)
- Bring the server out of maintenance mode:
# vimsh -n -e /hostsvc/maintenance_mode_exit
I hope somebody else finds this helpful (as I would have :-).
-Bob