5.4. 미러 레지스트리로 이미지 세트 미러링
이미지 세트를 미러 레지스트리로 미러링하면 필요한 이미지를 안전하고 통제된 환경에서 사용할 수 있으므로 배포, 업데이트 및 유지 관리 작업이 더욱 원활해집니다.
5.4.1. 이미지 세트 구성 생성 링크 복사링크가 클립보드에 복사되었습니다!
oc-mirror 플러그인 v2를 사용하여 이미지를 미러링하려면 먼저 이미지 세트 구성 파일을 만들어야 합니다. 이 이미지 세트 구성 파일은 oc-mirror 플러그인의 다른 구성 설정과 함께 미러링할 OpenShift Container Platform 릴리스, Operator 및 기타 이미지를 정의합니다.
사전 요구 사항
- 컨테이너 이미지 레지스트리 인증 정보 파일이 생성되어 있습니다. 자세한 내용은 이미지 미러링을 허용하는 자격 증명 구성을 참조하세요.
프로세스
ImageSetConfigurationYAML 파일을 만들고 필요한 이미지를 포함하도록 수정합니다.Example
ImageSetConfiguration.yamlkind: ImageSetConfiguration apiVersion: mirror.openshift.io/v2alpha1 mirror: platform: channels: - name: stable-4.191 minVersion: 4.19.2 maxVersion: 4.19.2 graph: true2 operators: - catalog: registry.redhat.io/redhat/redhat-operator-index:v4.193 packages:4 - name: aws-load-balancer-operator - name: 3scale-operator - name: node-observability-operator additionalImages:5 - name: registry.redhat.io/ubi8/ubi:latest - name: registry.redhat.io/ubi9/ubi@sha256:20f695d2a91352d4eaa25107535126727b5945bff38ed36a3e59590f495046f0- 1
- 채널을 설정하여 OpenShift Container Platform 이미지를 검색합니다.
- 2
그래프 추가: 그래프 데이터 이미지를 빌드하고 미러 레지스트리에 푸시하려면 true를설정합니다. 그래프 데이터 이미지는 OpenShift Update Service(OSUS)를 생성하는 데 필요합니다.그래프: true필드는UpdateService사용자 정의 리소스 매니페스트도 생성합니다.oc명령줄 인터페이스(CLI)는UpdateService사용자 정의 리소스 매니페스트를 사용하여 OSUS를 생성할 수 있습니다. 자세한 내용은 OpenShift 업데이트 서비스 정보를 참조하십시오.- 3
- Operator 카탈로그를 설정하여 OpenShift Container Platform 이미지를 검색합니다.
- 4
- 이미지 세트에 포함할 특정 Operator 패키지만 지정합니다. 이 필드를 제거하여 카탈로그의 모든 패키지를 검색합니다.
- 5
- 이미지 세트에 포함할 추가 이미지를 지정합니다.
참고oc-mirror 플러그인 v2에서는
additionalImages에 나열된 모든 이미지에 대해 명시적인 레지스트리 호스트 이름을 사용해야 합니다. 그렇지 않으면 이미지가 잘못된 대상 경로로 미러링됩니다.
5.4.2. oc-mirror 워크플로우 비교 링크 복사링크가 클립보드에 복사되었습니다!
다음 표를 사용하여 미러-디스크(m2d), 디스크-미러(d2m), 미러-미러(m2m) 워크플로에 대해 지원되는 사용 사례를 비교하세요.
| 사용 사례 | 디스크로 미러링(m2d) 및 디스크로 미러링(d2m) | 미러 투 미러(m2m) |
|---|---|---|
| 대상 레지스트리는 인터넷 접속이 불가능하고 외부 접근도 불가능한 환경에 존재합니다. | ✓ | |
| 대상 레지스트리는 인터넷 접속이 불가능한 환경에 있지만 다른 컴퓨터에서는 접속이 가능합니다. 예를 들어, 대상 레지스트리는 요새 호스트에 있습니다. | ✓ | |
| USB 장치와 같은 물리적 방법을 사용하여 연결이 끊긴 환경으로 콘텐츠를 이동해야 합니다. | ✓ | |
| 워크플로는 중간 tar 파일을 생성하지 않고 콘텐츠를 대상 레지스트리로 직접 이동합니다. | ✓ | |
| 워크플로는 실패 후 재개하기 위해 내부 캐시를 사용하지만 추가 디스크 공간이 필요합니다. | ✓ | |
| 워크플로는 캐시를 사용하지 않고, 실패 후 처음부터 다시 시작하며, 추가 디스크 공간이 필요하지 않습니다. | ✓ |
5.4.3. 부분적으로 연결이 끊긴 환경에서 이미지 세트 미러링 링크 복사링크가 클립보드에 복사되었습니다!
인터넷 접속이 제한된 환경에서는 oc-mirror 플러그인 v2를 사용하여 이미지 세트를 레지스트리에 미러링할 수 있습니다.
사전 요구 사항
- oc-mirror 플러그인 v2를 실행 중인 환경에서는 인터넷과 미러 레지스트리에 액세스할 수 있습니다.
프로세스
다음 명령을 실행하여 지정된 이미지 세트 구성의 이미지를 지정된 레지스트리로 미러링합니다.
$ oc mirror -c <image_set_configuration> --workspace file://<file_path> docker://<mirror_registry_url> --v21 다음과 같습니다.
- <image_set_configuration>
- 이미지 세트 구성 파일의 이름을 지정합니다.
- <file_path>
- 클러스터 리소스가 생성될 디렉토리를 지정합니다.
- <mirror_registry_url>
- 이미지가 저장되어 있고 삭제해야 하는 미러 레지스트리의 URL 또는 주소를 지정합니다.
검증
-
<file_path>디렉터리에 생성된working-dir/cluster-resources디렉터리로 이동합니다. -
ImageDigestMirrorSet,ImageTagMirrorSet및CatalogSource리소스에 대한 YAML 파일이 있는지 확인합니다.
다음 단계
- oc-mirror 플러그인 v2에서 생성된 리소스를 사용하도록 클러스터를 구성합니다.
5.4.4. 완전히 연결이 끊긴 환경에서 이미지 세트 미러링 링크 복사링크가 클립보드에 복사되었습니다!
OpenShift Container Platform 클러스터가 공용 인터넷에 액세스할 수 없는 완전히 분리된 환경에서 이미지 세트를 미러링할 수 있습니다. 다음은 미러링 프로세스를 설명하는 고급 워크플로입니다.
- 디스크로 미러링 : 이미지 세트를 아카이브로 미러링합니다.
- 디스크 전송 : 연결이 끊긴 미러 레지스트리의 네트워크로 아카이브를 수동으로 전송합니다.
- 디스크에서 미러링 : 아카이브에서 대상의 연결이 끊긴 레지스트리로 이미지 세트를 미러링합니다.
5.4.4.1. 미러에서 디스크로 미러링 링크 복사링크가 클립보드에 복사되었습니다!
oc-mirror 플러그인 v2를 사용하면 이미지 세트를 생성하고 내용을 디스크에 저장할 수 있습니다. 그 후, 생성된 이미지 세트를 연결이 끊긴 환경으로 전송하고 대상 레지스트리로 미러링할 수 있습니다.
oc-mirror 플러그인 v2는 이미지 세트 구성 파일에 지정된 소스에서 컨테이너 이미지를 검색하여 로컬 디렉토리의 tar 아카이브에 압축합니다.
프로세스
다음 명령을 실행하여 지정된 이미지 세트 구성의 이미지를 디스크로 미러링합니다.
$ oc mirror -c <image_set_configuration> file://<file_path> --v2다음과 같습니다.
- <image_set_configuration>
- 이미지 세트 구성 파일의 이름을 지정합니다.
- <file_path>
- 이미지 세트가 포함된 아카이브가 생성될 디렉토리를 지정합니다.
검증
-
생성된
<file_path>디렉터리로 이동합니다. - 보관 파일이 생성되었는지 확인하세요.
다음 단계
- 디스크에서 미러로 미러링
5.4.4.2. 디스크에서 미러로 미러링 링크 복사링크가 클립보드에 복사되었습니다!
oc-mirror 플러그인 v2를 사용하면 디스크에서 대상 미러 레지스트리로 이미지 세트를 미러링할 수 있습니다.
oc-mirror 플러그인 v2는 로컬 디스크에서 컨테이너 이미지를 검색하여 지정된 미러 레지스트리로 전송합니다.
프로세스
- 미러링된 이미지 세트가 들어 있는 디스크를 대상 미러 레지스트리가 있는 환경으로 전송합니다.
다음 명령을 실행하여 디스크에 있는 이미지 세트 파일을 처리하고 내용을 대상 미러 레지스트리로 미러링합니다.
$ oc mirror -c <image_set_configuration> --from file://<file_path> docker://<mirror_registry_url> --v2다음과 같습니다.
- <image_set_configuration>
- 이미지 세트 구성 파일의 이름을 지정합니다.
- <file_path>
- 아카이브가 들어 있는 디스크의 디렉토리를 지정합니다. 이 폴더에는 클러스터에 적용하기 위해 생성된 클러스터 리소스(예: ImageDigestMirrorSet(IDMS) 또는 ImageTagMirrorSet(ITMS) 리소스)도 포함됩니다.
- <mirror_registry_url>
- 이미지가 저장된 미러 레지스트리의 URL 또는 주소를 지정합니다.
검증
-
<file_path>디렉터리에 생성된working-dir디렉터리 내에서cluster-resources디렉터리로 이동합니다. -
ImageDigestMirrorSet,ImageTagMirrorSet및CatalogSource리소스에 대한 YAML 파일이 있는지 확인합니다.
다음 단계
- oc-mirror 플러그인 v2에서 생성된 리소스를 사용하도록 클러스터를 구성합니다.