DevOps Pokročilý
Container Orchestration Patterns¶
KubernetesPatternsContainerizationArchitecture 6 min čtení
Návrhové vzory pro kontejnerovou orchestraci. Sidecar, Ambassador, Adapter, Init Container a další.
Sidecar Pattern¶
Sidecar kontejner rozšiřuje hlavní kontejner o funkcionalitu: 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 containers běží před hlavním kontejnerem. Použití: migrace, 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¶
Ambassador kontejner funguje jako proxy pro hlavní kontejner — 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¶
Adapter kontejner transformuje výstup hlavního kontejneru do standardního formátu (např. custom metrics → Prometheus format).
Shrnutí¶
Multi-container patterns (Sidecar, Init, Ambassador, Adapter) řeší cross-cutting concerns bez modifikace aplikačního kódu.
Potřebujete pomoct s implementací?¶
Náš tým má zkušenosti s návrhem a implementací moderních architektur. Rádi vám pomůžeme.