In computing, thin provisioning involves using virtualization technology to give the appearance of having more physical resources than are actually available. source: https://en.wikipedia.org/wiki/Thin_provisioning
Thin provisioning in a virtualized environment, used carefully, can help you manage your memory or disk space budget.
For memory this usually involves a “ballooning” device driver. As an example, when you define a VM, you can define a VM that has a maximum of 4 GB of memory and a minimum of 1 GB. In this example, the VM OS always thinks it has 4 GB of memory, but when all of this is not needed, the ballooning driver will consume the remainder. This consumed memory is available to other VMs.
Imagine you have a virtualization host with 16 GB of memory. On that host you have 10 VMs set up with a max or 4 GB of memory and a minimum of 1 GB. As long as each VM is fairly quiet and consuming a lot of memory, all is well. But what happens if a majority of VMs start consuming a lot of memory? Sooner or later the host will not have any more memory and a VM will crash.
Disk thin provisioning works much the same way. You can define a disk drive with 250 GB of space, but if it is only using 100 GB of space, the virtual disk on the host only consumes 100 GB of space. However, unlike memory thin provisioning which can go up and down, disk provisioning only goes up. This means that if you create a bunch of VMs with thin disk provisioning, you can run out of space on your host before you run out of space on your VMs.
Be warned.