Auto DevOps 배포를 준비하세요

Tier: Free, Premium, Ultimate Offering: GitLab.com, Self-managed, GitLab Dedicated

Auto DevOps를 활성화하고 기본 도메인 및 배포 전략을 설정하지 않으면 GitLab에서 애플리케이션을 직접 배포할 수 없습니다. 그러므로 Auto DevOps를 활성화하기 전에 이를 준비하는 것을 권장합니다.

배포 전략

Auto DevOps를 사용하여 애플리케이션을 배포할 때, 요구 사항에 가장 잘 맞는 지속적인 배포 전략을 선택하세요:

배포 전략 설정 방법론
생산 환경으로의 지속적인 배포 기본 브랜치가 지속적으로 생산 환경으로 배포될 수 있도록 자동 배포를 활성화합니다. 생산 환경으로의 지속적인 배포.
타임드 증분 롤아웃을 사용한 생산 환경으로의 지속적인 배포 INCREMENTAL_ROLLOUT_MODE 변수를 timed로 설정합니다. 롤아웃 사이에 5분의 지연 시간으로 생산 환경으로 지속적으로 배포합니다.
스테이징으로의 자동 배포, 생산 환경으로의 수동 배포 STAGING_ENABLED1로 설정하고 INCREMENTAL_ROLLOUT_MODEmanual로 설정합니다. 기본 브랜치가 스테이징으로 지속적으로 배포되고 생산으로 지속적으로 전달됩니다.

Auto DevOps 또는 이후에 배포 방법을 선택할 수 있습니다:

  1. GitLab에서 프로젝트의 설정 > CI/CD > Auto DevOps로 이동합니다.
  2. 배포 전략을 선택합니다.
  3. 변경 사항 저장을 선택합니다.

참고: 다운타임과 리스크를 최소화하려면 블루-그린 배포 기술을 사용하세요.

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 팟으로 요청을 라우팅합니다.