Home Lab - Design

 

Why

When building a home lab one must start with a purpose for it before starting to build it. In the book "Talent Is Overrated: What Really Separates World-Class Performers from Everybody Else" one learns that deliberate practice and a focus on not only on how much, but the quality and factors placed in it makes a huge difference in the level of skill one can obtain and maintain from training. The main goals of the lab built in this series are:

  • Modular so it can grow as needed.
  • Must mirror real world scenarios.
  • Automate and document for fast rebuilds.

These main goals should help in helping to adapt and practice as the lab will be rebuilt as trial versions of Windows expire or as needs arise.

The following is the first in a series of blog post on how I rebuilt and automate my Microsoft Windows lab environment.

Components

Components can be broken in 2 parts, the platform where we will run the virtual machines and a NAS server to store ISO images and backups. Since a home lab is not a production environment there is not need to have the VM files hosted in the NAS for high availability. 

Virtualization Server

  • Base server hardware: 
    • Quad Core CPU or better
    • 1TB SSD or NVMe.
    • 32 GB of memory or higher
    • 2 or more network interfaces
  • Software:
    • Type 1 Hypervisor (Hyper-V, XenServer, VMware ESXi)

 

NAS Server

  • Server Hardware
    • RAID system
    • 1Gbps connection or better
    • 1TB or more of shared storage

Since a NAS server can be an appliance or a self built, capabilities will be provided instead of software. The capabilities would be:

  • CIF/SMB Support
  • NFS Support
  • Jumbo Frame Support

For server hardwareI recommend SuperMicro servers like the E200-8D, E-300-8D and SYS-5028D-TN4T, NUC and Shuttle PCs are good budget alternatives but are not designed to be servers and in many cases requires some hacking to get drivers working. A great blog to follow that cover very well hardware for home labs is https://tinkertry.com/

Software for VMs

For building VM templates in the case of Linux there little issue since downloading the ISOs is of no problem for most major distribution. In the case of Microsoft the options are:

For routing and segmentation one can download a myriad of prebuilt distributions and virtual appliances. My personal preference is the VyOS open source router software. I will use VyOS in this blog series.

 

Design

The physical design f the home lab will look like the image bellow where we can have one or more servers and shared storage in a NAS server/device, all behind our home firewall.

The virtual machine network will consists of a basic building block where a set of virtual machines will be hosted behind a VyOS router acting as a firewall, NAT and VPN device so as to keep the virtual machines isolated from the home network.  

The basic building block can be expanded by adding a second router so as to segment VMs from each other each in their own virtual switch so as to simulate segmentation and remote sites. 

The building blocks can be even joined together in the case they expand multiple physical servers using site to site VPN. 

This is the basic design of my home lab rebuild in the next part I will create the virtual network and VyOS router. As always I hope you find the information of useful.