One of the principles of computer science is to gain efficiency through abstraction. Therefore, the abstracted data center makes sense. However, there are still many environments and technologies that can't be abstracted away. Not to mention, someone has to rack, stack, and install infrastructure software on physical hardware.
Recently, I wrote a post explaining some of the cloud options for home labs. On the flip side, there are many physical options for home labs as well. One such option is a mini PC platform.
I have a rule of thumb when it comes to RAM for virtualization hosts. It goes something along the lines of, "Buy as much RAM as you can afford. Then ask for more money for more RAM." As a general rule, the most common bottlenecks for virtualization performance is RAM and I/O. CPU is rarely a point of contention. Adding memory or additional I/O capacity generally resolves CPU contention. The same rule works for the home lab.
Mini PCs such as the Mac Mini and Intel NUC have been popular platforms to build a home lab around. The appeal is obvious. Each machine is compact, offers dual drive options, and are configurable with processors ranging from the Intel i3 to the i7. Both systems support PCIe SSD drives, so I/O isn't a typical bottleneck. The challenges typically are network I/O and memory.
Both systems are limited to one physical NIC. For those wanting options to run network operating systems or sophisticated virtualization labs, the single NIC is limiting. Both systems support USB 3.0, and the MAC Mini has a Thunderbolt port, so additional NIC is supported. The one real limitation is the maximum amount of memory.
Mini PCs use mobile processors. Before Intel's Skylake platform, the maximum amount of memory support by Intel's mobile consumer class processors was 16GB. With the release of Skylake, the limit is raised to 32GB. While there's currently not a 32GB option for the Mac Mini, there is a 32GB option for the Intel NUC. The new RAM limit expands the types of technologies supported on the Mini PC platform.
The list of possible labs for one or more mini PCs is sizable. Think of anything that runs better on bare metal vs. cloud infrastructure. The first thought is virtualization hosts. I was able to install VMware ESXi without any special drivers on an Intel NUC 6iSYH with 32GB RAM, a Samsung PCIe SSD, a Samsung SATA SSD, and 32GB of Crucial DDR4 RAM. The install took minutes.
I haven't tested other platforms, but I'm fairly sure Hyper-V and KVM should run fine with a similar configuration. It's a great platform to leverage for learning virtualization or running virtualized workloads in a non-production environment.
Other options include containers and container management technologies. The NUC platform supports Ubuntu and, after installing Ubuntu, Docker and Docker Swarm can be installed for testing containers. You can add additional nodes for expanded testing of workload placement or high availability. Nutanix even has a community edition (Nutanix CE) of their PRISM platform, and there are several blog posts of customers successfully installing Nutanix CE on a similar configuration as mine.
Costs and licensing
I purchased my single NUC lab machine for $700 without an operating system. Since I'm a VMware vExpert, I receive 365-day evaluation licenses. However, there are other options for receiving free or inexpensive licensing. Here is a list of resources for reduced cost or free software. Remember, non-open source options are not intended for production and aren't meant to replace production licenses.
- Linux - Most Linux distributions are free. The only costs are commonly related to enterprise support.
- Docker - Similar to Linux, Docker is open source and can be downloaded for free without production support.
- Nutanix - Nutanix offers a free community edition meant to get users familiar with the PRISM platform.
- Windows Server - Microsoft offers 180 evaluation copies of Windows Server. Also, many college programs offer subscriptions to Microsoft software as part of the tuition. A popular hack is to take a computing course at a local university and receive Microsoft licenses.
- VMware vSphere - VMware offers 60-day evaluation licenses for most of their software products.
I'm a huge fan of running labs in the cloud, but there are times where physical hardware isn't represented well by cloud options. For these situations, the first stop is a mini PC platform.
- Put your jump server in the cloud to save bandwidth (TechRepublic)
- Run a hypervisor within a hypervisor before upgrading to vSphere 6 (TechRepublic)
- 5 reasons why VirtualBox has a place in the data center (TechRepublic)
- Intel to supercharge NUC mini-PC with Skull Canyon edition (ZDNet)
- Find out if your Mac will run macOS Sierra (ZDNet)
Keith Townsend is a technology management consultant with more than 15 years of related experience designing, implementing, and managing data center technologies. His areas of expertise include virtualization, networking, and storage solutions for Fortune 500 organizations. He holds a BA in computing and a MS in information technology from DePaul University.