Having a home lab like me is a great idea if you require a lot of storage and need a virtual environment to build or test something frequently. I would like to share the concept and setup of my home lab in this article, but not the step boy step guide to replicate what I have done before.
If you want a step by step guide, you can check these links:
- FreeNAS 11.2 and ESXi 6.7 iSCSI Tutorial
- How to passthrough SATA drives directly on VMWare EXSI 6.5 as RDMs
ESXi is installed as the base OS and FreeNAS is installed on top of ESXi. I passed all hard disks to ZFS (File system used in FreeNAS) as RDM (Raw Drive Mapping) to let FreeNAS gets closer to the hard disk and gain the benefits of ZFS and virtualization.
The storage is managed by FreeNAS VM. We just need to connect to the ZFS volume via NFS (Network File System) in ESXi, then we can store all of our virtual machines to ZFS volume.
“ZFS combines the roles of RAID controller, Volume Manager, and file system, and since it’s all three in one, it wants direct access to your disks in order to work properly. The closer you can get ZFS to your storage hardware, the happier ZFS is, and the better it can do its job of keeping your data safe.”
All of my virtual machines are stored into the ZFS volume, except the FreeNAS VM. Each virtual machine has an isolated environment to serve its own purpose.
List of my VMs:
- Minecraft server
- MySQL server
- Apache web server
I started to run this 3 years ago and this server saved me a lot of money for renting cloud server from VPS. I can deploy any applications I want and the performance is acceptable.
TOSHIBA DT01ACA100 for ESXi installation and FreeNAS VM.
Seagate BarraCuda 3TB * 4 passed to ZFS as RDM (Raw Device Mapping).
ESXi does not support all hardwares, please check the capability guild carefully.