4.11. OCI 형식으로 파일 기반 카탈로그 Operator 이미지 미러링


oc-mirror 플러그인을 사용하여 Docker v2 형식 대신 OCI(Open Container Initiative) 이미지 형식으로 Operator를 미러링할 수 있습니다. OCI 형식의 디스크의 파일 기반 카탈로그에 Operator 이미지를 복사할 수 있습니다. 그런 다음 로컬 OCI 이미지를 대상 미러 레지스트리에 복사할 수 있습니다.

중요

oc-mirror 플러그인을 사용하여 OCI 형식으로 Operator 이미지를 미러링하는 것은 기술 프리뷰 기능 전용입니다. 기술 프리뷰 기능은 Red Hat 프로덕션 서비스 수준 계약(SLA)에서 지원되지 않으며 기능적으로 완전하지 않을 수 있습니다. 따라서 프로덕션 환경에서 사용하는 것은 권장하지 않습니다. 이러한 기능을 사용하면 향후 제품 기능을 조기에 이용할 수 있어 개발 과정에서 고객이 기능을 테스트하고 피드백을 제공할 수 있습니다.

Red Hat 기술 프리뷰 기능의 지원 범위에 대한 자세한 내용은 기술 프리뷰 기능 지원 범위를 참조하십시오.

OCI 기능을 사용하는 경우 대상 미러 레지스트리에서 이미지가 자동으로 정리되지 않습니다.

사전 요구 사항

  • 필요한 컨테이너 이미지를 얻으려면 인터넷에 액세스할 수 있습니다.
  • OpenShift CLI(oc)가 설치되어 있습니다.
  • oc-mirror CLI 플러그인을 설치했습니다.

프로세스

  1. 선택 사항: 필요한 카탈로그 및 이미지를 검색하여 디스크에 저장합니다. 디스크의 OCI 형식의 카탈로그 이미지가 이미 있는 경우 이 단계를 건너뛸 수 있습니다.

    1. 이미지 세트 구성 파일을 생성합니다.

      디스크에 복사하는 이미지 세트 구성 파일의 예

      kind: ImageSetConfiguration
      apiVersion: mirror.openshift.io/v1alpha2
      mirror:
       operators:
       - catalog: registry.redhat.io/redhat/redhat-operator-index:v4.12
         packages:
         - name: aws-load-balancer-operator

      참고

      OCI 기능을 사용하는 경우 mirror.operators.catalog 설정만 사용할 수 있습니다.

      storageConfig 설정은 oc mirror 명령으로 전달되는 위치를 대신해서 무시됩니다.

    2. oc mirror 명령을 실행하여 지정된 이미지 세트 구성의 이미지를 디스크로 미러링합니다.

      $ oc mirror --config=./imageset-config.yaml \ 1
        --use-oci-feature \                         2
        --oci-feature-action=copy \                 3
        oci://my-oci-catalog                        4
      1
      이미지 세트 구성 파일을 전달합니다. 이 절차에서는 imageset-config.yaml 이라는 이름을 가정합니다.
      2
      OCI 기능을 활성화하려면 --use-oci-feature 플래그를 사용합니다.
      3
      카탈로그를 디스크에 복사하려면 --oci-feature-action 플래그를 복사 하도록 설정합니다.
      4
      카탈로그를 출력할 디스크의 디렉터리를 지정합니다. 이 절차에서는 이름이 my-oci-catalog 인 것으로 가정합니다. 경로는 oci:// 로 시작해야 합니다. 지정된 디렉터리가 전체 경로가 아닌 경우 oc mirror 명령이 실행되는 현재 작업 디렉터리에 디렉터리가 생성됩니다.
      참고

      선택적으로 --oci-registries-config 플래그를 사용하여 TOML 형식의 registries.conf 파일의 경로를 지정할 수 있습니다. 이미지 세트 구성 파일을 변경하지 않고도 테스트를 위한 사전 프로덕션 위치와 같은 다른 레지스트리에서 미러링할 수 있습니다.

      registries.conf 파일 예

      [[registry]]
       location = "registry.redhat.io:5000"
       insecure = false
       blocked = false
       mirror-by-digest-only = true
       prefix = ""
       [[registry.mirror]]
          location = "preprod-registry.example.com"
          insecure = false

      registry.mirror 섹션의 위치 필드를 이미지를 가져올 대체 레지스트리 위치로 설정합니다. registry 섹션의 location 필드는 이미지 세트 구성 파일에서 지정한 레지스트리 위치와 동일해야 합니다.

    3. 디렉터리 콘텐츠를 나열하고 다음 디렉터리가 생성되었는지 확인합니다.

      $ ls -l

      출력 예

      my-oci-catalog      1
      oc-mirror-workspace 2
      olm_artifacts       3

      1
      OCI 카탈로그가 포함된 디렉터리입니다. 이 절차에서는 이름이 my-oci-catalog 인 것으로 가정합니다.
      2
      카탈로그의 각 이미지가 원본 형식으로 포함된 디렉터리입니다.
      3
      이 카탈로그에서 참조하는 Operator 번들을 설명하는 파일이 포함된 디렉터리입니다.
  2. 이미지 세트 구성 파일을 업데이트하여 대상 미러 레지스트리에 미러링할 디스크의 카탈로그 위치를 지정합니다.

    미러 레지스트리로 미러링을 위한 이미지 세트 구성 파일의 예

    kind: ImageSetConfiguration
    apiVersion: mirror.openshift.io/v1alpha2
    mirror:
     operators:
     - catalog: oci:///home/user/oc-mirror/my-oci-catalog/redhat-operator-index 1
       packages:
       - name: aws-load-balancer-operator

    1
    디스크의 OCI 카탈로그 위치에 대한 절대 경로를 지정합니다. 이 절차에서는 my-oci-catalog 를 디렉터리로 사용하고 redhat-operator-index 카탈로그를 미러링한 것으로 가정합니다. 경로는 oci:// 로 시작해야 합니다.
  3. oc mirror 명령을 실행하여 디스크에서 이미지 세트 파일을 처리하고 콘텐츠를 대상 미러 레지스트리에 미러링합니다.

    $ oc mirror --config=./imageset-config.yaml \ 1
      --use-oci-feature \                         2
      --oci-feature-action=mirror \               3
      docker://registry.example:5000              4
    1
    업데이트된 이미지 세트 구성 파일을 전달합니다. 이 절차에서는 imageset-config.yaml 이라는 이름을 가정합니다.
    2
    OCI 기능을 활성화하려면 --use-oci-feature 플래그를 사용합니다.
    3
    카탈로그를 대상 미러 레지스트리에 미러링하려면 --oci-feature-action 플래그를 미러 로 설정합니다.
    4
    이미지 세트 파일을 미러링할 레지스트리를 지정합니다. 레지스트리는 docker:// 로 시작해야 합니다. 미러 레지스트리에 최상위 네임스페이스를 지정하는 경우 후속 실행 시 동일한 네임스페이스를 사용해야 합니다.
    참고

    선택적으로 --oci-insecure-signature-policy 플래그를 사용하여 서명을 대상 미러 레지스트리로 내보내지 않습니다.

다음 단계

  • oc-mirror에서 생성한 리소스를 사용하도록 클러스터를 구성합니다.

추가 리소스

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.