Auto DevOps를 위한 다중 Kubernetes 클러스터
Auto DevOps를 사용할 때, 서로 다른 Kubernetes 클러스터에 서로 다른 환경을 배포할 수 있습니다.
Auto DevOps에서 사용하는 배포 작업 템플릿은 세 가지 환경 이름을 정의합니다:
-
review/
(모든 환경은review/
로 시작함) staging
production
이 환경들은 자동 배포 작업에 연결되어 있으므로 서로 다른 배포 도메인이 있어야 합니다. 세 가지 환경 각각에 대해 별도의 KUBE_CONTEXT
및 KUBE_INGRESS_BASE_DOMAIN
변수를 정의해야 합니다.
서로 다른 클러스터에 배포하기
서로 다른 Kubernetes 클러스터에 환경을 배포하려면:
- Kubernetes 클러스터 생성하기.
- 클러스터를 프로젝트와 연결합니다:
- 각 클러스터에 NGINX Ingress Controller 설치하기. 다음 단계에 필요한 IP 주소와 Kubernetes 네임스페이스를 저장합니다.
-
Auto DevOps CI/CD 파이프라인 변수를 구성하기
- 각 환경에 대해
KUBE_CONTEXT
변수를 설정합니다. 값은 관련 클러스터의 에이전트를 가리켜야 합니다. -
KUBE_INGRESS_BASE_DOMAIN
을 설정합니다. 각 환경의 Ingress를 관련 클러스터로 가리키도록 기본 도메인을 설정해야 합니다. - 배포 대상인 Kubernetes 네임스페이스의 값으로
KUBE_NAMESPACE
변수를 추가합니다. 이 변수를 여러 환경으로 한정할 수 있습니다.
- 각 환경에 대해
더 이상 지원되지 않는 인증서 기반 클러스터:
- 프로젝트로 이동하여 왼쪽 사이드 바에서 Operate > Kubernetes clusters를 선택합니다.
- 각 클러스터의 환경 범위 설정하기.
- 각 클러스터에 대해 Ingress IP 주소를 기반으로 도메인 추가하기.
*
로 설정한 폴백 클러스터를 생성해야 합니다. 이미 추가한 클러스터 중 하나를 폴백 클러스터로 설정할 수 있습니다.예시 구성
클러스터 이름 | 클러스터 환경 범위 |
KUBE_INGRESS_BASE_DOMAIN 값 |
KUBE CONTEXT 값 |
변수 환경 범위 | 비고 |
---|---|---|---|---|---|
review | review/* |
review.example.com |
path/to/project:review-agent |
review/* |
모든 리뷰 앱을 실행하는 리뷰 클러스터입니다. |
staging | staging |
staging.example.com |
path/to/project:staging-agent |
staging |
선택 사항입니다. 스테이징 환경의 배포를 실행하는 스테이징 클러스터입니다. 먼저 활성화해야 합니다. |
production | production |
example.com |
path/to/project:production-agent |
production |
프로덕션 환경 배포를 실행하는 프로덕션 클러스터입니다. 점진적 롤아웃을 사용할 수 있습니다. |
구성 테스트
구성을 완료한 후, 병합 요청을 생성하여 설정을 테스트하세요.
review/*
환경 범위에서 Kubernetes 클러스터에 Review App으로 배포된 애플리케이션을 확인하세요.
유사하게, 다른 환경도 확인하세요.