i have one ESX host and it have 22GB total memory. i have created 10 VMs on the same and each VM have 5GB memory total of 50gb. all VMs poweredon and running fine. just want to know how esx will allocate memory to all vms if memory utilization is high on all vms........
ESX host will start ballooning activity if its left with 2% free memory. ESX will try to move Physical RAM pages to VM's virtual disk until it has recommended free memory (not sure about correct value). The above scenario is without Reservation and DRS/HA. If your environement has DRS/HA enabled, it will validate available resources every time when you power on a VM based on HA failover capacity configured in ESX Cluster.
The other two poster desribed on what the ESXi host will do to provide the necessary memory - how it will divide the physical will be base on the shares assigned to the VM, if there is a reservation set and if there is a limit set -
Setting a limit will cap the amounto of physical memory the VM can have
Setting a reservation will ensure that the VM will have a certain amount of physical when there is contention
Memeory whares will determin how the memory is divided - for example you have 3 VMs and each has an equal share than will there is contention each VM will get and equal amount of memort assuming reservation and limit are not set - if on VM has twice the shares as the other two VMs than it will 50% of available memory while the other two will split the remaining memort eually pr 25% each