Komponenten & Features¶
Die ayedo Software Delivery Platform (SDP) bildet auf Kubernetes die Platform- und Workload-Services ab — Networking, Edge, Security, Storage, Datenbanken, Observability, Identity, Delivery, Registry, Secrets und den Polycrate Operator. Diese Seite listet die Komponenten und verlinkt die jeweiligen Polycrate-Blöcke im Polycrate Hub — dort stehen die aktuellen Block- und App-Versionen.
Die Kubernetes Distribution liefert nur das Cluster (k3s-server / k8s-1.27); die hier beschriebenen Features gehören zur SDP.
Networking¶
Cilium - eBPF-basiertes Cloud-Native Networking¶
Cilium ist die Networking-Komponente der ayedo Software Delivery Platform und nutzt eBPF (extended Berkeley Packet Filter) für hochperformante Netzwerkkommunikation direkt im Linux Kernel.
Kernfunktionen:
- Container Networking Interface (CNI): Pod-zu-Pod-Kommunikation ohne Overhead
- Network Policies: Mikrosegmentierung auf L3/L4 und L7
- Load Balancing: eBPF-LB (
kube_proxy_replacement), Algorithmus Maglev - L2 Announcements / BGP Control Plane: VIPs im Segment oder per BGP an ToR — Network Access
- Service Mesh: Transparente Service-to-Service-Kommunikation
- Observability: Hubble, Flow-Logs, Netzwerk-Metriken
Vorteile von eBPF:
- Bis zu 10x höhere Performance als traditionelle iptables
- Geringere CPU-Auslastung
- Bessere Skalierbarkeit für große Cluster
- Erweiterte Security-Features auf Kernel-Level
Weitere Informationen:
Envoy Gateway - Kubernetes Gateway API Controller¶
Envoy Gateway ist die ayedo-Implementierung des Kubernetes Gateway API-Controllers. Der Polycrate-Block cargo.ayedo.cloud/ayedo/k8s/envoy deployed die Control Plane, Gateway-API-CRDs sowie Shared- und Dedicated-Proxy-Pools und ersetzt mittelfristig den klassischen NGINX Ingress Controller.
Kernfunktionen:
- Gateway API:
Gateway,HTTPRoute,TLSRoute,Backendstatt klassischerIngress-Ressourcen - Zwei GatewayClasses:
eg-shared(eine VIP, SNI-/Hostname-Multiplex) undeg-dedicated(eigene VIP/Fleet pro Gateway) - LoadBalancer-Edge: Shared VIP via Cilium LB-IPAM / MetalLB / Cloud-LB; optional Bootstrap-Gateway für sofortige Data-Plane
- TLS: Passthrough (z. B. Managed Controlplane kube-apiserver) oder Terminate mit cert-manager
- WAF (optional): Coraza über
ext_proc(regionaler Service, Policies pro Route/Gateway) - Observability: Envoy-Metriken via
VMPodScrape(VictoriaMetrics), Access Logs → VictoriaLogs
Parallelbetrieb mit NGINX:
Envoy läuft als zusätzlicher Edge neben dem bestehenden NGINX Ingress Controller — eigene VIP und GatewayClass, kein gemeinsames LoadBalancer-IP. Verbraucher wählen bewusst (z. B. Managed Controlplane ingress.type: gateway). Mittelfristig ist Envoy der Zielpfad für neues HTTP(S)- und TLS-Routing.
| Edge | API | Polycrate Block | Typische Klasse |
|---|---|---|---|
| Envoy Gateway | Gateway API | ayedo/k8s/envoy | GatewayClass eg-shared / eg-dedicated |
| NGINX Ingress | Ingress | ayedo/k8s/nginx | IngressClass nginx |
Beispiel (Workspace): Block-Version jeweils vom Hub übernehmen.
blocks:
- name: envoy
from: cargo.ayedo.cloud/ayedo/k8s/envoy:<version>
config:
namespace: envoy-gateway-system
service:
type: LoadBalancer
external_traffic_policy: Local
loadbalancer_ip: "203.0.113.20"
default_gateway:
enabled: true
name: eg-shared
Weitere Informationen:
- Envoy Gateway Polycrate Block
- Envoy Gateway Dokumentation
- Kubernetes Gateway API
- Ingress & Edge How-to
NGINX Ingress Controller¶
NGINX Ingress Controller (cargo.ayedo.cloud/ayedo/k8s/nginx) ist der bisherige Standard für HTTP(S)-Routing und TLS-Termination über klassische Ingress-Ressourcen. Er bleibt für bestehende Workloads verfügbar, während neue Gateway-API-Workloads auf Envoy Gateway migrieren.
Kernfunktionen:
- HTTP/HTTPS-Routing und TLS-Termination
- Optional SSL-Passthrough (z. B. für kube-apiserver)
- Optional ModSecurity / OWASP CRS
- Metriken via VictoriaMetrics (
VMPodScrape)
Weitere Informationen:
Security¶
Certificate Management¶
Cert-Manager - Automatisierte TLS-Zertifikatsverwaltung¶
Cert-Manager automatisiert die Beschaffung, Erneuerung und Verwaltung von TLS-Zertifikaten in Kubernetes.
Kernfunktionen:
- Let's Encrypt Integration: Kostenlose, automatische TLS-Zertifikate
- Private PKI Support: Integration mit internen Certificate Authorities
- OpenBao / PKI: Integration mit OpenBao (oder interner CA) als Zertifikatsquelle
- Automatische Erneuerung: Zertifikate werden vor Ablauf automatisch erneuert
- DNS-01 und HTTP-01 Challenges: Flexible Validierungsmethoden
Use Cases:
- HTTPS für Ingress-Ressourcen
- mTLS für Service-to-Service-Kommunikation
- Interne Zertifikate für Datenbanken und Middleware
Weitere Informationen:
Policy Enforcement¶
Kyverno - Policy as Code¶
Kyverno ermöglicht die Definition und Durchsetzung von Sicherheitsrichtlinien als Code mit nativer Kubernetes-Syntax.
Kernfunktionen:
- Admission Control: Validierung, Mutation und Generierung von Ressourcen
- ClusterPolicies & Policies: Cluster-weite oder Namespace-spezifische Richtlinien
- Audit-Modus: Identifizierung von Policy-Verletzungen
- YAML-basierte Policies: Einfache Policy-Definition ohne spezielle Sprache
- Pre-defined Policies: Umfangreiche Policy-Bibliothek
Typische Policies:
- Verbot privilegierter Container
- Erzwingung von Resource Limits
- Label- und Annotation-Anforderungen
- Image Registry Whitelisting
- Network Policy Anforderungen
- Automatische Label-Generierung
Weitere Informationen:
Runtime Security¶
Falco - Runtime Threat Detection¶
Falco überwacht Systemaufrufe und Kubernetes-Audit-Events zur Laufzeit (eBPF) und erkennt anomales Verhalten — Teil des SDP-Security-Stacks.
Kernfunktionen:
- Runtime-Detection via
modern_ebpf - Regeln für verdächtige Prozesse, Privilege Escalation, unerwartete Netzwerkverbindungen
- Falcosidekick für Alert-Routing (optional)
- Ergänzt Policy-as-Code (Kyverno) und Network Policies (Cilium)
Weitere Informationen:
Container Registry¶
Harbor - Enterprise Container Registry¶
Harbor ist eine Open-Source Container Registry mit erweiterten Enterprise-Features.
Kernfunktionen:
- Vulnerability Scanning: Automatisches Scannen von Container Images
- Image Signing: Content Trust mit Notary
- RBAC: Feingranulare Zugriffskontrollen
- Replikation: Multi-Site-Registry-Replikation
- Webhooks: Integration in CI/CD-Pipelines
- Proxy Cache: Caching von externen Registries
Integration:
- Automatische Integration mit Kubernetes ImagePullSecrets
- Webhook-basierte Benachrichtigungen bei neuen Vulnerabilities
- Integration mit CI/CD-Systemen (GitLab, Jenkins)
Preis: Ab 199,95 € pro Monat als Managed App
Weitere Informationen:
Monitoring & Observability¶
VictoriaMetrics - Metriken und Alerting¶
VictoriaMetrics ist eine schnelle, kostengünstige und skalierbare Monitoring-Lösung und Zeitreihendatenbank, vollständig Prometheus-kompatibel.
Kernfunktionen:
- Prometheus-Kompatibilität: Drop-in Replacement für Prometheus
- Time-Series Database: Effiziente, komprimierte Speicherung von Metriken
- MetricsQL: Erweiterte Query-Sprache (PromQL-kompatibel + Erweiterungen)
- Alerting: Flexible Alert-Regeln via vmalert
- Horizontal Scaling: Cluster-Modus für große Deployments
- Long-term Storage: Optimiert für langfristige Metrik-Speicherung
Vorteile gegenüber Prometheus:
- Bis zu 10x geringerer Speicherverbrauch
- Bessere Performance bei hoher Kardinalität
- Einfachere Skalierung
- Eingebautes Backup und Recovery
Überwachte Komponenten:
- Kubernetes Control Plane
- Nodes und Kubelet
- Container und Pods
- Platform Services (Cilium, Cert-Manager, etc.)
- Anwendungs-Metriken via ServiceMonitor
Weitere Informationen:
Grafana - Visualisierung und Dashboards¶
Grafana bietet leistungsstarke Visualisierung und Dashboards für alle Metriken.
Features:
- Vorkonfigurierte Dashboards: Cluster-Overview, Node-Details, Pod-Metriken
- Alerting: Visuelle Alert-Verwaltung
- Multi-Source: Integration mit VictoriaMetrics, VictoriaLogs, InfluxDB
- Templating: Dynamische Dashboards mit Variablen
- Teams & Permissions: Rollenbasierte Zugriffskontrolle
Weitere Informationen:
VictoriaLogs - Zentralisiertes Logging¶
VictoriaLogs ist eine benutzerfreundliche Open-Source-Datenbank für Logs, optimiert für Performance und Skalierbarkeit.
Kernfunktionen:
- Log Aggregation: Sammlung aller Container-Logs
- LogsQL: Einfache und mächtige Query-Sprache
- High Performance: Schnelles Durchsuchen von Millionen Log-Einträgen
- Kompression: Effiziente Speicherung mit hoher Kompression
- Log Retention: Konfigurierbare Aufbewahrungsfristen
- Grafana Integration: Nahtlose Integration mit Grafana
Vorteile:
- Skalierbar: Horizontal skalierbar für große Log-Volumina
- Kostengünstig: Geringerer Speicherbedarf als alternative Log-Systeme
- Einfach: Weniger komplex als Elasticsearch-Cluster
- Schnell: Optimierte Indizierung und Suche
Log-Quellen und Ingest:
| Quelle | Pfad |
|---|---|
Container-Logs (stdout/stderr) | Vector im VL-Block (kubernetes_logs → VLAgent) |
| Andere Cluster ohne lokalen Speicher | derselbe Block mit mode: agent und vlagent.remotewrite |
| Syslog (Appliances, rsyslog) | vlsingle.syslog / vlinsert.syslog, UDP 514, optional LoadBalancer |
| journald / auditd auf Linux-Hosts | Foundation-Block ayedo/linux/hardening (Vector) |
Howtos: Logs ingestieren.
Modi des Blocks (config.mode): single (Default, lokaler Sink), cluster (VLInsert/VLSelect/VLStorage), agent (nur Collector + Remote-Write).
Weitere Informationen:
Storage¶
CSI — Block- und File-Storage¶
| Lösung | Rolle | Polycrate Block |
|---|---|---|
| Longhorn | Hyperconverged Block-CSI (Snapshots, Backups, DR) | ayedo/k8s/longhorn |
| Ceph (Rook) | Verteiltes Block (RBD) und File (CephFS) via CSI | ayedo/k8s/rook |
Longhorn¶
Distributed Block Storage für Kubernetes — typisch für Workload-Cluster ohne dediziertes Ceph.
- Replizierte Volumes, Snapshots, Recurring Jobs
- UI und StorageClasses für Standard-PVCs
Weitere Informationen: Longhorn · Hub · Platform Storage How-to
Ceph (Rook) — CSI¶
Rook orchestriert Ceph für produktionsreifes CSI:
- RBD: Block-Volumes (RWO)
- CephFS: Shared File (RWX)
- Operator, Cluster und CSI-Driver über denselben Block (ayedo/k8s/rook)
Weitere Informationen: Ceph · Hub
Kein NFS/SMB als Node- oder CSI-Backend
Für Bare Metal und CSI gelten lokal angebundene Disks; NFS/SMB als Backend ist nicht empfohlen. Ceph ist Longhorn vorzuziehen, wenn ein verteiltes Cluster-Storage nötig ist — siehe Betriebsmodelle.
Object Storage (S3)¶
| Lösung | Rolle | Polycrate Block |
|---|---|---|
| Ceph RGW | S3-kompatibles Object Storage im Rook/Ceph-Cluster (object_store) | ayedo/k8s/rook |
| RustFS | S3-kompatibles Object Storage für Kubernetes-Workloads | ayedo/k8s/rustfs |
- Ceph Object Gateway (RGW): Buckets, OBCs, optional SSE-S3 mit OpenBao Transit — Ziel für Velero, CNPG-Barman, große Datenmengen
- RustFS: leichtgewichtiges S3 (standalone/distributed)
Weitere Informationen: RustFS Hub · RustFS Docs
Backup & Disaster Recovery¶
Velero¶
Velero sichert Kubernetes-Ressourcen und Persistent Volumes auf S3-kompatibles Object Storage (Ceph RGW, RustFS, Cloud-S3).
Features:
- Geplante Backups (Schedule), Selective Restore, Cluster-Migration
- Volume-Backup via Kopia/FSB (Node-Agent)
- Integration mit CNPG und Operator-Backup-Discovery
Weitere Informationen:
Datenbanken¶
CloudNativePG — PostgreSQL¶
CloudNativePG (CNPG) ist der SDP-Standard für PostgreSQL auf Kubernetes: Operator plus optionale Cluster-Instanzen, HA, Backups (Barman/S3) und Pooler.
Kernfunktionen:
- Operator- und Cluster-Deploy im selben Block
- Rolling Updates, Anti-Affinity, PDB-taugliche Topologien (mind. 4 Worker empfohlen)
- Continuous Backup / PITR gegen S3 (Velero-Annotationen für Volume-Ausschlüsse)
- Monitoring via VictoriaMetrics (
VMPodScrape)
Weitere Informationen:
Identity & Access Management¶
Authentifizierung¶
Keycloak ist der Standard Identity Provider:
- OIDC/SAML Support: Integration mit Enterprise SSO
- LDAP/Active Directory: Anbindung an bestehende Verzeichnisse
- Multi-Factor Authentication: 2FA via TOTP, WebAuthn
- User Management: Self-Service Portal und Admin Console
- Social Login: Integration mit Google, GitHub, etc.
- User Federation: LDAP, Active Directory, custom providers
Weitere Informationen:
Autorisierung¶
RBAC (Role-Based Access Control):
- Kubernetes Native: Integration mit Kubernetes RBAC
- Namespace-basiert: Mandantentrennung via Namespaces
- Fine-grained: Granulare Berechtigungen auf Ressourcen-Ebene
CI/CD & Source Control¶
GitLab - DevOps-Plattform¶
GitLab ist die zentrale DevOps-Plattform für Source Control, CI/CD und Collaboration:
Kernfunktionen:
- Git Repository Management: Vollständige Versionskontrolle mit Branching, Merging, Tags
- CI/CD Pipelines: Automatisierte Build-, Test- und Deployment-Workflows
- Container Registry: Integrierte Docker Registry für Container Images
- Package Registry: Hosting für NPM, Maven, PyPI, Helm Charts
- Merge Requests: Code Review mit Approval Workflows
- Issue Tracking: Projektmanagement und Bug Tracking
- Wiki & Documentation: Integrierte Dokumentations-Plattform
CI/CD Integration:
- Kubernetes Executor: Native Kubernetes-Integration für Pipeline-Jobs
- Auto DevOps: Vorkonfigurierte CI/CD-Templates
- Kaniko/Buildah Support: Rootless Container Image Builds
- Harbor Integration: Automatischer Push zu Harbor Registry
- ArgoCD Integration: GitOps-basierte Deployments
Security Features:
- SAST/DAST: Static und Dynamic Application Security Testing
- Dependency Scanning: Automatische Vulnerability Scans von Dependencies
- Container Scanning: Image Security Scanning via Trivy
- Secret Detection: Automatische Erkennung von Secrets in Code
OIDC-Integration:
- Single Sign-On via Keycloak
- LDAP/Active Directory-Anbindung
- Multi-Factor Authentication
Weitere Informationen:
GitOps & Deployment¶
Argo CD — GitOps (Standard)¶
Argo CD ist der GitOps-Operator der SDP. Flux wird nicht mehr eingesetzt.
Kernfunktionen:
- Git als Source of Truth, Continuous Sync
- Web UI und CLI für Application-Status
- Sync Waves, ApplicationSets (Multi-Cluster / Multi-Tenant)
- OIDC/SSO (Keycloak / ayedo ID), GitLab als Repository-Quelle
- Progressive Delivery über Argo-Ökosystem (wo konfiguriert)
Weitere Informationen:
Secrets Management¶
OpenBao — Secrets & Encryption¶
OpenBao (Fork der Vault-API) ist das Secrets-Backend der SDP — Nachfolger von HashiCorp Vault in der ayedo-Plattform.
Kernfunktionen:
- Static und Dynamic Secrets, Versionierung, Audit Logging
- Encryption as a Service (Transit), inkl. SSE-S3 mit Ceph RGW
- PKI für interne Zertifikate (mit cert-manager)
- Database Secrets Engine, Kubernetes Auth, OIDC für Entwickler
- Policy-as-Code (ACL), Auto-Unseal (KMS / Transit)
Polycrate Blocks:
| Block | Rolle |
|---|---|
| ayedo/k8s/openbao | OpenBao Server / Cluster |
| ayedo/k8s/openbao-setup | Bootstrap, Auth-Methoden, Policies |
Integration:
- CloudNativePG, Harbor, GitLab, cert-manager
- Developer-Pfad: OpenBao → External Secrets Operator → Kubernetes
Secret→ App
External Secrets Operator (ESO):
- Continuous Sync aus OpenBao (KV/Paths) in den Cluster
- RefreshInterval, Templating, mehrere Sources pro Secret
Weitere Informationen:
Automatisierung¶
Polycrate Integration¶
Alle Platform-Komponenten werden über Polycrate verwaltet:
- Deklarative Konfiguration (Infrastructure as Code)
- Version Control, Rollback, Multi-Cluster, Dependency Management
Siehe auch: Polycrate Dokumentation
Polycrate Operator¶
Der Polycrate Operator läuft im Cluster und synchronisiert Ressourcen mit der Polycrate API: Ingresses, Nodes, Volumes, TLS-Zertifikate, deployte Apps sowie Backups/Schedules von Velero und CloudNativePG.
Kernfunktionen:
- Continuous Discovery und Status-Reporting an die API
- Backup-/Schedule-Mapping (Velero + CNPG)
- Grundlage für Operations-Dashboards und Inventory in der Polycrate API
Weitere Informationen:
Updates & Wartung¶
Kubernetes Updates¶
- Regelmäßige Updates: Neue Kubernetes-Versionen innerhalb von 4 Wochen
- Minor Version Support: Unterstützung der letzten 3 Minor Versions
- Rolling Updates: Zero-Downtime Updates
- Testing: Umfangreiche Tests vor Produktions-Rollout
Component Updates¶
- Security Patches: Automatische Security Updates
- Feature Updates: Regelmäßige Updates der Platform-Komponenten
- Breaking Changes: Rechtzeitige Kommunikation und Migration Support