Junior
Може ли у једном поду да се налази више контејнера?
sobes.tech АИ
Одговор од АИ
Da, može. To je uobičajena praksa u Kubernetesu.
Više kontejnera u jednom podu obično deli resurse (prostor za skladištenje, mrežni sloj) i često se koriste za pomoćne zadatke pored glavnog kontejnera aplikacije (šablon Sidecar).
Primeri upotrebe:
- Sidecar kontejneri: Monitoring, beleženje, proxy mesh usluga (npr. Envoy).
- Ambasador kontejneri: Proxy za pristup spoljnim uslugama.
- Adapter kontejneri: Normalizacija izlaza pomoćnih procesa.
Kontejneri u podu uvek se planiraju na istom čvoru (Node) i koriste isti namespace za IPC (međuprocesnu komunikaciju), što im omogućava međusobnu interakciju.
Primer manifesta poda sa dva kontejnera (glavna aplikacija nginx i sidecar za beleženje):
// apiVersion - verzija API-ja Kubernetes
apiVersion: v1
// kind - tip objekta (u ovom slučaju Pod)
kind: Pod
// metadata - metapodaci poda (ime, oznake itd.)
metadata:
name: multi-container-pod
spec:
// containers - lista kontejnera unutar poda
containers:
// Prvi kontejner - glavna aplikacija (nginx)
- name: main-app
image: nginx:latest
ports:
// otvaranje porta 80
- containerPort: 80
// Drugi kontejner - sidecar za beleženje (fiktivni primer)
- name: log-sidecar
image: busybox:latest
args:
// beskonačna petlja za simulaciju beleženja
- /bin/sh
- -c
- while true; do echo "Logging from sidecar..."; sleep 5; done