I’m a pretty diehard Azure guy, been so since PDC09 when I was trying to get storage tables\queues and VM’s implemented at my job at the time. Almost all of my projects and stuff I land on Azure, it’s just the easiest place for me to do so, if not a little bit spendy.
I wasn’t always an Azure or cloud guy before I was a developer I was a systems administrator, responsible for servers ranging from SQL to Exchange at a small company. We 4 full racks of servers with a bunch of others with network equipment, firewalls, UPS’s and the like. During those days I couldn’t imagine a time not having control of the metal, and there almost nothing like unpacking a new piece of equipment, setting it up and getting it racked.
Back in those days, I had rack and servers all over my place. All the old stuff we decommissioned from the office. When I had all those up and running the noise was insane, but I was used to it from working in the server room most of the day.
Oh how times have changed, besides a beefy workstation and some other small devices and systems everything else I do is Azure based and has been for years. But try as I might there just are some things that I need on-prem at my house. So I will take you through that thought process.
First, where I live doesn’t have the best Internet. I now pay for business-grade Charter Spectrum, but the upload on that service is still pathetic, only 10Mbps. That may sound like a lot, but I plan on having some cameras installed at my place and each one of those requires 2Mbps. I used to use CrashPlan for my backup solution but with them going business only I took a hard look at what I was backing up and $100 or more a year and the cost in resources (upload) was pretty steep. Backups just made sense to have in-house with occasional syncing to OneDrive or some other storage provider.
So I looked into NAS options, finally settling on a Synology one, but when pricing it out it was pretty ouch, $500 for the unit and + the drives I wanted to add to it (with the expansion frame). Pricing that all out it would be about $1,500 for the NAS and storage (with fault tolerance i.e. RAID5) that I wanted. That’s a lot of money!
Recently I’ve started to work on other skills, mainly Containers, and non-Microsoft development stacks. Although I could use Azure for this, spinning up and keeping that stuff in the cloud could get pretty expensive, do I want to spend $300+ a month for some VM’s and serverless resources?
So I decided a local server would solve a lot of my needs. I could use it as a NAS, server to test deployments and any long running processes (like a Team City build server) and the like. So I will need a system with enough cores, ram and disk space for all those workloads.
An off the shelf system is also going to be a little on the big and loud side. I’m not too interested in having another jet turbine in the office. So based on that and the price for a system with enough core’s I’m going to have to build it myself.
I found this blog post, Build Your Own 32 Core Home Lab Server and it pretty closely matched my needs, so I decided to give it a go. The post is over a year old now so I will chronicle my experience buying the gear now, the cost and the setup.
So here are my targets, ideally Id like to get a 48 core system, but just a quick glance at some of those procs they seem pretty expensive. I want to be able to support 6 decently spec’ed VM’s, I’m equating those to D4MS Azure instances which are 4 Core, 16GB of RAM, which cost about $167/mo.
|32TB RAID 5
My goal is to keep the cost below $2,500 (which would be 1k above a fully loaded NAS). Which would start paying for itself after 14 months. As much as I can I’ll be trying to buy the parts new from Amazon, and then fallback to eBay when needed (for cost or availability).
If you’re a First Responder or know one check out Resgrid which is a SaaS product utilizing Microsoft Azure, providing logistics, management and communication tools to first responder organizations like volunteer fire departments, career fire departments, EMS, search and rescue, CERT, public safety, disaster relief organizations.