For the last few weeks I’ve been running out of RAM on both my hypervisors. Each server has the supported total of 32GB RAM and 1 x CPU Socket. The question I’d been asking myself was, do I purchase a third server or do I start consolidating VM’s in the home lab? The easiest and possibly fastest option would have been to purchase a new server. There were some considerations though and we’ll start with an expensive one.
Licencing
The VMware vSphere Essentials licence I have enables me to have up to three ESXi hosts and up to a total of 6 CPU Sockets. Great, I’m covered to add a new server.
A while back I purchased a Veeam Essentials licence to enable me to automate and schedule backups of VM’s. The licence supports two CPU sockets which enables me to backup VM’s on both my servers. Adding an additional server would require me to purchase another Veeam licence adding additional expense.
Space and Power
I could easily accommodate another server in my 21U rack and have enough port density in my switches to plum it in. The additional power consumption to run another server didn’t sit that well with me though. I’m quite pleased that my all my lab kit combined consumes less than 200 Watts of power. Adding a third server would increase that consumption a fair amount as I run most of my lab kit 24 x 7.
Another option considered was building a white box server that supports more RAM and retire one of my existing servers. This would have kept the total number of CPU socket’s to two meaning I wouldn’t need an additional Veeam Licence. However..
DDR4 RAM is expensive
At the time of writing this post DDR RAM is really expensive. Something to do with availability as more and more smartphones are using DDR4 RAM. I was not willing to pay the high price which for 64GB was more than I spent on both my Lenovo TS140’s.
Consolidating VM’s
With the bonkers price of DDR4 Ram and my lack of appetite for adding to my power consumption I decided to start consolidating VM’s in the home lab. I made a list of 10 VM’s which included Windows and Linux OS. I began consolidating applications onto fewer VM’s on each server. Basically I collapsed four Windows VM’s down to two and six Linux VM’s also down to two. I’ve never been a fan of running too many applications on one server due to fate sharing. However, I now back up all my VM’s using Veeam enabling me to quickly recover a failed VM.
Was the consolidation exercise worth it?
Almost 12GB ram was recovered, about 6GB on each server giving me a little more headroom. I’ve avoided the RAM grim reaper for a while longer but this saving is only going to get me so far I guess. It has sharpened my Linux skills a little as it was tricky moving some of the apps from a Turnkey Linux VM to a regular build. I can drive Linux pretty well but I’m no Linux mechanic. Other than time spent it has also been a zero cost project.
Its certainly much easier and less risky to spin up a new Linux build every time you need to run or test a new App. It’s not the most efficient way from a compute perspective though which I guess is why we are seeing the rise of containers like Docker for example.
Additional advantages of reducing the quantity of VM’s are time saved patching the OS, less disk space required and fewer VM’s to backup etc.