- Authors

- Name
- Phillip Pham
- @ddppham
Kubernetes AI Conformance: CNCF Standards fuer KI-Workloads auf Kubernetes
TL;DR
- Die CNCF Cloud Native AI White Paper definiert Standards fuer KI-Workloads auf Kubernetes -- von GPU-Management bis Model Serving.
- Kueue und Volcano bieten faire Scheduling-Strategien fuer GPU-intensive Training-Jobs mit Quota-Management.
- KServe standardisiert Model Serving mit Auto-Scaling, Canary Deployments und Multi-Framework-Support.
- AI Governance auf Kubernetes umfasst Model Lineage, Audit-Trails und EU AI Act Compliance.
- GPU-Ressourcen lassen sich mit NVIDIA MPS und Time-Slicing effizienter zwischen Workloads aufteilen.
CNCF Cloud Native AI Landscape
Die Cloud Native Computing Foundation hat KI als strategisches Thema definiert. Das CNCF Cloud Native AI White Paper beschreibt eine Referenzarchitektur fuer KI-Workloads auf Kubernetes.
Die wesentlichen Saeulen:
- Infrastructure: GPU-Cluster, Storage, Networking
- Scheduling: Faire Verteilung von GPU-Ressourcen
- Model Lifecycle: Training, Serving, Monitoring
- Governance: Audit, Compliance, Responsible AI
- Observability: GPU-Metriken, Model-Performance, Kosten
Kubernetes ist dabei die zentrale Plattform -- nicht weil es die einzige Option ist, sondern weil es den Lifecycle von KI-Workloads vollstaendig abdeckt: vom verteilten Training ueber das Serving bis zum Monitoring. Fuer den Einstieg in KI auf Kubernetes: Kubernetes fuer AI und Machine Learning.
GPU Resource Management Standards
GPU Time-Slicing fuer bessere Auslastung
Eine GPU wird selten zu 100% ausgelastet -- besonders bei Inference-Workloads. Time-Slicing teilt eine physische GPU zwischen mehreren Pods.
apiVersion: v1
kind: ConfigMap
metadata:
name: nvidia-device-plugin-config
namespace: kube-system
data:
config.yaml: |
version: v1
sharing:
timeSlicing:
renameByDefault: false
failRequestsGreaterThanOne: false
resources:
- name: nvidia.com/gpu
replicas: 4
Mit replicas: 4 kann eine physische GPU von 4 Pods gleichzeitig genutzt werden. Jeder Pod sieht nvidia.com/gpu: 1 -- bekommt aber ein Viertel der Rechenzeit.
Multi-Instance GPU (MIG)
Fuer NVIDIA A100 und H100 GPUs bietet MIG eine hardwarebasierte Partitionierung:
apiVersion: v1
kind: ConfigMap
metadata:
name: mig-config
namespace: gpu-operator
data:
config.yaml: |
version: v1
mig-configs:
all-balanced:
- devices: all
mig-enabled: true
mig-devices:
"3g.40gb": 2
"1g.10gb": 1
Weitere Details zu GPU-Workloads: Kubernetes GPU-Workloads.
Workload Scheduling: Kueue und Volcano
Kueue: Kubernetes-natives Job Queuing
Kueue ist das CNCF-Projekt fuer faires Scheduling von Batch- und KI-Workloads. Es verwaltet GPU-Quotas ueber Teams hinweg.
# Kueue installieren
kubectl apply --server-side -f https://github.com/kubernetes-sigs/kueue/releases/download/v0.10.0/manifests.yaml
apiVersion: kueue.x-k8s.io/v1beta1
kind: ResourceFlavor
metadata:
name: gpu-a100
spec:
nodeLabels:
cloud.google.com/gke-accelerator: nvidia-tesla-a100
---
apiVersion: kueue.x-k8s.io/v1beta1
kind: ClusterQueue
metadata:
name: ai-training-queue
spec:
namespaceSelector: {}
resourceGroups:
- coveredResources: ["cpu", "memory", "nvidia.com/gpu"]
flavors:
- name: gpu-a100
resources:
- name: "cpu"
nominalQuota: 64
- name: "memory"
nominalQuota: 256Gi
- name: "nvidia.com/gpu"
nominalQuota: 8
preemption:
reclaimWithinCohort: Any
withinClusterQueue: LowerPriority
---
apiVersion: kueue.x-k8s.io/v1beta1
kind: LocalQueue
metadata:
name: ml-team-alpha
namespace: ml-training
spec:
clusterQueue: ai-training-queue
Training Job mit Kueue
apiVersion: batch/v1
kind: Job
metadata:
name: llm-finetuning
namespace: ml-training
labels:
kueue.x-k8s.io/queue-name: ml-team-alpha
spec:
parallelism: 4
completions: 4
template:
spec:
containers:
- name: training
image: registry.internal/llm-trainer:1.5.0
resources:
requests:
cpu: "8"
memory: 64Gi
nvidia.com/gpu: 2
limits:
cpu: "16"
memory: 128Gi
nvidia.com/gpu: 2
env:
- name: WORLD_SIZE
value: "4"
- name: MASTER_ADDR
value: llm-finetuning-0
- name: MASTER_PORT
value: "29500"
restartPolicy: OnFailure
Kueue haelt den Job in der Queue bis genuegend GPU-Ressourcen verfuegbar sind. Bei hoeherer Prioritaet kann Kueue niedrig-priorisierte Jobs unterbrechen.
Model Serving Standards: KServe
KServe (ehemals KFServing) ist der CNCF-Standard fuer Model Serving auf Kubernetes.
apiVersion: serving.kserve.io/v1beta1
kind: InferenceService
metadata:
name: product-classifier
namespace: ml-serving
spec:
predictor:
model:
modelFormat:
name: pytorch
storageUri: "s3://models/product-classifier/v3"
resources:
requests:
cpu: "2"
memory: 4Gi
nvidia.com/gpu: 1
limits:
cpu: "4"
memory: 8Gi
nvidia.com/gpu: 1
minReplicas: 1
maxReplicas: 10
scaleTarget: 5
scaleMetric: concurrency
Canary Deployment fuer Modelle
apiVersion: serving.kserve.io/v1beta1
kind: InferenceService
metadata:
name: product-classifier
namespace: ml-serving
spec:
predictor:
canaryTrafficPercent: 10
model:
modelFormat:
name: pytorch
storageUri: "s3://models/product-classifier/v4"
resources:
requests:
nvidia.com/gpu: 1
limits:
nvidia.com/gpu: 1
minReplicas: 1
maxReplicas: 10
10% des Traffics gehen an v4 des Modells. Bei guter Performance kann der Anteil schrittweise erhoeht werden. Fuer Inference-Optimierung mit NVIDIA Triton: Triton Inference Server auf Kubernetes.
AI Governance und Compliance
EU AI Act Anforderungen auf Kubernetes
Der EU AI Act klassifiziert KI-Systeme nach Risikostufen. Hochrisiko-Systeme (z.B. im Personalwesen, Kreditvergabe) erfordern:
- Transparenz: Dokumentation der Modell-Entscheidungen
- Audit-Trail: Nachvollziehbare Trainings- und Serving-Historie
- Human Oversight: Moeglichkeit menschlicher Eingriffe
- Robustheit: Tests gegen adversariale Eingaben
Governance-Policies mit OPA Gatekeeper
apiVersion: templates.gatekeeper.sh/v1
kind: ConstraintTemplate
metadata:
name: k8saiworkloadlabels
spec:
crd:
spec:
names:
kind: K8sAIWorkloadLabels
targets:
- target: admission.k8s.gatekeeper.sh
rego: |
package k8saiworkloadlabels
violation[{"msg": msg}] {
input.review.object.spec.template.spec.containers[_].resources.limits["nvidia.com/gpu"]
not input.review.object.metadata.labels["ai.company.de/model-version"]
msg := "GPU-Workloads muessen das Label ai.company.de/model-version tragen"
}
violation[{"msg": msg}] {
input.review.object.spec.template.spec.containers[_].resources.limits["nvidia.com/gpu"]
not input.review.object.metadata.labels["ai.company.de/risk-classification"]
msg := "GPU-Workloads muessen das Label ai.company.de/risk-classification tragen"
}
---
apiVersion: constraints.gatekeeper.sh/v1beta1
kind: K8sAIWorkloadLabels
metadata:
name: require-ai-labels
spec:
match:
kinds:
- apiGroups: ["apps"]
kinds: ["Deployment", "StatefulSet"]
- apiGroups: ["batch"]
kinds: ["Job"]
namespaces:
- ml-training
- ml-serving
Jeder GPU-Workload muss eine Modell-Version und eine Risiko-Klassifizierung tragen -- ohne diese Labels wird das Deployment abgelehnt.
Monitoring fuer KI-Workloads
apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
name: gpu-metrics
namespace: monitoring
spec:
selector:
matchLabels:
app: nvidia-dcgm-exporter
endpoints:
- port: metrics
interval: 15s
Wichtige GPU-Metriken:
# GPU-Auslastung pro Pod
DCGM_FI_DEV_GPU_UTIL
# GPU-Speicherverbrauch
DCGM_FI_DEV_FB_USED
# GPU-Temperatur (Throttling vermeiden)
DCGM_FI_DEV_GPU_TEMP
# Inference-Latenz (KServe)
revision_request_latencies_bucket
MLOps Standards auf Kubernetes
Fuer eine vollstaendige MLOps-Plattform: Kubeflow ML-Plattform auf Kubernetes.
Standardisierter ML-Workflow
1. Datenaufbereitung -> Kubernetes Job + PVC
2. Feature Engineering -> Spark/Dask auf Kubernetes
3. Modell-Training -> Kueue-gemanagter Job mit GPU
4. Modell-Validierung -> Kubernetes Job (Metriken nach MLflow)
5. Modell-Registry -> MLflow Model Registry
6. Modell-Deployment -> KServe InferenceService
7. Monitoring -> Prometheus + Grafana
8. Retraining-Trigger -> CronJob oder Drift-Detection
Fuer MLOps im Enterprise-Umfeld: MLOps auf Kubernetes im Enterprise.
Fazit
AI Conformance auf Kubernetes ist mehr als GPU-Scheduling. Die CNCF-Standards decken den gesamten Lifecycle ab: von der fairen Ressourcenverteilung mit Kueue ueber standardisiertes Model Serving mit KServe bis zur Governance mit OPA Gatekeeper.
Fuer Unternehmen in der EU ist der AI Act ein konkreter Treiber: Modell-Lineage, Audit-Trails und Risiko-Klassifizierung muessen Teil der Plattform sein -- nicht nachtraeglich aufgesetzt.
Verwandte Artikel
- Kubernetes fuer AI und Machine Learning
- Kubernetes GPU-Workloads
- Kubeflow ML-Plattform auf Kubernetes
- MLOps auf Kubernetes im Enterprise
- Triton Inference Server auf Kubernetes
Braucht ihr Unterstuetzung bei der Einfuehrung von KI-Workloads auf Kubernetes oder der EU AI Act Compliance? Kontaktiert uns fuer eine individuelle Beratung.
Kubernetes-Beratung gesucht?
Wir helfen deutschen Unternehmen bei der Kubernetes-Implementierung, Migration und Optimierung. DSGVO-konform und praxiserprobt.
📖 Verwandte Artikel
Weitere interessante Beiträge zu ähnlichen Themen
Self-Hosted Kubernetes AI Code Assistant: Ihr eigener Copilot für Datensouveränität
Entdecken Sie, wie Ihr Unternehmen mit einem selbst-gehosteten Kubernetes AI Code Assistant maximale Datensouveränität sicherstellt und Compliance-Anforderungen erfüllt. Profitieren Sie von Kosteneffizienz und maßgeschneiderter Coding AI als leistungsstarke Copilot-Alternative – ideal für deutsche Entwicklungsteams und den Mittelstand.
Kubernetes E-Books kostenlos: Die besten PDFs und Guides
Kostenlose Kubernetes E-Books und PDFs von CNCF, O'Reilly und Cloud-Anbietern. Die besten Ressourcen für DevOps und Platform Engineering im Überblick.
LLM Self-Hosting auf Kubernetes: Llama und Mistral
Open-Source LLMs wie Llama und Mistral auf Kubernetes self-hosten für volle Datensouveränität, DSGVO-Konformität und präzise Kostenkontrolle.
AI Conformance auf Kubernetes: CNCF Standards und EU AI Act
CNCF AI Conformance Standards auf Kubernetes umsetzen: Modell-Validierung, Daten-Lineage und Auditierbarkeit für EU AI Act Compliance.
Milvus Vector Database auf Kubernetes mit GPU skalieren
Milvus Vector Database auf Kubernetes für Enterprise-KI skalieren: Cluster-Deployment, Hochverfügbarkeit und GPU-Beschleunigung praxisnah erklärt.