🐤 지난 시간에 공부한 내용
- :latest tag는 가능한 사용하지 말것 (Immutable한 부분에 관심을 가져야하며, 최신판이 아닌, 안정적인 환경이 더 중요함)
- 🌝 따라서, 사용할 이미지를 명시할 것
🔵 Scaling an Application (1)
- 도커 컨테이너를 n개 실행하고 있다가, 사용자가 요구사는 사항이 증가하는 경우 컨테이너 개수를 증가시킴. 반대로, 사용자의 요구사항이 줄어드는 경우 처리해야 할 컨테이너 개수를 줄임
- 쿠버네티스도 도커와 동일한 개념이지만, 다른점은
pod
으로 바뀐부분, 만든 서비스가 deployment controller or replicas에 의해 동작될 때, 원하는 만큼의 pod을 늘리기 or 줄이는 작업을 실행함
🔵 Scaling an Application
그림에 대한 설명
은 다음과 같음- 서비스 A에 대해서 pod 1개를 통해 동작을 시킴
- 서비스가 deployment에 의해서 만들어지고, 관리되고 있을 때, 필요에 의해서 1개의 pod을 3개를 추가할 필요가 생김
- 도커와 동일하게 2개의 node에 3개의 pod이 만들어지는 것을 볼 수 있음
- deployment는 1개로 묶어서 전반적으로 관리를 함
- 각각 10.0의 private한 IP Address를 가지고 있음
- 이를 묶어서 서비스 A라는 이름으로 IP Address로 덮은 것을 볼 수 있음
- 🌝 즉, 서비스 A가 1개의 pod으로 작동하다가 3개의 pod이 추가되어 4개의 pod으로 작동되는 것이
Scaling up
이 되며,Scaling down
은 오른쪽 그림처럼 여러개의 pod이 있다가 왼쪽그림처럼 줄어드는 것을 의미함- 🌝 따라서, 도커와 같은 컨셉인데..
: 도커의 경우는 컨테이너의 개수가 늘고, 줄었지만
: 쿠버네티스의 경우는pod 단위
로 움직임
🔵 Rolling Updates
그림에 대한 설명
은 다음과 같음- 서비스 A를 4개의 pod으로 작동되도록 만들었음
- 하고자하는 것은
버전
을 변경하는 것임- 파란색이 old 버전, updated 된 어플리케이션으로(보라색) 변경하고 싶은 것이며, 화살표가 계속 이어짐~
- 🌝 따라서,
Rolling Updates
는 쿠버네티스가 제공하는 훌륭한 서비스임- 파란색으로 실행되고 있는 4개의 pod을 보라색으로 변경하고 싶을때는? (1) 보라색 1개를 만들기 (2) 파란색이 하는 일이 보라색으로 넘어가겠금 기다림 (3) 보라색 1개 파란색 3개의 중간과정이 있음
(4) 1개를 더 변경하고, 나머지 2개를 변경 (5) 최종적으로 보라색이 4개인 (업데이트 된)것을 확인할 수 있음- 외부의 IP Addresss는 1개만 가지고 있으므로 변경되지 않을 것임
- 단, 내부의 pod addresss는 각각 자신의
IP
로 생성되고 파괴되므로 pod addresss는 변경됨