Introduction

Warning

These docs contain information that relates to my setup. They may or may not work for you.



Lovenet Home Operations Repository

Managed by Flux, Renovate and GitHub Actions 🤖

Kubernetes   Renovate   Documentation  

Kubernetes Cluster Information

Age-Days  Node-Count  Pod-Count  CPU-Usage  Memory-Usage  Check Links  Alerts  

Infrastructure Information

Power-Usage 



Overview

This is the configuration for my GitOps homelab Kubernetes cluster. This cluster runs home software services for my residence. It is quite complex and there are a lot of interdependencies but the declarative nature of GitOps allows me to manage this mesh of code. The software services fall into a few primary categories:

Core Components

Infrastructure

Networking

  • cilium: Kubernetes Container Network Interface (CNI).
  • cert-manager: Creates SSL certificates for services in my Kubernetes cluster.
  • external-dns: Automatically manages DNS records from my cluster in a cloud DNS provider.
  • Cloudflared: Cloudflare tunnel client.
  • Envoy Gateway: Networking gateways into cluster.

Storage

  • Rook-Ceph: Distributed block storage for peristent storage..
  • Minio: S3 Compatible Storage Interface.
  • Longhorn: Cloud native distributed block storage for Kubernetes.
  • NFS: NFS storage.

GitOps


⚙️  Hardware

HostnameDeviceCPURAMOSRoleStorageIOTVLANs (multus)
master1Intel NUC7PJYH48 GBCentOS 9k8s Master
master2VM on beast38 GBCentOS 9k8s Master
master3VM on beast38 GBCentOS 9k8s Master
worker1ThinkCentre M910x832 GBCentOS 9k8s Workerlonghorn NVMe, ceph osdZWA-2iot, sec
worker2ThinkCentre M910x832 GBCentOS 9k8s Workerlonghorn NVMe, ceph osdiot, sec
worker3ThinkCentre M910x864 GBCentOS 9k8s Workerlonghorn NVMe, ceph osdSonoffiot, sec
worker4ThinkCentre M910x832 GBCentOS 9k8s Workerlonghorn NVMe, ceph osdCoral USBiot, sec
worker5VM on beast1024 GBCentOS 9k8s Workerlonghorn NVMe, ceph osdiot, sec
worker6VM on beast1024 GBCentOS 9k8s Workerlonghorn NVMe, ceph osdiot, sec
worker7VM on beast1024 GBCentOS 9k8s Workerlonghorn NVMe, ceph osdiot, sec
worker8VM on beast1058 GBCentOS 9k8s Workerlonghorn NVMe, ceph osdnVIDIA P40iot, sec

Network

Click to see a high level physical network diagram dns
NameCIDRVLANNotes
Management VLANTBD
Default192.168.0.0/160
IOT VLAN10.10.20.1/2420
Guest VLAN10.10.30.1/2430
Security VLAN10.10.40.1/2440
Kubernetes Pod Subnet (Cilium)10.42.0.0/16N/A
Kubernetes Services Subnet (Cilium)10.43.0.0/16N/A
Kubernetes LB Range (CiliumLoadBalancerIPPool)10.45.0.1/24N/A

☁️ Cloud Dependencies

ServiceUseCost
1PasswordSecrets with External Secrets~$65 (1 Year)
CloudflareDomainFree
GitHubHosting this repository and continuous integration/deploymentsFree
MailgunEmail hostingFree (Flex Plan)
PushoverKubernetes Alerts and application notifications$10 (One Time)
Frigate PlusModel training services for Frigate NVR$50 (1 Year)
Total: ~$9.60/mo

Noteworthy Documentation

Cluster Rebuild Actions   Initialization and Teardown   Github Webhook   Limits and Requests Philosophy   Debugging   Immich restore to new CNPG database   nVIDIA P40 GPU  

@whazor created this website as a creative way to search Helm Releases across GitHub. You may use it as a means to get ideas on how to configure an applications' Helm values.