- New Home Server
- Installing Proxmox
- Proxmox Quirks & Configurations
- Shiny New DC
- DNS, DHCP, and Redundancy
- Active Directory Structure and Config
- File server replication with Robocopy
- Windows shares on Linux
- Install Plex on CentOS
- Ubiquiti UniFi Controller
- Centreon Monitoring
- Centreon 2 – Electric Boogaloo
I recently decided to replace my aging home file server (Athlon XP processor and 1GB of RAM, had been running 24/7 for roughly 15 years with a JBOD making up about 1TB of storage). It was time for the old beast to retire, and time for me to bring my home into the 21st century. Originally I had looked into actual server hardware, but couldn’t find anything with the specs I wanted for the right price. So here is the story of the white box server that I ended up building, and what I ended up using it for.
First, the specs:
- Cougar MX200 Black ATX Mid Tower Case
- Thermaltake Smart Series 500 Watt Power Supply
- Asus M5A97 R2.0 Motherboard
- AMD FX-8300 Vishera 8 Core Processor – 3.3 Ghz
- CryoRig H7 Tower Cooler
- 4 x Team Vulcan 8GB DDR3 SDRAM
- 5 x WD Blue 1 TB 7200 RPM Sata Drives
- SanDisk 64GB UltraFit USB 3.0 Flash Drive
- EVGA GeForce 210 Video Card
Total cost: $635
Up to this point, I had mostly been using VMWare ESXi for anything virtual around the house. Had I gone with server hardware, I likely would have stuck with that. However, due to the fact that support for various network cards had been dropped, combined with the fact that I totally forgot to factor in a hardware raid controller and needed to stay under budget, I decided to take a look at Proxmox. I have worked with straight KVM on CentOS in the past, so it wasn’t too much of a stretch.
I was used to installing ESXi to USB and then using all available storage for my VMs, and wanted to do the same with Proxmox. It’s not something that is supported, and it’s not quite as straight forward, but it was still relatively easy to do. I’ll cover the process in later post, but for now, suffice to say that I installed Proxmox onto the SanDisk UltraFit and then configured a software raid 5 with my disks using mdadm. I then moved /var onto the raid, along with a few other functions to minimize writes to the USB. We’ll call this server Hypervisor01.
At this point, I took some old hardware I had laying around (Dell Optiplex 990 SFF with a 4 port NIC installed) and installed Proxmox onto it as well. I was going to be setting up a domain in the house, and wanted to have redundant DCs so that if I needed to reboot one it wouldn’t disrupt the network. I also was looking to switch from my current router (Linksys E3200 running DD-WRT) to pfSense. So I decided to kill 2 birds with one stone, and virtualize both on separate hardware. We’ll call this one Hypervisor02.
When it was all said and done, the layout turned out like this:
Windows VMs (All Server 2012 R2):
- Domain Controller with DNS and DHCP
- File and Print Server
- WSUS and MDT
Linux VMs (All CentOS 7 LXC Containers):
- UniFi Controller for my Ubiquiti Wireless APs
- Deluge Daemon with Web Interface
- Centreon for monitoring
- Ansible Controller
- Windows Server 2012R2 Domain Controller with DHCP and DNS
I also put together an IP schema that made way more sense than the haphazard “That IP is free, I’ll use that” setup that I had going on before. I’ll cover that setup, as well as my reasoning in a future post, but it involved changing IPs for most everything in the house.
Overall the topology looks something like this:
- Servers: Hypervisor01, Hypervisor02
- Desktops: 1 Windows 10, One Fedora 26
- Laptops: 1 Windows 7, 2 Windows 10, 1 CentOS 7
- Router: pfSense VM
- Switches: 3 TPLink Gigabit 8 port switches
- Wireless APs: 3 Ubiquiti UAP 802.11n
In future posts I will get into the setup and configuration of the various servers and what they’re used for in more detail.