VMware ESXi Memory State

Memory state of an ESXi shows how much memory constrained the host is.

There are 5 memory states and depending on each memory state, ESXi will engage its memory reclamation techniques (TPS, Ballooning, Compression & Swapping).

  • High state: No reclamation
  • Clear state: TPS
  • Soft state: TPS + Ballooning
  • Hard state: TPS + Compression + Swapping
  • Low state: TPS + Compression + Swapping + Blocking

How ESXi calculates its memory state ?

Memory state is not calculated using its overall utilization. But by comparing the current utilization with a dynamic  minFree value. Based on this comparison, ESXi changes its state.

  • High state : enough free memory available
  • Clear state : <100% of minFree
  • Soft state : <64% of minFree
  • Hard state : <32% of minFree
  • Low state : <16% of minFree

What is minFree value ?

minFree value is calculated using the configured memory of ESXi host. An ESXi host configured with 28GB RAM will have 899 MB as its minFree value. Any host configured with more than 28GB RAM will have an additional 1% of (Total RAM (GB) - 28 GB).

For example : Suppose a host is configured with 128GB RAM.

For the first 28GB RAM; minFree = 899 MB
For the remaining 100GB (128GB - 28GB) ; minFree = 1% of 100GB i.e, 1GB or 1024 MB.
So the total minFree value is 899 MB + 1024 MB = 1923 MB

How can I check the memory state ?

SSH to the host and check the memory stats using esxtop
Command : esxtop --> m


Popular posts from this blog

VMware and Windows Interview Questions: Part 2

VMware and Windows Interview Questions: Part 3

VMware vMotion error at 14%