DevOps Fortgeschritten
Container-Orchestrierungsmuster¶
KubernetesPatternsContainerizationArchitecture 6 Min. Lesezeit
Entwurfsmuster für Container-Orchestrierung. Sidecar, Ambassador, Adapter, Init Container und mehr.
Sidecar Pattern¶
Ein Sidecar-Container erweitert den Hauptcontainer um Funktionalität: Logging, Monitoring, Proxy.
spec:
containers:
- name: app
image: myapp:latest
ports:
- containerPort: 8080
- name: log-shipper
image: fluent-bit:latest
volumeMounts:
- name: logs
mountPath: /var/log/app
volumes:
- name: logs
emptyDir: {}
Init Container Pattern¶
Init Container laufen vor dem Hauptcontainer. Einsatz: Migrationen, Wait-for-Dependency, Config-Setup.
spec:
initContainers:
- name: wait-for-db
image: busybox
command: ['sh', '-c',
'until nc -z postgres 5432; do sleep 2; done']
- name: db-migrate
image: myapp:latest
command: ['./migrate', 'up']
containers:
- name: app
image: myapp:latest
Ambassador Pattern¶
Ein Ambassador-Container fungiert als Proxy für den Hauptcontainer — TLS Termination, Connection Pooling, Circuit Breaking.
spec:
containers:
- name: app
image: myapp:latest
env:
- name: DB_HOST
value: localhost # connects via ambassador
- name: cloudsql-proxy
image: gcr.io/cloudsql-docker/gce-proxy:latest
command:
- /cloud_sql_proxy
- -instances=project:region:db=tcp:5432
Adapter Pattern¶
Ein Adapter-Container transformiert die Ausgabe des Hauptcontainers in ein Standardformat (z.B. Custom Metrics in Prometheus-Format).
Zusammenfassung¶
Multi-Container Patterns (Sidecar, Init, Ambassador, Adapter) lösen Querschnittsanliegen ohne Änderung des Anwendungscodes.
Brauchen Sie Hilfe bei der Implementierung?¶
Unser Team hat Erfahrung mit dem Entwurf und der Implementierung moderner Architekturen. Wir helfen Ihnen gerne.