1. Operator 작성 디렉토리 구조
• operator.yaml : Operator 메타데이터와 전체 라이프 사이클을 모두 정의하는 기본 YAML 파일
• params.yaml : Operator의 매개변수를 정의
• templates 디렉토리 : operator.yaml에 정의된 워크플로를 기반으로 설치 후
클러스터에 적용될 모든 템플릿화된 Kubernetes Object가 포함
2. KUDO 설치
(1) KUDO 플러그인 바이너리 다운로드 및 설치
$ wget https://github.com/kudobuilder/kudo/releases/download/v0.19.0/kubectl-kudo_0.19.0_linux_x86_64
$ chmod +x kubectl-kudo_0.19.0_linux_x86_64 && mv kubectl-kudo_0.19.0_linux_x86_64 /usr/local/bin/kubectl-kudo
(2) KUDO 설치 확인
$ kubectl kudo --version
(3) cert-manager 설치
$ kubectl apply --validate=false -f https://github.com/jetstack/cert-manager/releases/download/v1.11.0/cert-manager.yaml
(4) cert-manager 설치 확인
$ kubectl get pods --namespace cert-manager
(5) KUDO 설치후 초기화 수행
$ kubectl kudo init
3. KUDO를 사용한 Operator 생성
(1) Operator 경로 이동 및 생성 명령어
- Chapter07
$ kubectl kudo install Ch07_04-kudo-operator/
디렉토리의 파일구성은 아래 링크 참고
GitHub - DevOpsRunbook/FastCampus: Kubernetes와 Docker로 한번에 끝내는 컨테이너 기반 MSA 실습 예제코드
Kubernetes와 Docker로 한번에 끝내는 컨테이너 기반 MSA 실습 예제코드. Contribute to DevOpsRunbook/FastCampus development by creating an account on GitHub.
github.com
(2) 생성된 Operator 확인 명령어
$ kubectl kudo get operators
(3) 생성된 Instances 확인 명령어
$ kubectl kudo get instances
(4) 생성된 Component 전체를 yaml 형태 확인 명령어
$ kubectl kudo get all ‒o yaml
(5) 생성된 Kubernetes Object 전체 확인 명령어
$ kubectl kudo get all
(6) 배포된 Kubernetes deployment yaml 형태 확인 명령어
$ kubectl kudo get all -o yaml
4. KUDO를 사용한 Operator 업그레이드
(1) Operator > Parameter 수정후 업그레이드 명령어
- Chapter07
$ kubectl kudo upgrade Ch07_04-kudo-operator/ --instance test-instance
(2) 생성된 Component 전체를 yaml 형태 확인 명령어
$ kubectl kudo get all -o yaml
(3) 생성된 Kubernetes Object 전체 확인 명령어
$ kubectl get all
'MSA > Part4. Ch.7 Kubernetes Custom 관리 방법' 카테고리의 다른 글
03. Kubernetes Operator 소개 (0) | 2023.02.08 |
---|---|
02. Custom Resource Definition(CRD) 소개 (0) | 2023.02.08 |
01. Kubernetes Custom 관리 방법 소개 (0) | 2023.02.07 |