Skip to content

Technologies

Reference of technologies used in the fzymgc-house cluster.

Quick Reference

Technology Category Purpose
k3s Kubernetes Lightweight Kubernetes distribution
Calico Networking CNI with network policies
kube-vip Networking Control plane HA VIP
MetalLB Networking LoadBalancer implementation
Longhorn Storage Distributed block storage
Vault Security Secrets management
Authentik Security Identity provider & SSO
cert-manager Security TLS certificate automation
Grafana Observability Dashboards & visualization
VictoriaMetrics Observability Metrics storage
Loki Observability Log aggregation
ArgoCD GitOps Kubernetes deployment
Terraform GitOps Infrastructure as Code
Windmill GitOps Workflow automation

Kubernetes

Technology Version Purpose Docs
k3s 1.31.x Lightweight Kubernetes k3s.io
Calico 3.29.x CNI networking & policies projectcalico.org
kube-vip 0.8.x API server HA VIP kube-vip.io
MetalLB 0.14.x Bare-metal LoadBalancer metallb.universe.tf
Gateway API 1.2.x Next-gen ingress API gateway-api.sigs.k8s.io

Networking

Technology Version Purpose Docs
Traefik 3.x Ingress controller & proxy traefik.io
Cloudflared Latest Cloudflare Tunnel client developers.cloudflare.com
CoreDNS k3s bundled Cluster DNS coredns.io

Storage

Technology Version Purpose Docs
Longhorn 1.7.x Distributed block storage longhorn.io
CloudNative PG 1.25.x PostgreSQL operator cloudnative-pg.io

Security

Technology Version Purpose Docs
Vault 1.18.x Secrets management vaultproject.io
Authentik 2024.12.x Identity provider & SSO goauthentik.io
cert-manager 1.16.x TLS certificate automation cert-manager.io
External Secrets 0.12.x Secrets sync from Vault external-secrets.io
Velero 1.15.x Backup & disaster recovery velero.io

Observability

Technology Version Purpose Docs
Grafana 11.x Dashboards & visualization grafana.com
Grafana Operator 5.x Grafana CRD management grafana.github.io/grafana-operator
VictoriaMetrics 1.x Prometheus-compatible TSDB victoriametrics.com
Loki 3.x Log aggregation grafana.com
Grafana Alloy 1.x Telemetry collector grafana.com

GitOps

Technology Version Purpose Docs
ArgoCD 2.13.x Kubernetes GitOps argo-cd.readthedocs.io
HCP Terraform Cloud Infrastructure automation terraform.io
Terraform 1.10.x Infrastructure as Code terraform.io
Windmill 1.x Workflow automation windmill.dev
HCP TF Operator 2.x TF Cloud K8s integration github.com/hashicorp

Infrastructure

Technology Version Purpose Docs
Ansible 2.17.x Node configuration docs.ansible.com
Kubernetes Replicator 2.x Secret/ConfigMap sync github.com/mittwald
System Upgrade Controller 0.14.x Automated k3s upgrades github.com/rancher
Actions Runner Controller 0.9.x GitHub Actions runners github.com/actions

Hardware

Component Model Notes
Cluster Board TuringPi 2 2 boards (alpha, beta)
Compute Module RK1 (Rockchip RK3588) 8 nodes total
OS Armbian 25.08 Debian-based ARM64
Network Interface end0 Armbian naming convention

Version Management

Helm Chart Sources

Repository URL Used For
Bitnami oci://registry-1.docker.io/bitnamicharts PostgreSQL, Redis
Grafana https://grafana.github.io/helm-charts Grafana, Loki, Alloy
HashiCorp https://helm.releases.hashicorp.com Vault
Authentik https://charts.goauthentik.io Authentik
Traefik https://traefik.github.io/charts Traefik
ArgoCD https://argoproj.github.io/argo-helm ArgoCD
Longhorn https://charts.longhorn.io Longhorn
MetalLB https://metallb.github.io/metallb MetalLB
Windmill https://windmill-labs.github.io/windmill-helm-charts Windmill

Update Process

  1. Check for new versions in Helm repositories
  2. Review changelog and breaking changes
  3. Update ArgoCD Application helm values
  4. ArgoCD syncs changes automatically
  5. Monitor for issues in Grafana dashboards

API References

API Version Docs
Kubernetes v1.31 kubernetes.io/docs
Traefik CRDs traefik.io/v1alpha1 doc.traefik.io
Grafana CRDs grafana.integreatly.org/v1beta1 grafana-operator
External Secrets external-secrets.io/v1beta1 external-secrets.io
cert-manager cert-manager.io/v1 cert-manager.io
MetalLB metallb.io/v1beta1 metallb.io