3.5. RHOSP で実行されるクラスター上のカスタムストレージを使用したイメージレジストリーの設定
Red Hat OpenStack Platform (RHOSP) にクラスターをインストールした後に、特定のアベイラビリティーゾーンにある Cinder ボリュームをレジストリーストレージとして使用できます。
手順
YAML ファイルを作成して、使用するストレージクラスとアベイラビリティーゾーンを指定します。以下に例を示します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 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>
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 では、選択したアベイラビリティーゾーンが存在するかどうかは確認されません。設定を適用する前に、アベイラビリティーゾーンの名前を確認してください。
コマンドラインから設定を適用します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc apply -f <storage_class_file_name>
$ oc apply -f <storage_class_file_name>
出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow storageclass.storage.k8s.io/custom-csi-storageclass created
storageclass.storage.k8s.io/custom-csi-storageclass created
ストレージクラスと
openshift-image-registry
namespace を使用する永続ボリュームクレーム (PVC) を指定する YAML ファイルを作成します。以下に例を示します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow apiVersion: v1 kind: PersistentVolumeClaim metadata: name: csi-pvc-imageregistry namespace: openshift-image-registry annotations: imageregistry.openshift.io: "true" spec: accessModes: - ReadWriteOnce volumeMode: Filesystem resources: requests: storage: 100Gi storageClassName: <your_custom_storage_class>
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 コマンドラインから設定を適用します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc apply -f <pvc_file_name>
$ oc apply -f <pvc_file_name>
出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow persistentvolumeclaim/csi-pvc-imageregistry created
persistentvolumeclaim/csi-pvc-imageregistry created
イメージレジストリー設定の元の永続ボリューム要求は、新しい要求に置き換えます。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc patch configs.imageregistry.operator.openshift.io/cluster --type 'json' -p='[{"op": "replace", "path": "/spec/storage/pvc/claim", "value": "csi-pvc-imageregistry"}]'
$ oc patch configs.imageregistry.operator.openshift.io/cluster --type 'json' -p='[{"op": "replace", "path": "/spec/storage/pvc/claim", "value": "csi-pvc-imageregistry"}]'
出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow config.imageregistry.operator.openshift.io/cluster patched
config.imageregistry.operator.openshift.io/cluster patched
数分すると、設定が更新されます。
検証
レジストリーが定義したリソースを使用していることを確認するには、以下を実行します。
PVC クレーム値が PVC 定義で指定した名前と同じであることを確認します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get configs.imageregistry.operator.openshift.io/cluster -o yaml
$ oc get configs.imageregistry.operator.openshift.io/cluster -o yaml
出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ... status: ... managementState: Managed pvc: claim: csi-pvc-imageregistry ...
... status: ... managementState: Managed pvc: claim: csi-pvc-imageregistry ...
PVC のステータスが
Bound
であることを確認します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get pvc -n openshift-image-registry csi-pvc-imageregistry
$ oc get pvc -n openshift-image-registry csi-pvc-imageregistry
出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE csi-pvc-imageregistry Bound pvc-72a8f9c9-f462-11e8-b6b6-fa163e18b7b5 100Gi RWO custom-csi-storageclass 11m
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE csi-pvc-imageregistry Bound pvc-72a8f9c9-f462-11e8-b6b6-fa163e18b7b5 100Gi RWO custom-csi-storageclass 11m