Concept is simple, we will build a Home Lab server that can be connected to an existing network without any disruption. Server will be running headless - we won't need any monitor or peripherals to be connected to it after initial hypervisor installation is done.
Ideally we would like to replace an existing router with our Home Lab server combo but this is not absolutely necessary.
Do not pay much attention to what containers or VMs are on the diagram, it will be your decision to choose what you need. I will be showing you how to configure all together but what containers you deploy or what VM decide to run will your choice.
Diagram above show two aspects - hardware topology on the top and software virtualization layer at the bottom.
Diagram indicate also that ISP model/router is set to a bridge mode where Home Lab server takes router function and wifi is outsourced to a dedicated access point device. We could also completely remove ISP modem and replaced it with Home Lab server entirely.
At one point during setup, you will have to decide if you would like to put your Home Lab server in to DMZ on your existing ISP router and keep your home network separated from the Home Lab or will you set ISP router into a bridge mode making Home Lab server your main router or maybe you will replace ISP router with Home Lab server entirely.
Putting Home Lab server into DMZ will be the easier way as you won't be disrupting your home network at all but it will also mean that you won't be able to i.e. easily remote in to your Home Lab VMs. On a positive note, you wont need additional switch and Access Point device what will be necessary if you decide to ser ISP router in to bridge mode or replace IPS router with the Home Lab server entirely.
Hypervisor abstract hardware layer, allowing Virtual Machines (VMs) to be build where each VM is running it's own operating system isolated from one to another on a shared host hardware. Containers are self-contained environments that allow multiple applications to run on a single virtual machine without one knowing about the other or any need of sharing any dependencies between the applications.
With your support anything is possible