Add Homelab Post pt1
All checks were successful
Build Hugo Site / build (push) Successful in 58s

This commit is contained in:
Ben Hays 2023-11-24 17:26:15 -05:00
parent d4104b1168
commit 72c302de5e

View File

@ -0,0 +1,56 @@
---
title: "My Homelab: Planning (1/4)"
date: 2023-11-06T16:21:04-05:00
toc: true
images:
tags:
- Security
- Network Automation
- DevOps
---
## Part 1: Introduction and Motivation
### 1.1 Introduction
Welcome to the exciting world of Home-Labs! In this series of posts, I'll be sharing my hands-on journey of building a Home-Lab from scratch (albeit with hefty amounts of encouragement/brainstorming from Reddit). If you're passionate about enterprise technology, eager to gain hands-on experience, or ready to put those IT certifications up to the test, you're in the right place.
### 1.2 Importance of a Home-Lab
Why would someone put significant amounts of their spare time and money towards a Home-Lab?
In the vast landscape of IT, theoretical knowledge only takes you so far. A Home-Lab is essentially your own personal IT playground. It's a place to turn concepts into reality, test new ideas, and refine your skills. It's a hands-on classroom where mistakes are learning opportunities, and breakthroughs are celebrated. Home-labs aren't all the same, so if you're really interested in complex Windows networks, or time-saving DevOps tricks, or advanced hypervisor deployment, or pretty much anything you can name, there's probably a home-lab environment for that. The best part? You get to choose.
### 1.3 Personal Motivations
My decision and primary inspiration to create a Home-Lab mostly came from the r/sysadmin and r/homelab communities on Reddit, along with some suggestions from friends. I wanted to build something practical for my everyday life, whilst also learning a bunch about networking and security. As such, some hardware decisions were made for price-saving reasons, and for ease of maintenance.
## Part 2: Planning My Home-Lab
### 2.1 Assessing Space and Resources
#### Tailoring the Lab to My Space
Given the constraints of my living space, I had to carefully assess where my Home-Lab could fit. Luckily, I had a bit of spare room in my basement, so I repurposed it for this purpose. This decision influenced the size and type of equipment I could accommodate. Some home-labs fit on desks using Raspberry Pis and Micro-PCs, luckily due to this choice I did not need to worry about those constraints
If you're planning on creating a home-lab, take a close look at your available space and envision how it can be optimized for your homelab. Whether it's a spare room, a corner in your living space, or a dedicated area in the garage, make the most of the space you have.
#### Taking Inventory of Resources
Before diving into purchases, I took stock of the resources at my disposal. Existing hardware, spare components, and even unused devices were considered. This not only saved on costs but also gave a second life to equipment that might have otherwise been forgotten. For the most part, I had all the cables needed (cat5e, cat6, et cetera) for the devices I had planned to use. If I had more existing equipment, I probably would've made an Excel spreadsheet to track it all, but given all I really had was cables, it wasn't needed.
### 2.3 Budgeting for My Home-Lab
#### Financial Realities
Building a homelab doesn't have to be an extravagant expense, despite what many of the lab screenshots on the internet would like you to believe. However, setting a realistic budget early on is crucial. I carefully considered immediate costs and potential future upgrades. Exploring cost-effective solutions and repurposing existing hardware were key strategies in keeping the budget manageable. I created a spreadsheet to track it all, and total up costs and potential future costs.
## Part 3: Choosing Hardware for My Home-Lab
### 3.1 Server Hardware
For my homelab, it was important that I could be able to sustain many VMs running concurrently, as well as leaving room for expansion if I needed to. It was also important to select hardware that wouldn't break the bank in terms of power draw. As such, I mostly looked towards used rack server equipment for this set of needs.
In the end, I opted for a used (and rather cheap) Dell PowerEdge R720 with a Intel Xeon E5-2660 v2 and 128GB of RAM for its great price, good performance, support for many VMs, and room for expansion storage-wise. It perfectly aligned with my goal of creating a virtualized environment for running web applications, AD controllers, and test networks.
### 3.2 Networking Equipment
A homelab's hardware and software is only as strong as its network, and choosing the right networking equipment was paramount. I carefully assessed the network requirements for my projects and selected a used Cisco Catalyst 3560G and a virtualized pfSense instance to create a reliable and high-performance network infrastructure.
Of course, Gigabit Ethernet and 2-3yo Cisco Multilayer switches aren't exactly the newest and coolest tech on the market, but they were very helpful in my CCNA certification learning, and they're more than alright for my homelab needs.
### 3.3 Storage Solutions
Storage is often a balancing act between speed and capacity. For my homelab, I needed sufficient storage for virtual machines and data, coupled with the speed required for responsive application hosting.
I settled with 4TBs of SAS hard-drives that were compatible with the Dell PowerEdge that I chose. They aren't the best storage solution, and they're getting a bit old/slow at this point in their lifespan, but given my needs they were suitable. The next physical thing I may upgrade will likely be the hard-drives, but they have yet to break or show any problems, so I will likely continue using them on the server.
I also utilized an existing Synology NAS with 8TBs of SATA HDDs for backup solutions (as seen later in this blog series), however this wasn't directly associated with my homelab, as I had it and was utilizing it beforehand.
## Part 4: Planning the Physical Environment
To Do...