Infrastructure

Dockerized Monitoring

A comprehensive, fully containerized observability stack engineered to provide deep insights into infrastructure performance. Deployed declaratively via Docker Compose, this suite leverages Prometheus to scrape critical metrics across diverse services. Grafana acts as the visualization layer, providing customized, dynamic dashboards with alerting thresholds. Integrating NodeExporter and cAdvisor, the stack proactively monitors host hardware health and container resource constraints, ensuring potential bottlenecks are identified before they impact downstream services.

architecture

Architecture Overview

The cluster is designed for resilience and learning. It comprises 3 control-plane nodes and 4 worker nodes, mixed architectures (ARM64 and AMD64).

Networking is handled via Cilium for advanced eBPF-based routing and observability, while MetalLB provides on-premise LoadBalancer capabilities.

  • Control Plane: 3x RPi 4 (8GB) running etcd cluster.
  • Worker Nodes: 4x Dell Optiplex Micro (i5, 32GB RAM).
  • Storage: Longhorn providing distributed block storage over 10Gbps local network.
terminal

GitOps Configuration

flux-kustomization.yaml
apiVersion: kustomize.toolkit.fluxcd.io/v1beta2
kind: Kustomization
metadata:
  name: infrastructure
  namespace: flux-system
spec:
  interval: 10m0s
  path: ./infrastructure
  prune: true
  sourceRef:
    kind: GitRepository
    name: home-ops
  # Wait for CRDs to be applied before moving on
  wait: true