I have been playing with VMWare recently and had to learn about it due to its ubiquitous presence on the enterprise market. I feel I now understand its popularity amongst the user base – leaving aside the Broadcom acquisition drama! – and wanted to share my feelings about it after using it in my home lab.
Most importantly It felt very similar to what I know from Cloud platforms, the way you manage the estate of VMs, networking and storage… it makes you wonder who copied from who, and also wonder why VMWare never had a go at public infrastructure itself given all the experience they accumulated; or maybe they did? I am not sure. I am not suggesting they should now though, but I trust they will find a great future with hybrid and on-prem deployments, which turns to be well alive still.
The overall usage and flow feels very refined and from what I have seen it is all GUI driven, the experience just feels ‘logical’ and well put together. Then, even their top features like vMotion worked wonders in a low end random setup lab like mine with HP PCs from the 2011 era, 100 Mbps network cards, and entry level consumer SDDs, which gives you confidence on the quality of the software.
I remember installing ESXi 8 on my three lab nodes and getting warnings in all directions about the CPU being way out of support, at risk of bugs, incompatible, and thinking to myself “ok this is never going to work you’ll have to go back on eBay and find some more modern kit to get this running” but nope, I did not experience any trouble and could proceed.
vCenter is impressive and the actionable dashboards are very easy to use, they’ve really turned a topic complicated like virtualisation into something enjoyable. That aside, I don’t know how you’d script the management of VMWare and combine it with a bash command line, but I am pretty sure it exists, just have not seen it.
Finally went on to test some of my favorites cloud tools, one is Cloud-init, and there are some nice guided activity at VM launch to import cloud-init scripts and get machines the way you want them, as long as you use an image that is cloud-init ready and compatible of course (the -generic-cloud ones!). I also read they support Terraform which I have not been able to test, I will probably do it in the near future in combinaison of a CICD pipeline – maybe the topic of a future article.
vMotion requires vSAN, and the latter needs some good SDDs and network which my lab does not have so I could not really test it the traditional way. I can recall using vMotion with an NFS share instead of a pool vSAN and even with multiple warnings on the console saying it is not optimal I was able to hop VMs from one host to the next easily.
Overall I feel it was a must for me to review this technology so I could understand where the clients come from when approaching cloud platforms.
A few things I struggled with related to VMware:
- At install I had to deal with some weird DNS hang ups, you’ve got to manually enter DNS entries on your router before a vCenter install.
- If the nodes are turned off suddenly, it can cause issues, I’ve managed to get my vCenter corrupted this way and had to do some CLI on the host to get it back, and if you are unlucky you may have to reinstall vCenter entirely.
- There are multiples types of template, libraries around the VMs functionality and some terminology I find confusing at first.
Also struggle with, but not related with VMware
- The networking can be cumbersome, you are adding multiple layers of networking here with vlans and overlays, virtual switches and what not, I am pretty sure this can get nasty quickly. Also you can also brick yourself out of vCenter, so beware!!
- A flurry of virtual machine images formats and convertions to be done… qcow, dd, raw, iso, vmdk, and what else – it is quite a thing, you will see!
Thank you for your attention and see you soon!