What would you recommend to a guy whose just getting started out and pursuing his trifecta?
Software developer here and I had to learn k8s for work (small startup, we didn’t have devops people). We manually were provisioning Debian servers to add more api backends, and it took us one hour per instance. Figured there had to be a better way. So in no particular order:
- docker / containerization.
- secure certificates for everything: nginx / reverse proxy / certificates.
- k8s.
Super steep learning curve. Easier to do on the cloud than it is in the homelab. In the homelab:
- segmenting home network into different VLANs, firewall rules.
- Tailscale for multi-site access.
- cloudflare zero-trust tunnel for secure off-site access by friends.
- reverse proxy backed by let’s encrypt TLS for secure private connections.
- getting all the *arrs setup via docker. plex on nuc, media share on NAS, accessible via NFS. Orchestrating so that either restarting is recoverable.
- Prometheus / grafana for monitoring
- setting up alerts for everything
Current project:
- migrate off docker into k3s on top of metallb for ingress, longhorn for persistent storage, helm for charts, argocd for gitops, ansible for automation. I never want to SSH into a server again. And I want to manage all my infrastructure through a git repository. Totally overkill for the homelab but guaranteed to get you multiple offers in Silicon Valley.
Gonna echo some of the other replies on what I’ve used at home that’s helped me out.
-
Media - Used Windows Media Center on Windows XP/7 to start with > XBMC/Kodi > Plex - on several different machines
-
Networking - First wireless router was a Netgear N750, and it was great until the wife spilled some water on it > Netgear Nighthawk R7000 > Ubiquiti Edgerouter ER-X and UAP-AC-LR Access Point > still using the ER-X router but got a U6-Lite AP and then an Engenius controller and ECS-357 AP > ER-X and Aruba AP315/325 converted to be IAP models.
Got a Meraki MS120-8LP switch for POE for my APs. Ended up getting a bunch of Cisco switches and routers of different models to use at home from my current job. Still haven’t setup a working lab with those yet.
- Compute - This has been the most recent developments due to getting disposal mini desktops from work. Currently have a 3 node Proxmox cluster with 2 Windows server 2022 eval vms. One is a domain controller and the other is going to be setup for MECM(new acronym for SCCM).
I reckon that’s it for now.
-
Absolutely nothing has been as helpful in understanding how the internet works, as setting up and actually using BGP. An asn and a /40 for ipv6 can be had for almost nothing as a one time fee if you go through a LIR. Ipv4 is very expensive to buy but renting a /24 can be had for around $100 a month. And then you’re ready to start peering over tunnels or you can get VPSes that support it or ask your ISP (usually only on higher end business connections).
Setup a Plex/Jellyfin server and then oversubscribe it to family and friends.
Im a little “seasoned” at 45 rotations around the blue ball so YRMV lol
1 - Pirated Movies - XBMC -> Plex (2 bare metal servers with transition to Virtual in progress)
2 - Storage - Freenas -> Synology (300+TB across 6 units)
3 - Networking - Unmanaged -> Managed / Multi Vendor / LACP / WIFI
4 - Compute - ION Based NUC -> ThinCentre / ML360G6
5 - Virtual Envio - Single ESXI Host -> 5 Node Proxmox Cluster with Ceph on 10G
Basically for me it started with Saving private ryan on VCD / CDR back in the day, that led me down the IRC rabbit hole and i got into XBMC for playback. That meant NAS storage for more movies and then from XBMC i moved into Plex so needed more server based compute and such. All the while needed to learn networking to hook it all up and make it work correctly.
I also went from working at Terminix as a pest control operator to doing customer support via email for a .com in the early 2000’s to now leading technical deployments at a forture 10 pharma :)
All cause of Saving Private Ryan on Pirated VCD in CAMMED quality lol
For me it was the UPN TV show Legend and the VCDs I purchased off Ebay to replace my worn out VHS.
First home server was a Compaq with a Pentium 3 running XBMC and it went on from there.
For me it isn’t the specific projects that help me understand IT, it is when things don’t work or break that I learn the most.
I work in IT support day job, Microsoft shop but home lab is all Linux so there isn’t much cross over in terms of specific apps, but the troubleshooting approach and techniques are transferable skills.
set up dedicated game servers to share with friends. Especially on some hyperviso.
- Installing Server 2016 and learning to provision machines and set group policies in active directory.
- Running Wazuh and lerning how to remediate issues and errors across Windows, Mac, and my Linux machines…or at least learning what they are.
- Using Windows, Mac, and Linux.
I remember one interview where the subject of Home Assistant came up and one of the interviewers was having an issue with his set up and I told him how to fix it. I got an offer from that company.
So, in my experience, a general interest in technology and continuos learning…just because you genuinely like it, helps.
vlan
k8 cluster.
hpc cluster simulation
GPU cluster simulation
proxmox-/vmware install and management.
building general networking and solving mid level networking issues.I think setting up active directory domain controller with all the DHCP/DNS and group policies is a number one thing to do, if you don’t know how to do that.
Another thing would be running a Linux server and have a website. Learn how apache and Nginx works. And how to use them together.
It also helped to understand networking and virtual networking from non Cisco perspectives. I have a ccna and net+ and setting up opensense+pihole with network services was very weird, it felt completely different compared to ccna and net+ studies.
Well and of course having experience with virtualization. Learning different types of virtual storage and just in general how virtualization works.
The last thing is options but it is something that I decided to do, that can help you with networking(however there are other things you could set up that would be more useful). I would set up the gns3 server. This would help you with networking, especially if you are trying to study for network certs after ccna. But like I said, there are other projects that you can set up, that will be way more useful as a beginner.
Any chance you have a recommendation for a directory application that can be used to manage Linux, Mac, and windows?
Truenas/Linux Proxmox/Virtualization Docker/Containerization/Portainer Traefik/Reverse Proxy/SSL Certificates PiHole/DNS
I’m going into my 2nd year self-hosting and home-labbing. i learned all of these skills from watching TechnoTim, DBTech, Network Chuck, Raid Owl, Christian Lempa, Level1Techs, Learn Linux TV, Awesome Open Source, Craft Computing, and Jeff Gerling. These guys are awesome i highly recommend them.
Running my own vmware server
Configuring guest network
Multiple vlans
Configuring tagging on switches for said vlans
Installing Linux on a VM and taking the plunge to learn it.
A robust PKI implementation.
Trying to setup Nextcloud calling on docker 🥹
1st: Virtualization
2nd: Firewalls and networking
3rd: Containers, Docker, (Podman) and LXC, (Incus)
4th: All the above leads onto Hypervisors
5th: Which leads you to Kubernetes
The first three require minimal hardware. Once you’ve got the hang of the them, it’s time to get serious with a dedicated machine with greater hardware resources to run a Hypervisor.
Kubernetes, all that built in redundancy makes it hungry beast. Enough to get you looking for one or more those big old servers that homelabers love.
This. Honestly has helped grow my skills across a lot of disciplines that has been a great strength to my IT/Cyber career.
I had to upvote this because I like the added “progression path analysis” given. Everything checks out so far from my personal experience.
However I have not yet delved into kubernetes yet.
Could the poster of this reply elaborate (briefly is fine) what some advantages are with Kubrn8s? You mention redundancy. From my completely inadequate understanding of kuber, you can cluster together the resources of different individual systems? Like how truenas can use all the storage of different sized drives to form one pool that can be managed as 1 resource? This of course would just be an example of what it does in concept?
So theoretically, one can sort of network a cluster of old PC’s to make a really decent, redundant “server” that shares the workload?
Hop over to the Youtube channel “Jim’s Garage”. Awesome detailed tutorial series for Kubernetes. If your brain cells have been enjoying the quiet life, it’s over, because boot camp is here. It tough going, but it’s worth it.