IPC(Inter-Process-Communication) 혹은 로컬 파일을 통해 통신하는 여러 프로세스로 구성되어
같은 노드에서 실행해야하는 애플리케이션이 있다. k8s는 항상 프로세스를 격리된 머신과 비슷한 컨테이너에서
실행시키기 때문에 여러 프로세스를 단일 컨테이너에서 실행하는게 타당하다 생각할 수 있지만 전혀 그렇지 않다.
왜냐하면 **컨테이너는 단일 프로세스(자기 자신의 자식 프로세스 제외)를 실행하는걸 목적으로 설계
**됐기 때문이다.
또한 모든 프로세스는 표준 출력으로 로그를 찍기 때문에 단일 컨테이너에서
다중 프로세스의 로그가 찍히면 어떤 프로세스에서 어떤 로그를 찍었는지 구분하기 힘들다.
위와 같은 이유로 도커와 k8s는 각 프로세스를 자체의 개별 컨테이너로 실행시킨다.
파드는 k8s의 최소 배포 단위로 1개 이상의 컨테이너를 묶어놓은 것이라고 할 수 있다.
또한 파드는 노드에 걸쳐서 실행되지 않는다.
위에서 보면 컨테이너는 단일 프로세스 실행을 목적으로 설게됐다고 했었다.
하지만 이런 각각의 컨테이너를 묶어서 관리하기 위한 단위가 필요한데 그것이 파드이다.
각 프로세스에게 동일한 환경, 격리성을 제공한다. 하지만 파드 안에서의 통신을 위해서 완벽히 격리하진 않는다.
같은 파드안의 컨테이너끼리는 모두 ip가 같기 때문에 포트로 구분한다. 그래서 포트가 겹치면 안 된다.