쿠도읽 : 쿠버네티스 도큐먼트 읽기
쿠버네티스 오브젝트 관리?
쿠버네티스 오브젝트는 기법 하나로만 사용해서 관리해야 함
관리 기법 3가지
1. 명령형 커맨드
- 사용자는 활성 오브젝트를 대상으로 직접 동작 시킴
- 1개 이상의 작업자 수 지원
- 학습 난이도 낮음
- 일회성 작업을 동작시키기 위한 추천 방법
kubectl create deployment a --image a
장점 ( 비교 대상은 오브젝트 구성)
- 하나의 동작을 나타내는 단어로 표현
- 클러스터 수정하는데 단 하나의 단계만 필요
단점
- 변경 검토 프로세스와 통합 X
- 변경에 관한 감사 추적 제공 X
- 레코드 소스 제공 X (활성 동작 중인 경우 제외)
- 새 오브젝트 생성을 위한 템플릿 제공 X
2. 명령형 오브젝트 구성
- 개별 파일을 대상으로 함
- 1 개의 작업자 수 지원
- 학습 난이도 보통
- replace 커맨드는 기존 spec을 새로 제공된 spec으로 업데이트
# yaml파일에 따라 오브젝트 생성
kubectl create -f a.yaml
# 두 개의 yaml에 저자왼 오브젝트 삭제
kubectl delete -f a.yaml -f b.yaml
# 오브젝트 업데이트
kubectl replace -f a.yaml
장점 ( 비교 대상은 명령형 커맨드)
- 오브젝트 구성은 소스 컨트롤 시스템에 보관 가능 (Git,...)
- 오브젝트 구성은 프로세스들과 통합 가능
- 오브젝트 구성은 새 오브젝트 생성을 위한 템플릿 제공
단점
- 오브젝트 스키마에 대한 기본적인 이해 필요
- YAML파일을 기록하는 추가적인 과정 필요
장점(비교 대상은 선언형 오브젝트)
- 간결하고 이해 쉬움
단점
- 디렉터리가 아닌, 파일에 가장 적합
- 활성 오브젝트 업데이트는 구성 파일에 반영되어야 함
3. 선언형 오브젝트 구성
- 파일이 있는 디렉터리를 대상으로 함
- 1개 이상의 작업자 수를 지원
- 학습 난이도 높음
- 생성, 업데이트 , 삭제 작업은 kubectl에 의해 오브젝트마다 자동으로 감지
- 변경 사항이 오브젝트 구성 파일에 병합되지 않더라도 다른 작성자가 작성한 변경 사항을 유지
- replace API 대신 , patch API 사용
# 변경 내역 확인
kubectl diff -f configs/
# 적용
kubectl apply -f configs/
장점 (비교 대상은 명령형 오브젝트 구성)
- 변경 사항 유지
- 작업 유형의 자동 감지에 더 나은 자원 제공
단점
- 이해 어려움
'Study > 도커씨와쿠버씨' 카테고리의 다른 글
[쿠도읽] 쿠버네티스 네임스페이스? namespace? - (6) (0) | 2022.03.07 |
---|---|
[쿠도읽] 오브젝트 이름? ID? UID? -(5) (0) | 2022.03.05 |
[쿠도읽] 쿠버네티스 오브젝트? K8s Object? - (3) (0) | 2022.02.20 |
[쿠도읽] 쿠버네티스 컴포넌트? API? - (2) (0) | 2022.02.15 |
[쿠도읽] 쿠버네티스란? Kubernetes? K8s? - (1) (0) | 2022.02.13 |