kubernetes ReplicationController
쿠버네티스의 가장 기본적인 컨트롤러로 지정한 숫자만큼 파드를 항상 보장해준다.
지정한 파드의수 보다 적거나,많으면 파드의갯수를 조절하여 지정된 갯수만큼 보장.자동&수동으로 스케일링 기능 가능
레플리케이션 컨트롤러를 구성하는 가장중요한 3가지 요소.
●replicas
-> 보장해 줄 파드의 갯수
●selector
-> 복제할 파드의 레이블 셀렉터 key:value 타입
●template
-> 복제할 파드를 만들기위한 파드템플릿
레플리케이션 컨트롤러 구성방법. yaml 예제
apiVersion: v1
kind: ReplicationController
metadata:
name: rc-nginx
spec:
replicas: 3
selector:
app: webui
template:
metadata:
name: nginx-pod
labels:
app: webui
spec:
containers:
- name: nginx-container
image: nginx
-> selector: app: webui app:webui라는 labels를 가진 pod를 replicas: 3 3개를 template: 에 맞춰 3개 생성
※ Pod template는 반드시 selector에 있는 key:value 를 labels로 포함하고 있어야 한다. 라벨은 많아도 상관없다.
●ReplicationController 생성 ,관리 및 확인
#kubectl get replicationcontrollers [ or kubectl get rc] 로 생성된 레플리케이션 컨트롤러를 확인할수있다.
DESIRED= 보장하는 파드의갯수
CURRENT=현재 running중인 파드갯수
READY= 생성된 파드중 준비가완료된 파드갯수
레플리케이션 컨트롤러 scale 설정
#kubectl edit rc [ RC명 ] 에서 replicas: 변경 또는 #kubectl scale rc [RC명] --replicas= 으로도 변경가능하다.
레플리케이션 컨트롤러 삭제 delete
#kubectl delete pod [파드명] 으로만 삭제한다면 레플리케이션 컨트롤러에의해 다시 생성된다
레플리케이션 컨트롤러를 전체 삭제해주어야됨
#kubectl delete rc [RC명]
'IT Study > Kubernetes' 카테고리의 다른 글
kubernetes deploymemt rollingupdate (0) | 2023.01.19 |
---|---|
kubernetes replicaset controller (0) | 2023.01.18 |
kubernetes controller (0) | 2023.01.17 |
kubernetes Multi-Container Pod & 파드 디자인 패턴 (0) | 2023.01.16 |
kubernetes pod 환경변수 설정 (0) | 2023.01.16 |