getRealVMDiskFormat.pl

Version 4

    After reading Mike Lavericks recent http://www.rtfm-ed.co.uk/?p=1964 on documenting the steps in figuring out whether a VM was FT ready based on its VMDK(s) format, which needs to be eagerzeroedthick. Unfortunately there is no easy way of extracting this information as Mike mentioned and there's no way from the research I've done poking around the vSphere API. Based on the information noted in Mike's blog which requires the user to search through the vmware.log files for specific string, I thought about how I might be able to automate this without having the user login to each ESX server, especially more limiting with ESXi and not having to break the unsupported console nor manually download the vmware.log via the vSphere Client.

     

    The script basically does exactly what Mike has detailed in his post but in a more automated approach and using features of the vSphere API and VMware vMA. The script will allow you to extract all VMs and specify whether it has thin/zeroedthick (not FT ready) OR eagerzeroedthick (FT ready) and can be executed against an individual ESX(i) or vCenter system.

     

    Note: This script is only relevant if you're using vSphere ESX(i) 4.0

     

    The script will automatically create a new directory called vmware_logs in which it will enumerate all VMs and create individual VM directories and download the latest vmware.log file and extract information pertaining to all VMDK(s) within the VM. Each log file will be appended with a unique ID which is the PID of the process, you'll have to manually remove the directory if you don't want the logs hanging around afterwards.

     

    Note: VM's vmware.log must exists AND this will only occur if it has been powered on at least once.