There are different type of virtual disks in VMware world.
From point of view related with the disk size there are two different types:
From point of view related with the number of files there are two different types:
In ESX Server only monolithic format (thin or split) is directly supported.
In VMware Server and Workstation also split format is supported.
For more information see:
http://www.vmware.com/files/pdf/thin_provisioning_datasheet.pdf
http://thinkvirtualization.net/2009/02/the-thick-and-the-thin-of-a-vmdk/
Choosing a virtual disk type for VMware Workstation/Server:
http://sanbarrow.com/vmdk/monlithicversussplit.html
Choosing a virtual disk type for VMware ESX:
http://searchvmware.techtarget.com/tip/0,289483,sid179_gci1348873,00.html
Disk type performance:
http://www.vmware.com/pdf/vsp_4_thinprov_perf.pdf
Thick | ZeroedThick | Thin | EagerZeroed Thick | |
Creation Time | Fast | Same as Thick | Fastest | Extremely slow, and linearly proportional to size of disk |
Block Allocation | Fully preallocated | Same as Thick |
| Same as Thick |
Virtual Disk Layout | Due to preallocation, it has a higher chance of using contiguous file blocks. | Same as Thick | Layout varies according to dynamic state of the volume at the time of on-demand block allocation. | Same as Thick |
Zeroing of Allocated File Blocks | File blocks are not zeroed out. | File blocks are zeroed, on demand, upon first write to virtual disk. | File blocks are zeroed out upon block allocation. | File blocks are zeroed out upon creation of the virtual disk (blocks are allocated and zeroed). |
I/O speed | Max all the time | Reduced at beginning due to zeroing blocks on first access | Reduced slightly more than ZeroedThick due to allocating and zeroing blocks on first access | Same as Thick |
Security | Insecure - VM can read what was on partition before VM deployment | Secure | Secure | Secure |
Source: http://communities.vmware.com/message/1380846
With Workstation there is the vmware-vdiskmanager command:
http://kb.vmware.com/kb/1004022
With ESX there is the vmkfstools command:
http://vmetc.com/wp-content/uploads/2007/11/man-vmkfstools.txt
With ESX and vCenter Server is possible use the "migrate" function to move vmdk files and (if needed) change the type (between thin and thick). But all disks will have the same format.
With SVMotion license this operation could also be done the a "live" VM.
Without vCenter Server, is possible convert a thin disk to a thick with datatostore browser and the inflate option on the vmdk file (but the VM must be powered off).
To convert a thick disk to a EagerZeroed (for FT usage), simple enable FT on a powered-off VM: the disk will be automatically converted!
Note that by default ESX/ESXi disks are ZeroedThick, from vSphere is possible (also from the GUI) build thin disks (choosing "thin provisioning") or EagerZeroed Thick disks (choosing "support clustering feature").
Type conversion in ESX/ESXi 4
To Thin | To (Zeroed) Thick | To EagerZeroed Thick | |
---|---|---|---|
From other vmdk format | vmkfstools* Standalone Converter 4* | vmkfstools* Converter 3, 4* | vmkfstools* Standalone Converter 4* |
From Thin | vmkfstools* Datastore browser / inflate (on vmdk)* Converter 3, 4* SVMotion** | vmkfstools* Standalone Converter 4* | |
From (Zeroed) Thick | vmkfstools* Standalone Converter 4* SVMotion** | vmkfstools* Enable FT on the VM* Standalone Converter 4* | |
EagerZeroed Thick | vmkfstools* Standalone Converter 4* SVMotion** | vmkfstools* Converter 3, 4* SVMotion** |
* Cold conversion
** Live conversion
As far as I understand, format "thick" don't possible for ESX(i) 4.
AndreTheGiant, as far as i understand in this performance Study http://www.vmware.com/pdf/vsp_4_thinprov_perf.pdf EagerZeroed Thick performs a little better than Thick and ZeroedThick because of the pre-zeroing out at the creation time
True.
But this apply only on first access to a "non cleaned" block.
When block was zeroed then the performance a the same for the two type of thick disks.
Andre
Sure?
It can depend by you storage, what do you have? NFS?
Andre
As to Thick vs ZeroedThick, is "ZeroedThick" what is called "Thick" in vSphere Client?
is "ZeroedThick" what is called "Thick" in vSphere Client?
Yes
Andre
I think the thinkvirtualization link is broken.
http://thinkvirtualization.net/2009/02/the-thick-and-the-thin-of-a-vmdk/
FIne article, Andre. Thanks.