Myo-Kyeong Tech Blog

[Kubernetes] 쿠버네티스 오브젝트 - 파드(Pod), 레플리카셋(ReplicaSet), 디플로이먼트(Deployment) 본문

DevOps/Kubernetes

[Kubernetes] 쿠버네티스 오브젝트 - 파드(Pod), 레플리카셋(ReplicaSet), 디플로이먼트(Deployment)

myo-kyeong 2024. 2. 11. 01:07
728x90
반응형

파드(Pod)

출처 : https://velog.io/@ckanywhere/Kubernetes-1

 

  • 쿠버네티스가 만들 수 있는 가장 작은 오브젝트이며, 기본이 되는 배포 단위
  • 하나 이상의 컨테이너와 이들 컨테이너가 사용할 수 있는 공유 리소스(네트워크, 스토리지 등)를 묶은 것
  • 각 파드는 고유한 IP 주소를 할당받으며, 파드 내의 모든 컨테이너가 이 IP 주소와 포트 공간을 공유
    • 이 구조는 컨테이너 간의 통신 리소스 공유 효율적으로 할 수 있음
  • 예를 들어, 웹 서버 컨테이너와 웹 서버 로그 분석 컨테이너는 하나의 파드로 관리하는 게 효율적
    • 파드 내 컨테이너들은 같은 네트워크 네임스페이스를 공유하기 때문에 'localhost'를 통해 통신할 수 있어 네트워크 지연을 최소화하며 데이터 전송 속도를 극대화하여 컨테이너 간 통신 효율적
    • 볼륨을 공유할 수 있어 웹 서버가 생성한 로그 파일을 로그 분석 컨테이너가 쉽게 액세스하고 처리할 수 있음.

 

레플리카셋(ReplicaSet)

출처 : https://jh3859025.medium.com/kubernetes-replicaset-6ede8983d660

  • 파드의 수 관리는 레플리카셋 오브젝트가 수행
  • 파드의 수를 지속적으로 모니터링하고 관리하여, 설정된 복제본 수를 유지  
    • 장애 등의 이유로 파드가 종료되었을 때, 모자라는 파드를 보충하거나 정의 파일에 정의된 파드의 수가 감소하면 그만큼 파드의 수를 실제로 감소시킴

 

디플로이먼트(Deployment)

 

https://jenakim47.tistory.com/57

  • 디플로이먼트는 파드와 레플리카셋의 상위 개념
  • 애플리케이션의 배포, 스케일링업데이트관리
    • 디플로이먼트에 필요한 파드 수와 컨테이너 이미지를 정의하며, 이 정보를 기반으로 쿠버네티스가 애플리케이션을 클러스터에 배치
    •  디플로이먼트는 애플리케이션의 컨테이너가 정지되었을 때 자동으로 재실행되는 관리 기능을 제공
    • 새로운 코드 변경 사항이나 기능이 추가될 경우, 새로운 버전의 컨테이너 이미지를 빌드하고 디플로이먼트에 새 이미지를 지정하면 이전 버전의 파드를 점진적으로 새 버전의 파드로 교체
    • 디폴로이먼트가 새로운 버전의 롤아웃 문제가 발생한 경우, 이전 버전으로 롤백하는 기능 제공
      • 변경 사항을 안전하게 배포할 수 있게 하며, 필요한 경우 신속하게 이전 상태 복구 가능

 


REFERENCE

 

 

728x90
반응형