Kubernetes Distribution¶
Die ayedo Kubernetes Distribution stellt Kubernetes-Cluster bereit — als Polycrate-Blöcke, unabhängig davon, ob jemand die Cluster als Managed Service betreibt.
Zwei Installationspfade:
| Variante | Block | Einsatz |
|---|---|---|
| Managed Controlplane (Kubernetes-in-Kubernetes) | ayedo/k8s/k3s-server | Controlplane als Workload auf einem Host-Cluster. Worker joinen von außen. Die Polycrate API orchestriert das über K8sControlplane. |
| Foundation / On-Prem | ayedo/linux/k8s-1.27 | k3s direkt auf Linux-Hosts. Foundation-Cluster für Loadbalancer, Ceph, Controlplane-Hosts — in der API als Region. Host-Härtung und Log-Collector: ayedo/linux/hardening. |
Platform-Services (Cilium, Ingress/Gateway, Observability, Apps) gehören zur Software Delivery Platform, nicht zur Distro.
Distribution vs. SDP
Distro = Cluster (API-Server, etcd/SQLite, kubelet, Runtime). SDP = alles, was auf dem Cluster läuft. Betriebsmodelle: ayedo Cloud, Dedicated, BYOC — die Blöcke sind dieselben.
Architektur¶
graph TB
subgraph API[Polycrate API]
CP[K8sControlplane]
Region[Region]
end
subgraph Host[Host- / Foundation-Cluster]
K8sHost["k8s-1.27 auf Linux-Hosts"]
MCP["k3s-server Pod"]
end
subgraph Guest[Workload-Cluster]
Workers[k3s Agents / Worker]
end
Region --> K8sHost
CP -->|Block Rollout| MCP
MCP -->|Join-Token / API| Workers
K8sHost --> MCP - Foundation-Cluster (
k8s-1.27): Bare Metal oder VMs. Darauf laufen Ceph, Edge/LB, und die Host-Umgebung für Controlplanes. Typischer Begleitblock:ayedo/linux/hardening(SSH, auditd, Vector → VictoriaLogs) — Logs ingestieren. - Managed Controlplane (
k3s-server): ein Pod im Host-Cluster (embedded etcd, PVC). API-Exposure über Envoy Gateway, NGINX (TLS-Passthrough) oder Cilium/MetalLB. - Worker joinen den Guest-Cluster mit dem Bootstrap-Token (API-Tab Join oder Block-Config).
Welche Variante?¶
| Anforderung | Block |
|---|---|
| Tenant-Controlplane auf bestehendem Host-Cluster | k3s-server |
| Orchestrierung über UI/API (Create Controlplane, DNS, Join) | k3s-server + K8sControlplane |
| On-Prem / Bare Metal / Air-Gap Foundation | k8s-1.27 |
| Cluster für Ceph, HAProxy/LB, Controlplane-Hosts (Region) | k8s-1.27 |
Beide Varianten: k3s, containerd, CNCF-zertifiziert. Versionen stehen im Block (app_version / config.k3s.version).
Day-2 (Cluster)¶
| Thema | k3s-server | k8s-1.27 |
|---|---|---|
| Status | polycrate run k3s-server status | kubectl / polycrate run k8s show-ips |
| Upgrade | Image-Tag / install (Recreate) | k3s.version + install / restart-k3s |
| Nodes | Worker-Join von außen | join-cluster, Inventory |
| Secrets at rest | secrets-encryption-* | Host-/Disk-Verschlüsselung |
| Audit | Audit-Sidecar → VictoriaLogs | kube-apiserver auf dem Host |
| Snapshots | etcd auf PVC, optional S3 | Host-Backup / Velero auf dem Cluster |
SDP-Day-2 (Apps, Backup, Ingress): Platform Operations · Delivery Operations.