3.6. oc-mirror 플러그인 v1에서 v2로 마이그레이션


oc-mirror v2 플러그인으로 인해 이미지 미러링 워크플로에 대한 주요 변경 사항이 추가되었습니다. 이 가이드에서는 oc-mirror 플러그인 v2과의 호환성을 보장하면서 마이그레이션에 대한 단계별 지침을 제공합니다.

중요

API 버전을 수정하고 더 이상 사용되지 않는 필드를 제거하여 구성을 수동으로 업데이트해야 합니다. 자세한 내용은 "oc-mirror 플러그인 v1에서 v2로 변경"을 참조하십시오.

3.6.1. oc-mirror 플러그인 v1에서 v2로 변경

oc-mirror 플러그인 v1에서 v2로 마이그레이션하기 전에 oc-mirror 플러그인 v1과 v2 간의 다음 차이점을 참조하십시오.

  • 명시적 버전 선택: oc-mirror 를 사용할 때 사용자가 --v2 를 명시적으로 지정해야 합니다. 버전을 지정하지 않으면 v1이 기본적으로 실행됩니다. 이 동작은 향후 릴리스에서 변경될 것으로 예상됩니다. 여기서 --v2 는 기본값입니다.
  • 업데이트된 명령: oc-mirror 플러그인 v2의 새 워크플로우에 맞게 워크플로우 미러링 명령이 변경되었습니다.

    • mirror-to-disk의 경우 다음 명령을 실행합니다.

      $ oc-mirror --config isc.yaml file://<directory_name> --v2
      Copy to Clipboard Toggle word wrap
    • disk-to-mirror의 경우 다음 명령을 실행합니다.

      $ oc-mirror --config isc.yaml --from file://<directory_name> docker://<remote_registry> --v2
      Copy to Clipboard Toggle word wrap
    • mirror-to-mirror의 경우 다음 명령을 실행합니다.

      $ oc-mirror --config isc.yaml --workspace file://<directory_name> docker://<remote_registry> --v2
      Copy to Clipboard Toggle word wrap
      참고

      mirror-to-mirror 작업에 --workspace 가 필요합니다.

  • API 버전 업데이트: ImageSetConfiguration API 버전이 v1alpha2 (v1)에서 v2alpha1 (v2)으로 변경됩니다. 마이그레이션 전에 구성 파일을 수동으로 업데이트해야 합니다.
  • 구성 변경:

    • storageConfig 는 oc-mirror 플러그인 v2에서 제거해야 합니다.
    • 증분 미러링은 이제 작업 디렉터리 또는 로컬 캐시를 통해 자동으로 처리됩니다.
  • 결과 디렉터리: 연결이 끊긴 클러스터에 적용할 모든 사용자 정의 리소스는 마이그레이션 후 < workspace_path>/working-dir/cluster-resources 디렉터리에 생성됩니다.

    • oc-mirror 플러그인 v2의 출력은 oc-mirror 플러그인 v1과 동일한 위치에 저장되지 않습니다.
    • 다음 리소스의 작업 디렉터리에서 cluster-resources 폴더를 확인해야 합니다.

      • ImageDigestMirrorSet (IDMS)
      • ImageTagMirrorSet (ITMS)
      • CatalogSource
      • ClusterCatalog
      • UpdateService
  • Workspace 및 디렉터리 이름 지정: 새 oc-mirror v2 규칙을 따르어 버전 간에 전환할 때 잠재적인 데이터 불일치를 방지합니다.

    • oc-mirror 플러그인 v1 oc-mirror-workspace 디렉터리가 더 이상 필요하지 않습니다.
    • 충돌을 방지하려면 oc-mirror 플러그인 v2에 새 디렉터리를 사용합니다.
  • ICSP( ImageContentSourcePolicy ) 리소스를 IDMS/ITMS로 교체:

    중요

    모든 ICSP( ImageContentSourcePolicy ) 리소스를 삭제하면 oc-mirror와 관련이 없는 구성이 제거될 수 있습니다.

    의도하지 않은 삭제를 방지하려면 제거하기 전에 oc-mirror에서 생성한 ICSP 리소스를 식별합니다. 확실하지 않은 경우 클러스터 관리자에게 확인하십시오. 자세한 내용은 "oc-mirror 플러그인 v2를 사용하여 연결이 끊긴 설치의 이미지 미러링"을 참조하십시오.

    • oc-mirror 플러그인 v2에서 ICSP 리소스는 ImageDigestMirrorSet (IDMS) 및 ImageTagMirrorSet (ITMS) 리소스로 교체됩니다.

3.6.2. oc-mirror 플러그인 v2로 마이그레이션

oc-mirror 플러그인 v1에서 v2로 마이그레이션하려면 ImageSetConfiguration 파일을 수동으로 업데이트하고 미러링 명령을 수정하고 v1 아티팩트를 정리해야 합니다. 다음 단계에 따라 마이그레이션을 완료합니다.

프로세스

  1. API 버전을 수정하고 ImageSetConfiguration 에서 더 이상 사용되지 않는 필드를 제거합니다.

    oc-mirror 플러그인 v1 구성이 포함된 ImageSetConfiguration 파일의 예

    kind: ImageSetConfiguration
    apiVersion: mirror.openshift.io/v1alpha2
    mirror:
      platform:
        channels:
          - name: stable-4.17
        graph: true
      helm:
        repositories:
          - name: sbo
            url: https://redhat-developer.github.io/service-binding-operator-helm-chart/
      additionalImages:
        - name: registry.redhat.io/ubi8/ubi:latest
        - name: quay.io/openshifttest/hello-openshift@sha256:example_hash
      operators:
        - catalog: oci:///test/redhat-operator-index
          packages:
            - name: aws-load-balancer-operator
    storageConfig:  # REMOVE this field in v2
      local:
        path: /var/lib/oc-mirror
    Copy to Clipboard Toggle word wrap

    oc-mirror 플러그인 v2 구성이 포함된 ImageSetConfiguration 파일의 예

    kind: ImageSetConfiguration
    apiVersion: mirror.openshift.io/v2alpha1
    mirror:
      platform:
        channels:
          - name: stable-4.17
        graph: true
      helm:
        repositories:
          - name: sbo
            url: https://redhat-developer.github.io/service-binding-operator-helm-chart/
      additionalImages:
        - name: registry.redhat.io/ubi8/ubi:latest
        - name: quay.io/openshifttest/hello-openshift@sha256:example_hash
      operators:
        - catalog: oci:///test/redhat-operator-index
          packages:
            - name: aws-load-balancer-operator
    Copy to Clipboard Toggle word wrap

  2. 다음 명령을 실행하여 IDMS, ITMS, CatalogSource, ClusterCatalog 리소스에 대한 작업 디렉터리 내부의 cluster-resources 디렉터리를 확인합니다.

    $ ls <v2_workspace>/working-dir/cluster-resources/
    Copy to Clipboard Toggle word wrap
  3. 마이그레이션이 완료되면 미러링된 이미지 및 카탈로그를 사용할 수 있는지 확인합니다.

    • 미러링 중에 오류 또는 경고가 발생하지 않았는지 확인합니다.
    • 오류 파일이 생성되지 않았는지 확인합니다(working-dir/logs/mirroring_errors_YYYYMMdd_HHmmss.txt).
  4. 다음 명령을 사용하여 미러링된 이미지 및 카탈로그를 사용할 수 있는지 확인합니다.

    $ oc get catalogsource -n openshift-marketplace
    Copy to Clipboard Toggle word wrap
    $ oc get imagedigestmirrorset,imagetagmirrorset -n openshift-config
    Copy to Clipboard Toggle word wrap

    자세한 내용은 "oc-mirror 플러그인 v2를 사용하여 연결이 끊긴 설치의 이미지 미러링"을 참조하십시오.

  5. 선택 사항: oc-mirror 플러그인 v1을 사용하여 미러링된 이미지를 제거합니다.

    1. oc-mirror 플러그인 v1을 사용하여 이미지를 미러링합니다.
    2. ImageSetConfiguration 파일에서v1alpha2 (v1)에서 v2alpha1 (v2)으로 API 버전을 업데이트한 다음 다음 명령을 실행합니다.

      $ oc-mirror -c isc.yaml file://some-dir --v2
      Copy to Clipboard Toggle word wrap
      참고

      StorageConfigImageSetConfigurationDeleteImageSetConfiguration 파일의 유효한 필드가 아닙니다. oc-mirror 플러그인 v2로 업데이트할 때 이 필드를 제거합니다.

    3. 다음 명령을 실행하여 삭제 매니페스트를 생성하고 v1 이미지를 삭제합니다.

      $ oc-mirror delete --config=delete-isc.yaml --generate --delete-v1-images --workspace file://some-dir docker://registry.example:5000  --v2
      Copy to Clipboard Toggle word wrap
      중요

      oc-mirror 플러그인 v2는 oc-mirror 플러그인 v1과 달리 대상 레지스트리를 자동으로 정리하지 않습니다. 더 이상 필요하지 않은 이미지를 정리하려면 --delete-v1-images 명령 플래그와 함께 v2의 삭제 기능을 사용합니다.

      oc-mirror 플러그인 v1로 미러링된 모든 이미지가 제거되면 더 이상 이 플래그를 사용할 필요가 없습니다. oc-mirror 플러그인 v2로 미러링된 이미지를 삭제해야 하는 경우 --delete-v1-images 를 설정하지 마십시오.

      이미지 삭제에 대한 자세한 내용은 "연결이 끊긴 환경에서 이미지 삭제"를 참조하십시오.

    4. 다음 명령을 실행하여 생성된 매니페스트를 기반으로 이미지를 삭제합니다.

      $ oc-mirror delete --delete-yaml-file some-dir/working-dir/delete/delete-images.yaml docker://registry.example:5000 --v2
      Copy to Clipboard Toggle word wrap
맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2025 Red Hat