#VCP limits and reservations can be set on different levels on a VM or a Resource pool. ## CPU ### Reservation Configured in MHz for the VM, when set the VM is reserved the configured amount of MHz on the host. No other VM can utilize this resource, VM with reservation can only boot once the reservation is statisfied. Therefore Reservations should only be used if absolutely necessary, it restricts the flexibility of ESXi's resource balancing drastically. ### Limit Hard ceiling on the VM's usage of CPU in Mhz, the VM cannot use more MHz at any time. ### Shares Shares is a priorization of CPU scheduling for a VM. When the ESXi host is in congestion it will look at shares and priorize the VMs with the higher amount of shares above the lower shares ones. Shares have 3 pre defined levels (Low,Normal,High) and a custom level where the shares can be set from 0 and 1000000. #### Default values - for every vCPU 1000 shares - for every MB of memory 10 shares Example: VM1 has 1000 Shares configured and VM2 2000. During a CPU shortage/congestion on the ESXi host VM2 will be granted twice the amount of CPU resources as VM1. Can be used as a safety net during contention, e.g. high priority VMs with production workloads can have a higher share count than test. ## Memory ### Reservation Amount of RAM in GB that is reserved on the ESXi host only for the configured VM, no other VM can use this RAM. ### Limit Amount of RAM in GB that the VM can use. ### Shares Similar to CPU shares, the share amount determines how much RAM a VM will be granted during a RAM congestion/shortage on the ESXi host. 3 level (Low,Normal and High) or Custom shares can be configured. ## 🔗Resources