HomeLab Services Tour 2024 - What Am I Self Hosting?

Techno Tim40 minutes read

The home setup includes various technologies like Kubernetes, Docker, GitOps, and CI/CD for automation, with hardware like switches and routers. VLANs segregate devices based on trust levels, with devices grouped according to their roles within the network.

Insights

  • The speaker utilizes VLANs to segment devices based on trust levels and operational requirements, ensuring a secure and organized network environment.
  • High availability is prioritized in service architecture over virtual machines within the cluster, showcasing a strategic approach to reliability and redundancy in the home lab setup.

Get key ideas from YouTube videos. It’s free

Recent questions

  • What is the purpose of VLANs in a home lab setup?

    VLANs in a home lab setup are utilized to segregate devices based on trust levels and control over them. They help in organizing devices into different networks such as default, guest, cameras, main, IOT, server trusted, server untrusted, and travel. By using VLANs, devices can be grouped based on their roles and needs within the network, ensuring security and efficient management of the home lab environment.

  • How is high availability achieved in the home lab setup?

    High availability in the home lab setup is built into services rather than virtual machines in the cluster. The speaker runs a cluster with an even number of devices but has adjusted to achieve Quorum with four devices. This setup ensures that services remain available even in the event of hardware failures or disruptions, enhancing the reliability and performance of the home lab environment.

  • What tools are used for deployment automation in the home lab setup?

    Deployment automation in the home lab setup is achieved using GitOps with Flux and Renovate bot. GitOps allows for automated deployment of changes to the infrastructure based on Git repository changes, ensuring consistency and reliability. Renovate bot helps in automating updates to dependencies, keeping the environment up-to-date and secure. These tools streamline the deployment process and enhance efficiency in managing the home lab setup.

  • How is monitoring handled in the home lab setup?

    Monitoring in the home lab setup is managed using Uptime Kuma for internal monitoring and Uptime Robot for monitoring external services. Uptime Kuma helps in monitoring the health and performance of internal services within the home lab environment, while Uptime Robot ensures the availability and uptime of external services. By utilizing these monitoring tools, the speaker can proactively identify and address any issues that may arise, maintaining the stability and reliability of the home lab setup.

  • What role does Traefik play in the home lab setup?

    Traefik serves as a reverse proxy in the home lab setup, with three instances running in two clusters. It also functions as an ingress controller within Kubernetes, routing requests accordingly. By using Traefik, the speaker can efficiently manage incoming traffic, handle routing, and ensure secure communication between different services within the home lab environment. Additionally, Cert manager is utilized to provision and store certificates securely, enhancing the overall security and performance of the setup.

Related videos

Summary

00:00

"Home Lab Setup with VLANs and Servers"

  • The home lab setup includes dashboards, hypervisors, an NAS, DNS, network management, Docker, Kubernetes, GitOps, CI/CD, reverse proxies, monitoring, data visualization, and home automation.
  • Network and logical diagrams are provided to aid in understanding the setup.
  • Hardware includes a UDM SE, Switch Aggregation Pro, 48-port switch, 24-port PoE switch, 16-port PoE switch, Flex Mini switch, and USW Flex XG.
  • VLANs in use are default, guest, cameras, main, IOT, server trusted, server untrusted, and travel.
  • Devices are grouped based on their roles and needs within the VLANs.
  • The internet connection is established through a modem, firewall, and UDM SE router.
  • VLANs are utilized to segregate devices based on trust levels and control over them.
  • VLANs include default network, camera VLAN, IOT VLAN, main network, and guest network.
  • Trusted servers include Kubernetes cluster, DNS servers, NAS, PyKVM, Windows VM, IPMI, and UPS.
  • Untrusted servers host public-facing workloads like websites, blogs, wikis, bots, and webhooks, with security measures in place.

12:48

"High Availability Cluster with TrueNAS and UniFi"

  • The speaker runs a cluster with an even number of devices but has adjusted to achieve Quorum with four devices.
  • High availability is built into services rather than virtual machines in the cluster.
  • The Stornator device, previously hosting virtual machines like Andromeda, now runs physical TrueNAS on an HL15.
  • Services on Xing One, Two, and Three Intel NUCs include six virtual machines each with 64GB RAM and low swap usage.
  • TrueNAS Scale, running on an HL15 with 128GB RAM, provides SMB, NFS, iSCSI targets, and Minio for object storage.
  • The NAS has ten mirrored VDevs with 14TB each, optimized for storage services and backups.
  • Three PiHole instances ensure DNS service redundancy, with one on a PiZero for network stability.
  • UniFi network controller manages Ubiquiti devices for network and camera management.
  • UniFi Protect, with ten cameras and a 14TB drive, serves as a home security system and firewall.
  • Containerization includes Docker-only hosts managed by Portainer and three Kubernetes clusters managed by Rancher, with GitOps for deployment automation using Flux and Renovate bot for updates.

24:48

"GitOps, Traefik, Cert Manager, Home Automation, Plex"

  • Videos on GitOps with Flux and Renovate bot are available.
  • Traefik is used as a reverse proxy, with three instances running in two clusters.
  • Traefik serves as an ingress controller within Kubernetes, routing requests accordingly.
  • Cert manager is utilized to provision and store certificates securely.
  • Uptime Kuma is used for internal monitoring, while Uptime Robot monitors external services.
  • Loki, Grafana, and Prometheus were removed due to resource constraints on Intel NUCs.
  • Home Assistant is employed for home automation, running in the Kubernetes cluster.
  • Scripted is used to integrate cameras into HomeKit, bridging the gap with Unifi Protect.
  • SyncThing was discontinued for data synchronization, with future plans for ZFS snapshots.
  • A personal Links Page and Link Shortener are maintained for easy access and control over links.
  • Plex serves as the primary home entertainment system, residing on a Windows virtual machine.

37:28

Efficient website creation and deployment with runners

  • Static site generators like Hugo and Jekyll allow for website creation from markdown, simplifying the process by generating markup automatically, enabling easy deployment and hosting on personal clusters.
  • Utilizing both GitHub Actions runners and GitLab runners for CI/CD processes ensures priority, unlimited resources, and internal hosting, avoiding shared runners' limitations, enhancing security, and enabling efficient code building and deployment to personal Kubernetes clusters.
Channel avatarChannel avatarChannel avatarChannel avatarChannel avatar

Try it yourself — It’s free.