GitLab 클라우드 네이티브 차트 7.0

GitLab 16.0 릴리스와 함께, 차트 버전을 7.0으로 업데이트했습니다.

주요 변경 사항 요약

6.x에서의 업그레이드 경로

차트의 7.0 버전으로 업그레이드하려면, 먼저 차트의 최신 6.11.x 릴리스로 업그레이드해야 합니다. 최신 패치에 대한 버전 매핑 세부 정보를 확인하세요.

GitLab은 이제 기본적으로 두 개의 데이터베이스 연결을 사용합니다. 업그레이드 전에 PostgreSQL의 max_connections가 충분히 높은지 확인할 수 있습니다(사용 가능한 최대 연결의 50% 이상 사용). 이를 확인하려면 Toolbox 컨테이너를 사용하여 다음 Rake 작업을 실행하여 확인할 수 있습니다:

gitlab-rake gitlab:db:decomposition:connection_status

작업이 max_connections가 충분히 높다는 것을 나타내면, 업그레이드를 진행할 수 있습니다. 그렇지 않거나 단일 연결을 유지하려는 경우, 업그레이드 전에 ci.enabled 키를 false로 설정할 수 있습니다.

6.11.x에서의 업그레이드

7.0 릴리스의 업그레이드 단계를 따르세요.

주요 변경 사항

PostgreSQL

이 차트의 7.0.0 릴리스의 일환으로, 기본 PostgreSQL 버전을 12.7에서 14.8로 업그레이드했습니다. 이는 PostgreSQL 차트의 버전을 8.9.4에서 12.5.2로 업그레이드했음을 의미합니다.

이는 호환되지 않는 변경 사항입니다. 데이터베이스를 업그레이드하려면 수동 단계를 수행해야 합니다. 이러한 단계는 업그레이드 단계에 문서화되어 있습니다.

참고: PostgreSQL 13은 GitLab 16.0에서 요구되는 최소한의 PostgreSQL 버전입니다. PostgreSQL 12는 GitLab 16.0 이상에서 더 이상 지원되지 않습니다.

번들된 certmanager

번들된 certmanager 차트가 1.5.4에서 1.11.1로 업그레이드되었습니다. 클러스터 및 도구에 따라 이에 대한 수동 작업이 필요할 수 있습니다.

certmanager 1.11을 지원하는지 확인하세요. 이 릴리스는 Kubernetes 1.21부터 1.26 및 OpenShift 4.8부터 4.13을 지원합니다. 자세한 정보는 certmanager 지원되는 릴리스를 참조하세요.

기본 certmanager 구성은 이제 acme.cert-manager.io/http01-edit-in-place 주석을 사용합니다. 결과적으로 certmanager는 새로운 Ingress를 만드는 대신 기존 Ingress를 사용하여 ACME 챌린지를 완료합니다. 이 변경으로 인해 ingressClassName을 설정해야 하는 Ingress 컨트롤러와 호환성이 확보됩니다.

OpenShift 사용자는 certmanager 1.10+를 배포하기 위해 Security Context Constraints를 수정해야 할 수 있습니다. 자세한 내용은 certmanager 1.10 릴리스 노트를 참조하세요.

GitLab 차트에서 관리되지 않는 certmanager 사용자 지정 리소스를 배포하거나 cert-manager와 관련된 추가 스크립트 또는 도구를 사용하는 경우, 업그레이드 전에 certmanager 1.6에서 1.11까지의 잠재적으로 파손된 변경 사항을 꼭 읽어보세요.

인플레이스 Ingress 수정 비활성화

가끔씩 기존 Ingress를 재사용하여 유효성을 검사하는 로직이 적합하지 않을 수 있습니다. 예를 들어, Ingress에 IP 허용 목록 또는 기타 제약 조건이 있는 경우에는 공개 인터넷에서 접근할 수 없습니다.

ACME 챌린지 유효성 검사를 위해 매번 동적으로 Ingress를 생성하는 로직을 수행하려면 7.7.0부터 global.issuer.useNewIngressForCerts 값을 true로 설정할 수 있습니다(기본값은 false).

useNewIngressForCertstrue로 설정하려면 Ingress 컨트롤러에서 ingressClassName 필드가 지원되어야 합니다. 이 필드는 Kubernetes 1.18부터 사용 가능하지만 모든 컨트롤러에서 지원되지는 않습니다. 예를 들어 GKE Ingress를 사용할 때는 아직 사용할 수 없습니다.

기존에 GitLab 차트 7.0-7.6를 실행 중인 기존 클러스터에서이 필드를 활성화해야 하는 경우, 업그레이드 지침을 따르세요.

Redis

포함된 bitnami/Redis 서브 차트가 이전에 설치된 버전 11.3.4에서 버전 16.13.2로 업데이트되었습니다. 또한 Redis가 6.0.9에서 6.2.7로 업그레이드되었습니다.

번들된 Redis를 사용하는 경우 업그레이드 전에 수동 단계가 필요합니다. 번들된 Redis 서브 차트 업그레이드를 참조하세요.