InfoGrab Docs

컨테이너 레지스트리 메타데이터 데이터베이스

여러 컨테이너 이미지를 더 효율적으로 관리하기 위해 데이터베이스에 컨테이너 레지스트리 데이터를 저장합니다.

히스토리 GitLab 16.4에서 GitLab Self-Managed에 베타 기능 으로 활성화 되었습니다. GitLab 17.3에서 일반적으로 사용 가능 합니다. 메타데이터 데이터베이스는 성능을 개선하고 새 기능을 추가하는 컨테이너 레지스트리에 대한 여러 개선 사항 을 제공합니다. GitLab Self-Managed의 레지스트리 메타데이터 데이터베이스 기능 릴리스 작업은 에픽 5521 에서 추적됩니다. 기본적으로 컨테이너 레지스트리는 오브젝트 스토리지 또는 로컬 파일 시스템을 사용하여 컨테이너 이미지와 관련된 메타데이터를 유지합니다. 이 메타데이터 저장 방법은 특히 태그를 나열할 때와 같이 여러 이미지에 걸친 데이터를 효율적으로 액세스하는 방법을 제한합니다. 데이터베이스를 사용하여 이 데이터를 저장하면 제로 다운타임으로 오래된 데이터를 자동으로 제거하는 온라인 가비지 컬렉션 을 포함한 많은 새 기능이 가능해집니다. 이 데이터베이스는 레지스트리가 이미 사용하는 스토리지와 함께 작동하지만 오브젝트 스토리지나 파일 시스템을 대체하지 않습니다. 메타데이터 데이터베이스로 메타데이터 가져오기를 수행한 후에도 스토리지 솔루션을 계속 유지해야 합니다. Helm Charts 설치의 경우, Helm Charts 문서의 컨테이너 레지스트리 메타데이터 데이터베이스 관리 를 참조하세요. 개선 사항 # 메타데이터 데이터베이스 아키텍처는 레거시 메타데이터 스토리지로는 사용할 수 없는 성능 개선, 버그 수정 및 새 기능을 지원합니다. 이러한 개선 사항에는 다음이 포함됩니다: 자동 온라인 가비지 컬렉션 리포지터리, 프로젝트 및 그룹에 대한 스토리지 사용량 가시성 이미지 서명 리포지터리 이동 및 이름 바꾸기 보호된 태그 정리 정책 에 대한 성능 개선, 대규모 리포지터리의 성공적인 정리 가능 리포지터리 태그 나열에 대한 성능 개선 태그 게시 타임스탬프 추적 및 표시 ( 이슈 290949 참조) 이름 이외의 추가 속성으로 리포지터리 태그 정렬 레거시 메타데이터 스토리지의 기술적 제약으로 인해 새 기능은 메타데이터 데이터베이스 버전에서만 구현됩니다. 보안 관련이 아닌 버그 수정은 메타데이터 데이터베이스 버전으로 제한될 수 있습니다. 알려진 제한 사항 # 기존 레지스트리의 메타데이터 가져오기에는 읽기 전용 시간이 필요합니다. 18.3 이전에는 버전을 업그레이드할 때 레지스트리 일반 스키마 및 배포 후 데이터베이스 마이그레이션을 수동으로 실행해야 합니다. 멀티 노드 Linux 패키지 환경에서 업그레이드 중 레지스트리 제로 다운타임 에 대한 보장이 없습니다. 기존 레지스트리의 메타데이터 가져오기 중에 이미지 태그의 createdAt 및 publishedAt 타임스탬프 값이 가져오기 날짜로 설정됩니다. 이는 일관성을 보장하기 위한 의도적인 것으로, 레거시 레지스트리는 모든 이미지에 대한 태그 게시 날짜를 수집하지 않기 때문입니다. 일부 이미지에는 메타데이터에 빌드 날짜가 있지만 많은 이미지에는 없습니다. 자세한 내용은 이슈 1384 를 참조하세요. 메타데이터 데이터베이스 기능 지원