Skip to content

Czym jest Pod?

Pod jest to jednostka uruchomieniowa zawierająca jeden lub więcej kontenerów współdzielących sieć i przestrzeń dyskową. Wszystkie kontenery w ramach jednego Poda uruchamiane są na tym samym węźle i traktowane jako jedna aplikacja logiczna.

Wykorzystywane mechanizmy

Namespace - przestrzenie nazw w Linux

Namespace Znaczenie
net Wspólna przestrzeń sieci - kontenery mają ten sam IP, porty itd.
ipc Wspólna komunikacja międzyprocesowa (semafory, kolejki)
uts Ta sama nazwa hosta (hostname)
pid (czasem) Czasami wspólna lista procesów – np. widzą się nawzajem
mnt Oddzielna przestrzeń montowania (dzielą wolumeny w Podzie)
## cgroups - kontrola zasobów
Dzięki mechanizmowi cgroup istnieje możliwość:
- ograniczania zasobów CPU, RAM, I/O
- monitorowania zużycia zasobów
- sterowania tymi parametrami "online"

Sieć - współdzielona między kontenerami w Podzie

Jeden pod otrzymuje jeden konkretnie adres IP. Za przydzielenie odpowiedzialny jest CNI (ang. Container Network Interface), np. Calico, Flannel albo Cilium.

Kontenery w ramach jednego Poda mogą się komunikować z użyciem adresu localhost.

Wszystkie kontenery dzielą ten sam IP oraz port.

Zasoby dyskowe - wspólna przestrzeń dyskowa

Każdy wolumen montowany jest per Pod - wszystkie kontenery w ramach jednego poda widzą zasób.