3.5. RHOSP의 레지스트리 설정

3.5.1. RHOSP에서 실행되는 클러스터에서 사용자 지정 스토리지를 사용하여 이미지 레지스트리 구성

RHOSP(Red Hat OpenStack Platform)에 클러스터를 설치한 후 레지스트리 스토리지의 특정 가용성 영역에 있는 Cinder 볼륨을 사용할 수 있습니다.

절차

  1. 사용할 스토리지 클래스 및 가용성 영역을 지정하는 YAML 파일을 생성합니다. 예를 들면 다음과 같습니다.

    apiVersion: storage.k8s.io/v1
    kind: StorageClass
    metadata:
      name: custom-csi-storageclass
    provisioner: cinder.csi.openstack.org
    volumeBindingMode: WaitForFirstConsumer
    allowVolumeExpansion: true
    parameters:
      availability: <availability_zone_name>
    참고

    OpenShift Container Platform에서는 선택한 가용성 영역이 있는지 확인하지 않습니다. 구성을 적용하기 전에 가용성 영역의 이름을 확인합니다.

  2. 명령줄에서 구성을 적용합니다.

    $ oc apply -f <storage_class_file_name>

    출력 예

    storageclass.storage.k8s.io/custom-csi-storageclass created

  3. 스토리지 클래스 및 openshift-image-registry 네임스페이스를 사용하는 PVC(영구 볼륨 클레임)를 지정하는 YAML 파일을 생성합니다. 예를 들면 다음과 같습니다.

    apiVersion: v1
    kind: PersistentVolumeClaim
    metadata:
      name: csi-pvc-imageregistry
      namespace: openshift-image-registry 1
      annotations:
        imageregistry.openshift.io: "true"
    spec:
      accessModes:
      - ReadWriteOnce
      volumeMode: Filesystem
      resources:
        requests:
          storage: 100Gi 2
      storageClassName: <your_custom_storage_class> 3
    1
    네임스페이스 openshift-image-registry 를 입력합니다. 이 네임스페이스를 사용하면 Cluster Image Registry Operator에서 PVC를 사용할 수 있습니다.
    2
    선택사항: 볼륨 크기를 조정합니다.
    3
    생성한 스토리지 클래스의 이름을 입력합니다.
  4. 명령줄에서 구성을 적용합니다.

    $ oc apply -f <pvc_file_name>

    출력 예

    persistentvolumeclaim/csi-pvc-imageregistry created

  5. 이미지 레지스트리 구성의 원래 영구 볼륨 클레임을 새 클레임으로 교체합니다.

    $ oc patch configs.imageregistry.operator.openshift.io/cluster --type 'json' -p='[{"op": "replace", "path": "/spec/storage/pvc/claim", "value": "csi-pvc-imageregistry"}]'

    출력 예

    config.imageregistry.operator.openshift.io/cluster patched

    다음 몇 분 동안 구성이 업데이트됩니다.

검증

레지스트리에서 사용자가 정의한 리소스를 사용하고 있는지 확인하려면 다음을 수행하십시오.

  1. PVC 클레임 값이 PVC 정의에서 제공한 이름과 동일한지 확인합니다.

    $ oc get configs.imageregistry.operator.openshift.io/cluster -o yaml

    출력 예

    ...
    status:
        ...
        managementState: Managed
        pvc:
          claim: csi-pvc-imageregistry
    ...

  2. PVC의 상태가 Bound 인지 확인합니다.

    $ oc get pvc -n openshift-image-registry csi-pvc-imageregistry

    출력 예

    NAME                   STATUS   VOLUME                                     CAPACITY   ACCESS MODES   STORAGECLASS             AGE
    csi-pvc-imageregistry  Bound    pvc-72a8f9c9-f462-11e8-b6b6-fa163e18b7b5   100Gi      RWO            custom-csi-storageclass  11m