2.5. Azure에서 개인 스토리지 엔드포인트 구성


Image Registry Operator를 활용하면 Azure에서 개인 엔드포인트를 사용할 수 있으며, 이를 통해 OpenShift Container Platform이 개인 Azure 클러스터에 배포될 때 개인 스토리지 계정을 원활하게 구성할 수 있습니다. 이를 통해 공개 스토리지 엔드포인트를 노출하지 않고도 이미지 레지스트리를 배포할 수 있습니다.

중요

Microsoft Azure Red Hat OpenShift(ARO)에서 개인 스토리지 엔드포인트를 구성하지 마세요. 엔드포인트가 Microsoft Azure Red Hat OpenShift 클러스터를 복구할 수 없는 상태로 만들 수 있습니다.

다음 두 가지 방법 중 하나로 Azure에서 개인 스토리지 엔드포인트를 사용하도록 Image Registry Operator를 구성할 수 있습니다.

  • VNet 및 서브넷 이름을 검색하도록 Image Registry Operator를 구성하여
  • 사용자가 제공한 Azure Virtual Network(VNet) 및 서브넷 이름 사용

Azure에서 개인 저장소 엔드포인트를 구성하는 경우 다음과 같은 제한 사항이 적용됩니다.

  • Image Registry Operator를 개인 스토리지 엔드포인트를 사용하도록 구성하는 경우 스토리지 계정에 대한 공용 네트워크 액세스가 비활성화됩니다. 따라서 OpenShift Container Platform 외부의 레지스트리에서 이미지를 가져오려면 레지스트리 운영자 구성에서 disableRedirect: true를 설정해야 합니다. 리디렉션이 활성화되면 레지스트리는 클라이언트를 리디렉션하여 스토리지 계정에서 직접 이미지를 가져오지만, 공용 네트워크 액세스가 비활성화되어 더 이상 작동하지 않습니다. 자세한 내용은 "Azure에서 개인 저장소 엔드포인트를 사용할 때 리디렉션 비활성화"를 참조하세요.
  • 이 작업은 이미지 레지스트리 운영자에 의해 실행 취소될 수 없습니다.

다음 절차에서는 Image Registry Operator가 VNet 및 서브넷 이름을 검색하도록 구성하여 Azure에서 개인 스토리지 엔드포인트를 설정하는 방법을 보여줍니다.

사전 요구 사항

  • Azure에서 실행되도록 이미지 레지스트리를 구성했습니다.
  • 귀하의 네트워크는 Installer Provisioned Infrastructure 설치 방법을 사용하여 설정되었습니다.

    사용자 지정 네트워크 설정을 사용하는 사용자의 경우 "사용자가 제공한 VNet 및 서브넷 이름을 사용하여 Azure에서 개인 스토리지 엔드포인트 구성"을 참조하세요.

프로세스

  1. Image Registry Operator 구성 객체를 편집하고 networkAccess.type을 Internal 로 설정합니다.

    $ oc edit configs.imageregistry/cluster
    # ...
    spec:
      # ...
       storage:
          azure:
            # ...
            networkAccess:
              type: Internal
    # ...
  2. 선택 사항: 운영자가 프로비저닝을 완료했는지 확인하려면 다음 명령을 입력하세요. 이 작업을 수행하는 데 몇 분 정도 걸릴 수 있습니다.

    $ oc get configs.imageregistry/cluster -o=jsonpath="{.spec.storage.azure.privateEndpointName}" -w
  3. 선택 사항: 레지스트리가 경로에 의해 노출되고 스토리지 계정을 비공개로 구성하는 경우, 클러스터 외부로의 풀이 계속 작동하도록 하려면 리디렉션을 비활성화해야 합니다. Image Operator 구성에서 리디렉션을 비활성화하려면 다음 명령을 입력하세요.

    $ oc patch configs.imageregistry cluster --type=merge -p '{"spec":{"disableRedirect": true}}'
    참고

    리디렉션이 활성화되면 클러스터 외부에서 이미지를 가져오는 것이 작동하지 않습니다.

검증

  1. 다음 명령을 실행하여 레지스트리 서비스 이름을 가져옵니다.

    $ oc get imagestream -n openshift

    출력 예

    NAME   IMAGE REPOSITORY                                                 TAGS     UPDATED
    cli    image-registry.openshift-image-registry.svc:5000/openshift/cli   latest   8 hours ago
    ...

  2. 다음 명령을 실행하여 디버그 모드로 들어갑니다.

    $ oc debug node/<node_name>
  3. 제안된 chroot 명령을 실행합니다. 예를 들면 다음과 같습니다.

    $ chroot /host
  4. 컨테이너 레지스트리에 로그인하려면 다음 명령을 입력하세요.

    $ podman login --tls-verify=false -u unused -p $(oc whoami -t) image-registry.openshift-image-registry.svc:5000

    출력 예

    Login Succeeded!

  5. 레지스트리에서 이미지를 가져올 수 있는지 확인하려면 다음 명령을 입력하세요.

    $ podman pull --tls-verify=false image-registry.openshift-image-registry.svc:5000/openshift/tools

    출력 예

    Trying to pull image-registry.openshift-image-registry.svc:5000/openshift/tools/openshift/tools...
    Getting image source signatures
    Copying blob 6b245f040973 done
    Copying config 22667f5368 done
    Writing manifest to image destination
    Storing signatures
    22667f53682a2920948d19c7133ab1c9c3f745805c14125859d20cede07f11f9

Azure에서 공용 네트워크 액세스를 비활성화하고 개인 스토리지 엔드포인트 뒤에 노출되는 스토리지 계정을 구성하려면 다음 절차를 따르세요.

사전 요구 사항

  • Azure에서 실행되도록 이미지 레지스트리를 구성했습니다.
  • Azure 환경에 사용되는 VNet 및 서브넷 이름을 알아야 합니다.
  • 네트워크가 Azure의 별도 리소스 그룹에 구성된 경우 해당 리소스 그룹의 이름도 알아야 합니다.

프로세스

  1. Image Registry Operator 구성 개체를 편집하고 VNet 및 서브넷 이름을 사용하여 개인 엔드포인트를 구성합니다.

    $ oc edit configs.imageregistry/cluster
    # ...
    spec:
      # ...
       storage:
          azure:
            # ...
            networkAccess:
              type: Internal
              internal:
                subnetName: <subnet_name>
                vnetName: <vnet_name>
                networkResourceGroupName: <network_resource_group_name>
    # ...
  2. 선택 사항: 운영자가 프로비저닝을 완료했는지 확인하려면 다음 명령을 입력하세요. 이 작업을 수행하는 데 몇 분 정도 걸릴 수 있습니다.

    $ oc get configs.imageregistry/cluster -o=jsonpath="{.spec.storage.azure.privateEndpointName}" -w
    참고

    리디렉션이 활성화되면 클러스터 외부에서 이미지를 가져오는 것이 작동하지 않습니다.

검증

  1. 다음 명령을 실행하여 레지스트리 서비스 이름을 가져옵니다.

    $ oc get imagestream -n openshift

    출력 예

    NAME   IMAGE REPOSITORY                                                 TAGS     UPDATED
    cli    image-registry.openshift-image-registry.svc:5000/openshift/cli   latest   8 hours ago
    ...

  2. 다음 명령을 실행하여 디버그 모드로 들어갑니다.

    $ oc debug node/<node_name>
  3. 제안된 chroot 명령을 실행합니다. 예를 들면 다음과 같습니다.

    $ chroot /host
  4. 컨테이너 레지스트리에 로그인하려면 다음 명령을 입력하세요.

    $ podman login --tls-verify=false -u unused -p $(oc whoami -t) image-registry.openshift-image-registry.svc:5000

    출력 예

    Login Succeeded!

  5. 레지스트리에서 이미지를 가져올 수 있는지 확인하려면 다음 명령을 입력하세요.

    $ podman pull --tls-verify=false image-registry.openshift-image-registry.svc:5000/openshift/tools

    출력 예

    Trying to pull image-registry.openshift-image-registry.svc:5000/openshift/tools/openshift/tools...
    Getting image source signatures
    Copying blob 6b245f040973 done
    Copying config 22667f5368 done
    Writing manifest to image destination
    Storing signatures
    22667f53682a2920948d19c7133ab1c9c3f745805c14125859d20cede07f11f9

기본적으로 이미지 레지스트리를 사용하면 리디렉션이 활성화됩니다. 리디렉션을 사용하면 레지스트리 포드에서 개체 스토리지로 트래픽을 오프로드할 수 있으므로 풀 속도가 더 빨라집니다. 리디렉션이 활성화되어 있고 스토리지 계정이 비공개인 경우 클러스터 외부의 사용자는 레지스트리에서 이미지를 가져올 수 없습니다.

어떤 경우에는 클러스터 외부의 사용자가 레지스트리에서 이미지를 가져올 수 있도록 리디렉션을 비활성화하려고 할 수 있습니다.

리디렉션을 비활성화하려면 다음 절차를 따르세요.

사전 요구 사항

  • Azure에서 실행되도록 이미지 레지스트리를 구성했습니다.
  • 경로를 구성했습니다.

프로세스

  • 이미지 레지스트리 구성에서 리디렉션을 비활성화하려면 다음 명령을 입력하세요.

    $ oc patch configs.imageregistry cluster --type=merge -p '{"spec":{"disableRedirect": true}}'

검증

  1. 다음 명령을 실행하여 레지스트리 서비스 이름을 가져옵니다.

    $ oc get imagestream -n openshift

    출력 예

    NAME   IMAGE REPOSITORY                                           TAGS     UPDATED
    cli    default-route-openshift-image-registry.<cluster_dns>/cli   latest   8 hours ago
    ...

  2. 컨테이너 레지스트리에 로그인하려면 다음 명령을 입력하세요.

    $ podman login --tls-verify=false -u unused -p $(oc whoami -t) default-route-openshift-image-registry.<cluster_dns>

    출력 예

    Login Succeeded!

  3. 레지스트리에서 이미지를 가져올 수 있는지 확인하려면 다음 명령을 입력하세요.

    $ podman pull --tls-verify=false default-route-openshift-image-registry.<cluster_dns>
    /openshift/tools

    출력 예

    Trying to pull default-route-openshift-image-registry.<cluster_dns>/openshift/tools...
    Getting image source signatures
    Copying blob 6b245f040973 done
    Copying config 22667f5368 done
    Writing manifest to image destination
    Storing signatures
    22667f53682a2920948d19c7133ab1c9c3f745805c14125859d20cede07f11f9

Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

Theme

© 2026 Red Hat
맨 위로 이동