[Kubernetes] Kubernetes Pod

on_cloud·2023년 3월 14일
0

Kubernetes

목록 보기
2/5
post-thumbnail

Kubernetes Pod란?


컨테이너를 묶어서 관리하는 Kubernetes의 최소 단위

Pod Networking


  • Kubernetes는 Docker와 달리 Pod 단위로 컨테이너들을 관리합니다.
  • Pod는 여러개의 컨테이너로 구성될 수 있으며, 모두 동일한 IP를 부여받을 수 있습니다.
  • 동일한 IP를 부여 받게 하는 것이 pause container 덕택입니다.
  • 하나의 Pod를 생성하게 되면 그 Pod의 container들은 pause container의 Network Namespace의 Interface IP 하나를 갖게됩니다.

Pod 특징


  • Pod 내의 컨테이너는 서로의 IP와 Port를 공유합니다.
    (두개 이상의 컨테이너가 하나의 Pod를 통해 배포되었을 때 localhost로 통신이 가능합니다.)
  • Pod내의 배포된 컨테이너 간에는 디스크 볼륨을 공유할 수 있습니다.
    (같은 Pod안에 있는 컨테이너끼리는 파일을 읽어올 수 있습니다.)
  • Pod안에 여러개의 컨테이너가 들어갈 수 있습니다.

Pod 종류


Single Container Pod
하나의 Container에 하나의 Pod를 의미합니다.

Multi Containers Pod
두개 이상의 서로 다른 컨테이너를 포함하고 있는 Pod를 의미합니다.


Multi Container Pods Pattern


  1. Sidecar Pattern
  • Main Container를 보조하기 위해 사용하는 패턴입니다.
  • 하나의 컨테이너는 하나의 Pod만 하는것이 효율적이기 때문에 Main Container의 일을 Serve Container가 도와서 실행합니다.
    (두개 이상의 컨테이너를 사용하면 컨테이너의 종속성들을 고려해야 하기때문에 난이도는 올라가고 효율은 떨어집니다.)
  1. Ambassador Pattern
  • 외부와 통신을 할 때 임의의 proxy container를 추가하는 패턴입니다.
  • 해당 컨테이너를 생성하여 컨테이너들간에 맡은일을 효율적으로 처리할 수 있습니다.
  1. Adapter Pattern
  • 입력된 데이터를 Adapter container가 대신 처리해주는 패턴입니다.
  • 해당 Adapter container를 생성해줘 Main container의 일처리를 보다 효율적으로 처리할 수 있습니다.
profile
클라우드 엔지니어가 목표인 학생

0개의 댓글