Sunday, October 10, 2010

ESX boot issue

Ran into this on one of our ESX 4.1 boxes. After it was shutdown, it failed to come up. When I looked at the console, it showed: vsd-mount failed.

There's a good VMware knowledge base article on this.

The only caveat that I found for the knowledge base article base was that you need to follow the instructions verbatim.

Also, you need to pay attention to step 10. When you edit the kernel line, you need to understand how it's presenting the line. It's scrolled sideways. If you really want to see the beginning of the line, move your cursor to the left. Where you want to insert the text is at the end of the line, though.

For your convenience, here's the resolution from the KB article:


If the ESX host has detected the VMFS volume containing the esxconsole.vmdk file as a snapshot LUN, the ESX host drops into Troubleshooting (busy box) mode during boot. 
To allow your ESX host to boot successfully:
  1. Provide the necessary credentials to access the busy box.
  2. Run this command to enable resignaturing on the VMware ESX machine:

    esxcfg-advcfg -s 1 /LVM/EnableResignature

    You must get an output similar to:
    Value of EnableResignature is 1.

    Note: If the root is mounted as read only, run the command  mount -o remount / to remount the volumes so that they are in a writable state.
  3. Run this command to unload the VMFS drivers:

    vmkload_mod -u vmfs3 
  4. Run this command to load the VMFS drivers:

    vmkload_mod vmfs3
  5. Run this command to detect new VMFS volumes and resignature the volume:

    vmkfstools -V
  6. Run this command to identify the full path of the esxconsole.vmdk file:

    find /vmfs/volumes/ -name esxconsole.vmdk

    The output appears similar to:

    Note: Make a note of this full path.
  7. Restart the VMware ESX machine. You see a menu provided by the grub boot loader. 
  8. Press e to edit the grub entries manually.
  9. Scroll down to the line that starts with kernel /vmlinuz (it is indented under the VMware ESX 4.0 heading).
  10. Go to the end of the line and include the following entry after a space:


    Where <path> is the full path identified in step 6.
  11. Press Enter to accept the changes.
  12. Press b to boot using the modified settings. The ESX host successfully boots.

    Note: The changes made to the boot options are not saved. They only apply to the current boot process. The changes need to be made to the boot configuration files as described in the following steps.
  13. Log into the console as root.
  14. Edit the /etc/vmware/esx.conf file with a text editor and modify the following lines:

    /adv/Misc/CosCorefile = "/vmfs/volumes/<path>/core-dumps/cos-core"
    /boot/cosvmdk = "/vmfs/volumes/<path>/esxconsole.vmdk" 

    Where <path> is the full path identified in step 6.
  15. Run this command to update the boot configuration files:

    esxcfg-boot -b

Dustin Shaw

No comments:

Post a Comment