1

I am learning Kubernetes and it seems that they play crucial role in container implementations.They allow us isolation of global system resources between independent processes.Still I do not understand the whole picture.My pods

kubectl get pods -o wide
NAME          READY     STATUS    RESTARTS   AGE       IP          NODE
kubia-bzp4j   1/1       Running   0          17h       10.44.1.5   gke-kubia-default-pool-98519add-5kfr
kubia-hzd8b   1/1       Running   0          1h        10.44.0.7   gke-kubia-default-pool-98519add-hsrc
kubia-kgbtb   1/1       Running   0          1h        10.44.2.5   gke-kubia-default-pool-98519add-25c1

Kubernetes in Action says that

all containers of a pod run under the same IPC namespace
and can communicate through IPC

Does this imply that containers outside same pod can not communicat thgough IPC? How they communicate? Why do we need IPC?

1 Answer 1

3

UTS namespaces contain just two identifiers: the system hostname and the (rarely used) NIS domain name.

IPC namespaces contain a specific kind of IPC objects known as "POSIX IPC" and "SysV IPC" – shared memory areas, message queues, and semaphores. They don't include TCP/IP nor Unix domain sockets nor other communication methods.

(TCP/IP is isolated by using net namespaces, although usually containers are deliberately given a virtual interface through which to reach the main network. Unix domain sockets are isolated by using mount namespaces, as they follow the same rules as file paths.)

See the namespaces(7) manual page for a longer explanation.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .