I have finally repurposed my old gaming rig into a multi-purpose home server. It is housed in an old CM Storm Trooper computer case. It has been re-christened as the Stormcloud and set up as a virtual server host.
Most of the hardware remains unchanged from when this computer was a regular gaming/home PC. The graphics card was removed but new hard drives were added to house the massive Plex media library and the VM data. The media drive runs on a 4TB Western Digital Red and the VMs will run off of a Western Digital 1TB Blue.
|CPU||i7-4790k @ 4 GHz|
|RAM||32 GB DDR3|
|Boot Drive||1TB Samsung Evo SSD|
|Data Drives||4TB WD Red, 1TB WD Blue|
|Other||1 hot-swap 3.5″ drive in 5.25″ bay|
Setting Up Hyper-V Host
Once the new drives were received, I took the rig outside and gave it a good dusting. It was then a quick process to install the new drives.
I have opted to go with Microsoft Hyper-V as my hypervisor. Using an ISO on a USB drive, I installed Windows Server 2019 Datacenter edition (w/ GUI). Adding the Hyper-V roles was a simple process and BIOS virtualization was already enabled because I used to run VirtualBox when the PC acted as a daily driver.
Remote Access for Hyper-V Management
Obviously, I don’t want to physically access or remote into my hypervisor just to access the Hyper-V Manager, so my solution was to install Hyper-V tools on my regular computer. However, using “Connect to computer” resulted in errors and inability to connect.
I received an error similar to this one:
Using a variety of online resources, I was able to combine some tricks enable connectivity. One fix was to enable CredSSP which isn’t generally recommended in an enterprise environment, but my home network should be fine. Some additional Powershell tricks were needed to finish the job.
Windows Admin Center
I opted to install Windows Admin Center and was able to successfully integrate it into my network with some firewall adjustments and host-file changes. I enabled HTTPS connectivity but I’ll deal with proper SSL certificates another time.
Update: I have added HTTPS functionality using Self-Signed certificates generated using Powershell.
My virtual server needs have been increasing a lot lately; the biggest example is that I’d like a local VM to do some testing for my job. Right now, I’m reliant on a VPN connection to the office which introduces latency and is vulnerable to power outages. Occasionally the network at work hiccups which breaks RDP connections until it’s rebooted. With the office over 50 miles away, this presents a problem. Ultimately, this was the catalyst for me to finally start this project.
With the new VM host up and running, I now have a perfect local platform for performing certain work-related tasks as well as running a dedicated Plex server, gaming server, and file host.
I have plans to implement more complex setups down the road. One thing I want to do is get a virtual Domain set up. Another big goal I have is to expand into a dedicated server rack which includes actual server hardware, switches, routers, firewalls, etc.