반응형
1. 레플리카셋 개념
- 파드 실행의 연속성을 보장하기 위해 동일한 파드를 여러개로 묶어놓은 집합으로, 레플리카셋에 포함된 파드는 다운되어도 자동으로 재실행
- 파드에 트래픽이 증가해 일정 수준 이상이 될 경우 자동으로 새로운 파드가 복제되어 트래픽을 로드밸런싱
- 레플리카셋을 삭제할 경우 레플리카셋에 포함된 파드 모두 삭제
- 레플리카셋은 파드가 실행되는 개수에 대해서만 보장하고, 업데이트 기능을 제공하지 않기 때문에 디플로이먼트 활용을 권장
2. YAML을 활용한 레플리카셋 생성
- nginx 컨테이너로 구성된 레플리카셋을 생성하기 위한 YAML 내용
apiVersion: apps/v1
kind: ReplicaSet
metadata:
name: test-ReplicaSet
labels:
app: my-ReplicaSet
tier: frontend
spec:
replicas: 3
selector:
matchLabels:
tier: frontend
template:
metadata:
labels:
tier: frontend
spec:
containers:
- name: nginx
image: nginx
- 4번 : 레플리카셋 이름
- 5~7번 : 레플리카셋의 레이블(AWS의 태그와 동일한 개념으로 관리 규칙에 따라 엔지니어 임의로 작성 가능)
- 9번: 실행을 보장할 파드 개수
- 10~12번: 어떤 레이블을 레플리카셋에 연결 시킬것인지 설정
- 15~16번: 레플리카셋에 연결될 파드의 레이블. 12번의 값과 일치해야함
3. 명령어를 활용한 레플리카셋 핸들링
- yaml 파일을 활용한 레플리카셋 생성
kubectl apply -f [yaml_파일]
- 레플리카셋 목록 확인
kubectl get replicaset
kubectl get replicaset -n [네임스페이스]
kubectl get replicaset -A
kubectl get replicaset -o wide
kubectl get replicaset --watch
- 레플리카셋 세부 정보 확인
kubectl describe replicaset [레플리카셋_이름]
- 레플리카셋 설정 수정
kubectl edit replicaset [레플리카셋_이름]
- 레플리카(실행을 유지할 파드 개수) 설정
kubectl scale --replicas=[개수] replicaset [레플리카셋_이름]
kubectl scale --replicas=[개수] -f [yaml_파일]
- yaml 파일 변경
kubectl replace --force -f [yaml_파일]
- 레플리카셋 삭제
kubectl delete replicaset [레플리카셋_이름]
반응형
'Kubernetes' 카테고리의 다른 글
Kubernetes 서비스(Service) 개념과 설정 (0) | 2023.03.15 |
---|---|
Kubernetes 네임스페이스(Namespace) 개념과 명령어 (0) | 2023.03.15 |
Kubernetes 디플로이먼트(Deployment) 개념과 명령어 (0) | 2023.03.15 |
Kubernetes 파드(Pod) 개념과 명령어 (0) | 2023.03.15 |
Kubernetes 클러스터 및 컴포넌트 개념 (0) | 2023.03.15 |