ESXi VM High Memory Consumption
-
ESXi 6.5, 4 CPUs, 8GB Ram, 8GB HDD assigned to VM.
I've had many version of pfSense running on my server for a few years now, but recently I've been getting alarms from the host claiming that pfSense is sitting at 100% RAM utilization. Looking at top, pfSense reports >6Gb mem free. I'm fairly certain vSphere reports 100% utilization as soon as the vmware memory driver initializes during boot, and this never drops. Reservation is set to 2GB.
top:
last pid: 30931; load averages: 0.16, 0.17, 0.13 up 1+03:04:43 01:14:38
58 processes: 1 running, 57 sleeping
CPU: 0.0% user, 0.0% nice, 0.0% system, 0.0% interrupt, 0.0% idle
Mem: 24M Active, 763M Inact, 958M Wired, 783M Buf, 6173M Free
Swap: 2047M Total, 2047M FreeI can't change or disable the alarm in vSphere, and have no idea why this happening. Any suggestions on where to look?
-
OK, so I guess I solved my own issue. Leaving this here for the next guy.
It's an ESXi specific issue. If you are using PCIE passthrough, as I am for the NICs, you must have all your VM memory reserved for that VM. This was triggering memory usage alarms that somehow became enabled a few weeks ago. I disabled that specific alarm, reset the memory reservation to the total memory, but not locked, and everything seems fine now. Seems like VMware should be aware that this particular configuration is an issue and disable that alarm by default, but whatever.
-
Heh, surprised ESXi would allow the VM to boot when you did the pass-through with out the memory reservation being set.
Any time I do a pass through to a VM, it fails to start unless I edit the settings to reserve all guest memory.
-
I was forced to do the full memory res option as well. Seems like the flaw was not the alarm but that somehow you dodged around the "correct" config. Either way they created a path to your problem.
-
What are you gaining by using NIC passthrough?? The vNICs have worked well for me for years.