Auto DevOps 배포를 준비하세요
Auto DevOps를 활성화하고 기본 도메인 및 배포 전략을 설정하지 않으면 GitLab에서 애플리케이션을 직접 배포할 수 없습니다. 그러므로 Auto DevOps를 활성화하기 전에 이를 준비하는 것을 권장합니다.
배포 전략
Auto DevOps를 사용하여 애플리케이션을 배포할 때, 요구 사항에 가장 잘 맞는 지속적인 배포 전략을 선택하세요:
배포 전략 | 설정 | 방법론 |
---|---|---|
생산 환경으로의 지속적인 배포 | 기본 브랜치가 지속적으로 생산 환경으로 배포될 수 있도록 자동 배포를 활성화합니다. | 생산 환경으로의 지속적인 배포. |
타임드 증분 롤아웃을 사용한 생산 환경으로의 지속적인 배포 |
INCREMENTAL_ROLLOUT_MODE 변수를 timed 로 설정합니다.
| 롤아웃 사이에 5분의 지연 시간으로 생산 환경으로 지속적으로 배포합니다. |
스테이징으로의 자동 배포, 생산 환경으로의 수동 배포 |
STAGING_ENABLED 를 1 로 설정하고 INCREMENTAL_ROLLOUT_MODE 를 manual 로 설정합니다.
| 기본 브랜치가 스테이징으로 지속적으로 배포되고 생산으로 지속적으로 전달됩니다. |
Auto DevOps 또는 이후에 배포 방법을 선택할 수 있습니다:
- GitLab에서 프로젝트의 설정 > CI/CD > Auto DevOps로 이동합니다.
- 배포 전략을 선택합니다.
- 변경 사항 저장을 선택합니다.
참고: 다운타임과 리스크를 최소화하려면 블루-그린 배포 기술을 사용하세요.
Auto DevOps 기본 도메인
Auto DevOps 기본 도메인은 자동 리뷰 앱 및 자동 배포를 사용하기 위해 필요합니다.
기본 도메인을 정의하려면 다음 중 하나를 수행하세요:
- 프로젝트, 그룹 또는 인스턴스에서: 클러스터 설정으로 이동하여 거기에 추가합니다.
- 프로젝트 또는 그룹에서: 환경 변수로 추가합니다:
KUBE_INGRESS_BASE_DOMAIN
. - 인스턴스에서: Admin 영역으로 이동한 후, 설정 > CI/CD > Continuous Integration and Delivery로 이동하여 거기에 추가합니다.
기본 도메인 변수 KUBE_INGRESS_BASE_DOMAIN
은 다른 환경 변수와 동일한 우선 순위를 따릅니다.
프로젝트 및 그룹에서 기본 도메인을 지정하지 않으면 Auto DevOps는 인스턴스 전역 Auto DevOps 도메인을 사용합니다.
Auto DevOps는 기본 도메인과 일치하는 와일드카드 DNS A
레코드가 필요합니다. 예를 들어 example.com
을 기본 도메인으로 사용하려면 다음과 같은 DNS 항목이 필요합니다:
*.example.com 3600 A 10.0.2.2
이 경우, 배포된 애플리케이션은 example.com
에서 제공되며 10.0.2.2
는 일반적으로 NGINX인 로드 밸런서의 IP 주소입니다 (요구 사항 참조). DNS 레코드 설정은 이 문서의 범위를 벗어나므로 정보는 DNS 제공업체에 문의하세요.
또는 구성 없이 자동 와일드카드 DNS를 제공하는 무료 공개 서비스인 nip.io 등을 사용할 수 있습니다. nip.io를 사용하려면 Auto DevOps 기본 도메인을 10.0.2.2.nip.io
로 설정하세요.
설정을 완료한 후, 모든 요청이 로드 밸런서에 도달하고 해당 로드 밸런서는 애플리케이션을 실행하는 Kubernetes 팟으로 요청을 라우팅합니다.