인프런 복습 - 쿠버네티스 어나더 클래스
[Sprint2] Helm vs Kustomize + Kustomize 실습(다양한 배포환경)
closun
2025. 5. 30. 23:42
▲ Kustomize는 직접 하위 폴더 구성을 하고 이 구조에 배포할 yaml 파일도 생성해주어야 함
▲ values.yaml에서 autoscaling의 enabled를 false로 하면 hpa가 배포되지 않음
▲ kustomization에 배포할 파일 지정- Common Labels키에 내용을 넣으면 됨
▲ 환경별 오버레이 될 파일을 넣을 수 있다
▲ 개발환경 배포 명령어
kubectl apply -k ./app/overlays/dev
▲ Helm의 경우
values-dev.yaml
values-qa.yaml
values-prod.yaml
배포시 -f 옵션 사용
실습 (Kustomize)
Kustomize 배포하기
▲ 처음에는 dev, qa, prod중 dev가 적용되므로 Abort 선택
▲ 템플릿 로그 확인
실습 후 정리
kubectl delete ns anotherclass-222-dev
kubectl delete ns anotherclass-222-qa
kubectl delete ns anotherclass-222-prod
Jenkinsfile 확인
▲ 여기서 Input box를 만든 것
▲ 빌드 전에 PROFILE 값을 동적으로 사용할 수 있다.
▲ 이 Path는 api-tester 폴더 아래 overlays 폴더가 있음
▲ 이렇게 정의하면 모든 yaml 파일에 공통적으로 labels와 selector를 만들어준다
deployment와 service 파일을 보면 실제로 labels가 없음
▲ resources: 배포할 파일들을 지정 필요
보통 환경(개발, 운영, 테스트)은 다른 클러스터에 구성되기 때문에, 실제로는 namespace이름을 구분할 필요가 없다
실습 후 정리