반응형
1. 디플로이먼트 개념
- 기능적인 목적은 레플리카셋과 동일하지만, 추가적으로 파드에 대한 업데이트 기능이 존재(롤아웃, 롤백 등)
- 디플로이먼트는 레플리카셋을 핸들링하는 상위 기능으로, "디플로이먼트(레플리카셋(파드))" 형태로 캡슐화 된 뉘앙스
2. YAML을 활용한 디플로이먼트 생성
- nginx 컨테이너로 구성된 디플로이먼트를 생성하기 위한 YAML 내용
apiVersion: apps/v1
kind: Deployment
metadata:
name: my-deployment
labels:
app: nginx
spec:
replicas: 3
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:1.14.2
- 4번 : 디플로이먼트 이름
- 5~6번 : 디플로이먼트의 레이블(AWS의 태그와 동일한 개념으로 관리 규칙에 따라 엔지니어 임의로 작성 가능)
- 8번: 실행을 보장할 파드 개수
- 9~11번: 어떤 레이블을 디플로이먼트에 연결 시킬것인지 설정
- 14~15번: 디플로이먼트에 연결될 파드의 레이블. 11번의 값과 일치해야함
3. 명령어를 활용한 디플로이먼트 핸들링
- yaml 파일을 활용한 디플로이먼트 생성
kubectl apply -f [yaml_파일]
- 명령어를 활용한 디플로이먼트 생성
kubectl create deployment [디플로이먼트_이름] --image=[이미지_이름]
- 디플로이먼트 목록 확인
kubectl get deployment
kubectl get deployment -n [네임스페이스]
kubectl get deployment -A
kubectl get deployment -o wide
kubectl get deployment --watch
- 디플로이먼트 세부 정보 확인
kubectl describe deployment [디플로이먼트_이름]
- 디플로이먼트 설정 수정
kubectl edit deployment [디플로이먼트_이름]
- 레플리카(실행을 유지할 파드 개수) 설정
kubectl scale --replicas=[개수] deployment [디플로이먼트_이름]
kubectl scale --replicas=[개수] -f [yaml_파일]
- yaml 파일 변경
kubectl replace --force -f [yaml_파일]
- 디플로이먼트 삭제
kubectl delete deployment [디플로이먼트_이름]
반응형
'Kubernetes' 카테고리의 다른 글
Kubernetes 서비스(Service) 개념과 설정 (0) | 2023.03.15 |
---|---|
Kubernetes 네임스페이스(Namespace) 개념과 명령어 (0) | 2023.03.15 |
Kubernetes 레플리카셋(ReplicaSet) 개념과 명령어 (0) | 2023.03.15 |
Kubernetes 파드(Pod) 개념과 명령어 (0) | 2023.03.15 |
Kubernetes 클러스터 및 컴포넌트 개념 (0) | 2023.03.15 |