vCenter - Committed vs. Uncommitted Disk Space

A Quick definition and guide as to how vCenter calculates Disk space in vCenter

Committed Storage Space

Committed Storage Space is essentially storage space, in bytes, on the datastore that is actually being used by the virtual machine. Depending on the disk type, whether it's Thin or Thick, it will determine how much used space is committed or not.

Thick Provisioned Disk Example

If you create a disk that is 100GB and you set the disk type as Thick Provisioned, this will commit all 100GB of disk space to the datastore. In other words, even if the guest OS is only using 20% of the 100GB, all 100GB will be written to the datastore and will be considered used space. The total capacity of that datastore will be the total used space plus 100GB.

Thin Provisioned Disk Example

If you create a disk that is 100GB and you set the disk type as Thin Provisioned, this will only commit what is being used in that disk to the datastore. In other words, if the guest OS is only using 20% of the 100GB, then only 20GB will be written to the datastore and will be considered used space. The total capacity of that datastore will be the total used space plus 20GB.

The other 80GB is then considered uncommitted disk space.

For example, If we build a VM with 3 100GB disks (total 300GB) and set all 3 disks to Thick Provisioned, then right after the VM is completed, the total usage size is 300GB even though we have not yet powered on or install any OS on the disks.

300GB Used Storage

300GB Used Storage

The RED space above is committed space. Even though we theoretically have 300GB free space inside the VM, we have claimed all the space.

Uncommitted Storage Space

Uncommitted Storage Space is essentially additional storage space, in bytes, potentially used by the virtual machine on this datastore. Uncommitted space is only applicable to a disk with the Thin Provision type. If you have a 100GB disk space but only 20GB is being used by the guest OS then the other 80GB is considered uncommitted. This means that, even though there is still a limit as to how much you can write to the disk, the datastore will not include this space as used until it is actually used by the guest OS. Until that time, its considered free space that other VM's can claim. This is useful for setting up VM's that require a lot of space like DB's or log servers but you don't want to commit the full space right away, allowing more space for other VM's to use.

For example, If we build a VM with 3 100GB disks (total 300GB) and set all 3 disks to Thin Provisioned, then right after the VM is completed, the total usage size is 0GB since we have not yet powered on or install any OS on the disks.

300GB Available Storage

300GB Available Storage

Now, let's say after a week, we installed an OS and created a Database. This adds usage to the disks. The overall usage of the VM's storage will increase

110GB Used Space

190GB Available Storage

110GB Used Space

190GB Available Storage

The RED space above is committed space. however, the GREEN space is still available in the datastore. Even though we theoretically have 190GB free space, until we claim it, that space is available to any VM