본문 바로가기
따배쿠

[따배쿠] 6-1 Controller - ReplicationController란?

by Engineer-Lee 2022. 11. 5.
반응형

Controller란

  • pod의 개수를 보장한다.
    특정 어플리케이션을 실행하는 pod를 몇개 운용할지 결정하고 보장한다.

 

레플리케이션 컨트롤러

가장 베이직한 구조로 컨트롤러 본연의 역할을 한다.
요구하는 pod의 개수를 보장하며 pod 집합의 실행을 항상 안정적으로 유지한다.

  • 요구하는 pod의 개수가 부족하면 template를 이용해 pod를 추가
  • 요구하는 pod 수 보다 많으면 최근에 생성된 pod를 삭제

기본 구성

  • selector: 키 : 밸류의 레이블을 가지고 있는 pod
  • replicas: 몇개를 운용할 것인지 명시
  • template: 셀렉터에 있는 레이블이 템플릿에 꼭 있어야 함

 

 

kubectl scale rc rc-nginx --replicas=3

kubectl edit rc rc-nginx을 통해 

nginx 버전을 바꾸면 아무 변화 없음
왜냐하면 이미 해당 레이블은 3개 운용되고 있기 때문에
버전을 바꾸어도 기존 pod 그대로 유지함

pod를 삭제하고 새로 만들어지는 버전은 바뀐 버전으로 생김

 

watch kubectl get pods -o wide

kubectl get replicationcontrollers
(kubectl get rc)

레플리케이션 컨트롤러의 정보를 보여준다.

 

kubectl describe rc rc-nginx를 통해서도 확인할 수 있다.

 

kubectl get pods로 파드 목록을 확인하고
kubectl delete pod rc-nginx-XXXX 하면 파드가 3개를 유지하기 위해 계속 만들어진다.

 
반응형