3장. 레지스트리 설정 및 구성

3.1. AWS 사용자 프로비저닝 인프라의 레지스트리 설정

3.1.1. 이미지 레지스트리 Operator의 시크릿 설정

configs.imageregistry.operator.openshift.io 및 ConfigMap 리소스 외에도 openshift-image-registry 네임 스페이스 내에 있는 별도의 시크릿 리소스에 의해 설정이 Operator에게 제공됩니다.

image-registry-private-configuration-user 시크릿은 스토리지 액세스 및 관리에 필요한 인증 정보를 제공합니다. 기본 인증 정보가 검색되면 Operator가 사용하는 기본 인증 정보를 덮어씁니다.

Amazon 스토리지 S3의 경우 시크릿에는 다음 두 개의 키가 포함되어야 합니다.

  • REGISTRY_STORAGE_S3_ACCESSKEY
  • REGISTRY_STORAGE_S3_SECRETKEY

프로세스

  • 필수 키가 포함된 OpenShift Container Platform 시크릿을 생성합니다.

    $ oc create secret generic image-registry-private-configuration-user --from-literal=REGISTRY_STORAGE_S3_ACCESSKEY=myaccesskey --from-literal=REGISTRY_STORAGE_S3_SECRETKEY=mysecretkey --namespace openshift-image-registry

3.1.2. 사용자 프로비저닝 인프라로 AWS의 레지스트리 스토리지 설정

설치하는 동안 클라우드 자격 증명만으로도 Amazon S3 버킷을 생성할 수 있으며 Registry Operator가 자동으로 스토리지를 구성합니다.

Registry Operator가 S3 버킷을 생성하고 스토리지를 자동으로 구성할수 없는 경우 다음 프로시저에 따라 S3 버킷을 생성하고 스토리지를 구성할 수 있습니다.

사전 요구 사항

  • AWS에 사용자 프로비저닝된 인프라가 있는 클러스터가 있어야 합니다.
  • Amazon S3 스토리지의 경우 시크릿에는 두 개의 키가 포함되어야 합니다.

    • REGISTRY_STORAGE_S3_ACCESSKEY
    • REGISTRY_STORAGE_S3_SECRETKEY

프로세스

Registry Operator가 S3 버킷을 생성하고 스토리지를 자동으로 구성할 수 없는 경우 다음 프로시저를 사용합니다.

  1. 1일이 지난 완료되지 않은 다중 파트 업로드를 중단하도록 Bucket Lifecycle Policy를 설정합니다.
  2. configs.imageregistry.operator.openshift.io/cluster에 스토리지 설정을 입력합니다.

    $ oc edit configs.imageregistry.operator.openshift.io/cluster

    설정 예

    storage:
      s3:
        bucket: <bucket-name>
        region: <region-name>

주의

AWS에서 레지스트리 이미지를 보안을 위해 S3 버킷에 공용 액세스를 차단합니다.

3.1.3. AWS S3의 이미지 레지스트리 Operator 설정 매개 변수

다음 설정 매개 변수는 AWS S3 레지스트리 스토리지에 사용할 수 있습니다.

이미지 레지스트리 spec.storage.s3 구성 매개변수에는 백엔드 스토리지에 AWS S3 서비스를 사용하도록 레지스트리를 구성하는 정보가 들어 있습니다. 자세한 내용은 S3 스토리지 드라이버 설명서를 참조하십시오.

매개변수설명

bucket

버킷은 레지스트리의 데이터를 저장할 버킷 이름입니다. 이는 선택 사항이며 지정되지 않은 경우 생성됩니다.

region

리전은 버킷이 있는 AWS 리전입니다. 이는 선택 사항이며 설치된 AWS 리전에 따라 설정됩니다.

regionEndpoint

RegionEndpoint는 S3 호환 스토리지 서비스의 엔드 포인트입니다. 이는 지정된 지역에 따라 선택 사항 및 기본값입니다.

virtualHostedStyle

VirtualHostedStyle은 사용자 지정 RegionEndpoint에서 S3 가상 호스팅 스타일 버킷 경로 사용을 활성화합니다. 이는 선택 사항이며 기본값은 false입니다.

이 매개 변수를 설정하여 OpenShift Container Platform을 숨겨진 지역에 배포합니다.

encrypt

encrypt는 레지스트리가 이미지를 암호화된 형식으로 저장할지 여부를 지정합니다. 이는 선택 사항이며 기본값은 false입니다.

keyID

KeyID는 암호화에 사용할 KMS 키 ID입니다. 이는 선택 사항입니다. Encrypt는 true이어야합니다. 그렇지 않으면 이 매개 변수가 무시됩니다.

cloudFront

CloudFront는 Amazon Cloudfront를 레지스트리에 스토리지 미들웨어로 설정합니다. 이는 선택 사항입니다.

trustedCA

trustedCA 에서 참조하는 구성 맵의 네임스페이스는 openshift-config 입니다. 구성 맵의 번들 키는 ca-bundle.crt 입니다. 이는 선택 사항입니다.

참고

regionEndpoint 매개변수 값이 Rados Gateway URL로 구성된 경우 명시적 포트를 지정할 수 없습니다. 예를 들면 다음과 같습니다.

regionEndpoint: http://rook-ceph-rgw-ocs-storagecluster-cephobjectstore.openshift-storage.svc.cluster.local