InfoGrab DocsInfoGrab Docs

Auto DevOps를 위한 여러 쿠버네티스 클러스터

Auto DevOps를 사용하여 여러 쿠버네티스 클러스터에 서로 다른 환경을 배포하는 방법을 설명합니다.

Auto DevOps를 사용하면 서로 다른 환경을 다른 쿠버네티스 클러스터에 배포할 수 있습니다. Auto DevOps가 사용하는 Deploy Job 템플릿 은 세 가지 환경 이름을 정의합니다: review/ ( review/ 로 시작하는 모든 환경) staging production 이 환경들은 Auto Deploy 를 사용하는 job에 연결되므로, 서로 다른 배포 도메인을 가져야 합니다. 세 가지 환경 각각에 대해 별도의 KUBE_CONTEXT 와 KUBE_INGRESS_BASE_DOMAIN 변수를 정의해야 합니다. 다른 클러스터에 배포 # 환경을 서로 다른 쿠버네티스 클러스터에 배포하려면: OpenTofu와 GitLab으로 쿠버네티스 클러스터 생성 . 클러스터를 프로젝트에 연결합니다: 각 클러스터에 GitLab Agent for Kubernetes 설치 . 각 에이전트가 프로젝트에 접근할 수 있도록 구성 . 각 클러스터에 NGINX Ingress Controller 설치 . 다음 단계를 위해 IP 주소와 쿠버네티스 네임스페이스를 저장합니다. Auto DevOps CI/CD 파이프라인 변수 구성 각 환경별 KUBE_CONTEXT 변수를 설정합니다. 값은 해당 클러스터의 에이전트를 가리켜야 합니다. KUBE_INGRESS_BASE_DOMAIN 을 설정합니다. 각 환경이 해당 클러스터의 Ingress를 가리키도록 기본 도메인을 구성 해야 합니다. 배포 타깃으로 지정할 쿠버네티스 네임스페이스 값으로 KUBE_NAMESPACE 변수를 추가합니다. 이 변수는 여러 환경에 범위를 지정할 수 있습니다. 더 이상 사용되지 않는 인증서 기반 클러스터 의 경우: 프로젝트로 이동하여 왼쪽 사이드바에서 Operate > Kubernetes clusters 를 선택합니다. 각 클러스터의 환경 범위를 설정 합니다. 각 클러스터에 대해 Ingress IP 주소를 기반으로 도메인을 추가 합니다. 활성 쿠버네티스 클러스터 확인 시 클러스터 환경 범위가 적용되지 않습니다 . 멀티 클러스터 설정이 Auto DevOps에서 작동하려면, Cluster environment scope 를 * 로 설정한 폴백 클러스터를 만들어야 합니다. 이미 추가한 클러스터 중 하나를 폴백 클러스터로 설정할 수 있습니다. 예시 구성 # 클러스터 이름 클러스터 환경 범위 KUBE_INGRESS_BASE_DOMAIN 값 KUBE CONTEXT 값 변수 환경 범위 참고 review review/* review.example.com path/to/project:review-agent review/* 모든 Review App을 실행하는 review 클러스터. staging staging staging.example.com path/to/project:staging-agent staging 선택 사항. staging 환경의 배포를 실행하는 staging 클러스터. 먼저 활성화해야 합니다. production production example.com path/to/project:production-ag