Dies ist eine alte Version des Dokuments!


FiberOps Platform – DevOps Showcase

Dieses Projekt ist ein praxisnahes DevOps-Showcase und demonstriert den Aufbau, die Automatisierung und den Betrieb einer containerisierten Plattform für einen internen Glasfaser-/Netzbetriebsservice.

Die Dokumentation richtet sich bewusst sowohl an technische Entscheider als auch an nicht-technische Leser.

Ziel ist es zu zeigen, wie moderne DevOps-Arbeit in einer On-Prem- oder Cloud-nahen Umgebung aussieht:

  • reproduzierbare Infrastruktur
  • klare Trennung von Verantwortlichkeiten
  • automatisiertes Deployment
  • stabiler, beobachtbarer Betrieb

Der fachliche Use Case orientiert sich an einem realen Szenario aus dem Glasfaserbetrieb (POP, OLT, Segmente, Incidents).

Root Server (Debian 12)
│
├─ KVM / QEMU / Libvirt
│
├─ VM 1: Kubernetes (k3s)
│   └─ FiberOps Webservice (Container)
│
└─ VM 2: Monitoring
    ├─ Prometheus
    └─ Grafana

Warum diese Architektur?

  • Virtualisierung (KVM): saubere Isolation, typisch für On-Prem-Betrieb
  • Kubernetes: deklarativer Betrieb, Self-Healing, saubere Updates
  • k3s: gleiche Kubernetes-API bei geringerem Ressourcenbedarf
  • Trennung von Anwendung und Monitoring
  • Root-Server mit Debian 12
  • Root-Zugriff
  • 8 CPU-Kerne
  • ca. 16 GB RAM empfohlen
  • Internetzugang
  • SSH-Zugriff

Installation der notwendigen Komponenten auf dem Root-Server:

apt update
apt install -y \
  qemu-kvm \
  libvirt-daemon-system \
  libvirt-clients \
  virtinst \
  bridge-utils \
  cloud-image-utils
systemctl enable --now libvirtd

Optional: aktuellen Benutzer zur libvirt-Gruppe hinzufügen:

usermod -aG libvirt,kvm $USER

Die VMs werden per cloud-init automatisiert erzeugt. Dadurch ist das Setup reproduzierbar und ohne manuelle Installation.

Beispiel (verkürzt):

virt-install \
  --name fiberops-k3s \
  --memory 4096 \
  --vcpus 4 \
  --disk size=30 \
  --os-variant debian12 \
  --network network=default \
  --graphics none \
  --import

Eine zweite VM wird analog für Monitoring erstellt.

In der Kubernetes-VM:

curl -sfL https://get.k3s.io | sh -
kubectl get nodes

k3s wurde bewusst gewählt:

  • gleiche Kubernetes-API wie „vollwertiges“ k8s
  • geringerer Overhead
  • ideal für kleine bis mittlere Plattformen

Die Anwendung wird containerisiert und über Kubernetes betrieben.

Deployment ausführen:

kubectl apply -f k8s/namespace.yaml
kubectl apply -f k8s/deployment.yaml
kubectl apply -f k8s/service.yaml
kubectl apply -f k8s/ingress.yaml

Status prüfen:

kubectl get pods -n fiberops
kubectl get svc -n fiberops

Der Build- und Deployment-Prozess ist automatisiert:

  • Code-Änderung → Git Push
  • CI baut Container-Image
  • Image wird in Registry gespeichert
  • Kubernetes rollt neue Version kontrolliert aus

Dadurch sind keine manuellen Deployments notwendig.

Monitoring erfolgt getrennt von der Anwendung:

  • Prometheus sammelt Metriken
  • Grafana visualisiert:
    • Node-Auslastung
    • Pod-Status
    • Verfügbarkeit des Services

Dies bildet die Grundlage für:

  • Fehlererkennung
  • Kapazitätsplanung
  • spätere Alerts
  • Kubernetes Probes überwachen die Anwendung
  • Pods werden bei Fehlern automatisch neu gestartet
  • Updates erfolgen als Rolling Update ohne Downtime
  • Infrastruktur ist vollständig neu aufsetzbar
  • Multi-Node Kubernetes
  • GitOps (z. B. ArgoCD)
  • Backups
  • High Availability Control Plane
  • Network Policies / RBAC-Härtung
  • fiberops-platform.1769496117.txt.gz
  • Zuletzt geändert: 04:33 06/02/2026
  • (Externe Bearbeitung)