Skip to content

Note

This documentation is a Work In Progress. Incomplete or broken pages are to be expected.

Welcome to my Homelab Documentation!#

Introduction#

Welcome to the documentation page for my homelab! This is a space where I share my experiences, learnings, and projects related to my personal infrastructure setup. My homelab serves as a platform for experimentation, learning new technologies, and exploring the world of DevOps. It has allowed me to gain practical experience, enhance my technical skills, and fulfill my interests in the field.

Purpose#

The primary purpose of my homelab is to create a hands-on environment where I can experiment with different technologies, particularly those related to DevOps and GitOps. By having multiple servers and a Kubernetes (k3s) cluster, I can test popular tools like Jenkins, ArgoCD, Terraform, and more. This hands-on approach enables me to understand these tools better and implement them effectively in real-world scenarios.

Additionally, my homelab allows me to gradually reduce my reliance on cloud services for data storage and sharing. With multiple companies facing data leaks and controversies, I value having control over my own data and ensuring its security. Through my homelab, I have explored alternatives to services like Dropbox and Google Drive, enabling me to securely store and share files with friends and family.

Motivation#

The journey of building my homelab began with the need for secure data storage and sharing. Initially, I started with a Synology NAS to meet these requirements and explore the available applications. As my needs expanded, I ventured into building a server using consumer hardware, which introduced me to the world of Linux. The discovery of Proxmox and virtualization servers sparked my interest in running Linux-based virtual machines (VMs) to facilitate testing, quick deployments, and system recovery.

Key Components#

My homelab consists of several key components that contribute to its functionality:

  • Servers: I have three servers running Proxmox, each equipped with 64GB of RAM and 10Gb networking cards. These servers form the backbone of my infrastructure.
  • Networking: A 10Gb Ubiquiti switch connects my servers, ensuring high-speed communication and efficient data transfer.
  • Storage: One of the servers hosts a VM running TrueNAS, which utilizes a PCIe passthrough to connect and manage six 4TB HDDs. This setup provides ample storage capacity and data redundancy.
  • Router/Firewall: I have a dedicated VM running PfSense, which serves as my main router and firewall, ensuring network security and traffic management.

For detailed hardware and software specifications, please refer to the respective pages dedicated to each component in this documentation.

Benefits and Personal Growth#

My homelab has brought several benefits to both my personal and professional life. Personally, it has allowed me to work more efficiently and securely. Hosting services such as Jellyfin and Navidrome has streamlined my entertainment experience by centralizing movies, series, and music in one place. This independence from mainstream platforms like Netflix and Spotify ensures that I have access to content I enjoy without worrying about subscriptions or platform limitations.

Professionally, my homelab has been instrumental in expanding my knowledge and skills. It has provided me with hands-on experience in network structuring, server management, Linux administration, and the implementation of DevOps practices. The insights gained from managing and maintaining my homelab have positively impacted my professional growth and enabled me to apply these learnings in real-world scenarios.

Next Steps#

Now that you have an overview of my homelab, feel free to explore the documentation pages dedicated to each component, services, and applications.