인프런 커뮤니티 질문&답변

조시은님의 프로필 이미지

작성한 질문수

GCP - Google Associate Cloud Engineer 자격증 준비하기

Kubernetes 소개

deployment 새버전 배포 과정은 노드 하나에서 발생하나요?

작성

·

230

0

안녕하세요.

쿠버네티스 소개 편을 듣다 궁금한게 생겼는데요,

deployment가 레플리카셋을 가지고 각 레플리카셋에 여러 파드가 존재하는 것까지 이해했습니다.

deployment 새버전 배포 시 일련의 과정들이 노드 하나에서 발생하나요?

 

감사합니다.

답변 3

1

코드바나나님의 프로필 이미지
코드바나나
지식공유자

안녕하세요.

죄송합니다. 제가 설명을 잘 못하고 부족하게 한 부분이 있습니다. 다시 설명 드리겠습니다.

 

Node는 서버(물리적서버, 가상서버, 컴퓨팅엔진 이 될 수 있음)이며 이 Node에 컨테이너 그룹인 Pod의 컨테이너가 실행됩니다.

 

Pod의 경우 하나 이상의 컨테이너 그룹 입니다. 여러 개의 컨테이너를 묶어서 Pod 단위로 관리를 하게 됩니다. 이 Pod 단위로 묶는 이유는 각각의 컨테이너가 다른 역할을 수행하는 애플리케이션 기능 단위가 될 수 있으며 이 여러 개의 컨테이너가 모여서 하나의 완전한 애플리케이션의 역할을 하게 됩니다.

이 Pod는 배포 가능한 작은 컴퓨팅 단위 입니다. 따라서 Deployment로 애플리케이션을 배포하면 Pod 단위로 배포가 되며 새 버전을 배포해도 Pod단위로 발생이 됩니다.

물론 Deployment에 1개의 Pod가 아닌 여러 개의 Pod를 포함시킬 수도 있습니다.

 

Node의 경우 서버의 개념이기에 시스템 성능만 허용된다면 서로 다른 애플리케이션인 여러 Pod가 실행될 수 있습니다.

예를 들어 하나의 Node에 2개의 Pod가 있고 이 각각의 Pod를 서로 다른 2개의 Deployment로 관리하게 되면 둘 중 하나의 Deployment에 새버전 배포시 해당되는 1개의 Pod에만 적용이 됩니다.

설명이 도움이 되었길 바랍니다.

감사합니다.

0

조시은님의 프로필 이미지
조시은
질문자

노드에 하나 혹은 여러개의 파드를 관리할 수 있는 디플로이먼트가 있고 새 버전 배포시 해당 파드 혹은 파드들이 새로 생성되는 개념이군요.

설명 감사합니다.

0

코드바나나님의 프로필 이미지
코드바나나
지식공유자

삭제된 글입니다

조시은님의 프로필 이미지
조시은
질문자

전체 노드에서 발생한다는게 구체적으로 어떤 과정인지 여쭤보고 싶습니다.

deployment가 하나의 노드 하위에서 생성되고 관리된다고 이해하면 될까요?

만약 노드가 3개 존재한다면 새 버전 배포시 각자 기존 노드에서 추가로 하나의 deployment를 생성하는 건가요?

 

감사합니다.

코드바나나님의 프로필 이미지
코드바나나
지식공유자

안녕하세요.

죄송합니다. 제가 설명을 잘 못하고 부족하게 한 부분이 있습니다. 다시 설명 드리겠습니다.

 

Node는 서버(물리적서버, 가상서버, 컴퓨팅엔진 이 될 수 있음)이며 이 Node에 컨테이너 그룹인 Pod의 컨테이너가 실행됩니다.

 

Pod의 경우 하나 이상의 컨테이너 그룹 입니다. 여러 개의 컨테이너를 묶어서 Pod 단위로 관리를 하게 됩니다. 이 Pod 단위로 묶는 이유는 각각의 컨테이너가 다른 역할을 수행하는 애플리케이션 기능 단위가 될 수 있으며 이 여러 개의 컨테이너가 모여서 하나의 완전한 애플리케이션의 역할을 하게 됩니다.

이 Pod는 배포 가능한 작은 컴퓨팅 단위 입니다. 따라서 Deployment로 애플리케이션을 배포하면 Pod 단위로 배포가 되며 새 버전을 배포해도 Pod단위로 발생이 됩니다.

물론 Deployment에 1개의 Pod가 아닌 여러 개의 Pod를 포함시킬 수도 있습니다.

 

Node의 경우 서버의 개념이기에 시스템 성능만 허용된다면 서로 다른 애플리케이션인 여러 Pod가 실행될 수 있습니다.

예를 들어 하나의 Node에 2개의 Pod가 있고 이 각각의 Pod를 서로 다른 2개의 Deployment로 관리하게 되면 둘 중 하나의 Deployment에 새버전 배포시 해당되는 1개의 Pod에만 적용이 됩니다.

설명이 도움이 되었길 바랍니다.

감사합니다.