6.19.5. Manila 共有アクセスルールのカスタマイズ
デフォルトでは、OpenShift Container Platform はすべての IPv4 クライアントへのアクセスを提供する Manila ストレージクラスを作成します。クライアントアクセスを制限するには、nfs-ShareClient パラメーターを使用して、特定のクライアント IP アドレスまたはサブネットを使用するカスタムストレージクラスを定義できます。
アクセスルールが制限されたカスタムストレージクラスを使用する場合は、次の点を確認してください。
- 指定された IP アドレスまたはサブネットには、ストレージにアクセスする必要があるすべての OpenShift Container Platform ノードが含まれている。
- RHOSP の Manila サービスは、ストレージクラスで指定された共有タイプをサポートする。
- 許可されたクライアントと Manila 共有サーバーの間にネットワーク接続が存在する。
前提条件
- 適切な Manila 共有インフラストラクチャーを使用して Red Hat OpenStack Platform (RHOSP) がデプロイされた。
- 管理者特権でクラスターにアクセスできる。
手順
次の例に基づいて、カスタムストレージクラスの YAML ファイルを作成します。
カスタムストレージクラスファイルの例
apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: csi-manila-gold-restricted1 provisioner: manila.csi.openstack.org parameters: type: gold2 nfs-ShareClient: "10.0.0.0/24,192.168.1.100"3 csi.storage.k8s.io/provisioner-secret-name: manila-csi-secret csi.storage.k8s.io/provisioner-secret-namespace: openshift-manila-csi-driver csi.storage.k8s.io/controller-expand-secret-name: manila-csi-secret csi.storage.k8s.io/controller-expand-secret-namespace: openshift-manila-csi-driver csi.storage.k8s.io/node-stage-secret-name: manila-csi-secret csi.storage.k8s.io/node-stage-secret-namespace: openshift-manila-csi-driver csi.storage.k8s.io/node-publish-secret-name: manila-csi-secret csi.storage.k8s.io/node-publish-secret-namespace: openshift-manila-csi-driver allowVolumeExpansion: true- 1
- カスタムストレージクラスのわかりやすい名前。
- 2
- Manila 共有タイプ。このタイプは、RHOSP 環境内の既存の共有タイプと一致する必要があります。
- 3
- NFS 共有へのアクセスが許可される IP アドレスまたは CIDR サブネットのコンマ区切りリスト。
nfs-ShareClientパラメーターはさまざまな形式を受け入れます。-
単一の IP アドレス:
192.168.1.100 -
CIDR サブネット:
10.0.0.0/24 複数のエントリー:
10.0.0.0/24,192.168.1.100,172.16.0.0/16永続ボリュームを適切にマウントできるように、指定された IP アドレスまたはサブネットに OpenShift Container Platform クラスターノードが含まれていることを確認します。
この例では、アクセスは
10.0.0.0/24サブネットに制限されており、指定された IP アドレスは192.168.1.100です。
-
単一の IP アドレス:
次のコマンドを実行して、ファイルからストレージクラスを適用します。
$ oc apply -f custom-manila-storageclass.yaml次のコマンドを実行して、ストレージクラスが作成されたことを確認します。
$ oc get storageclass csi-manila-gold-restricted出力例
NAME PROVISIONER RECLAIMPOLICY VOLUMEBINDINGMODE ALLOWVOLUMEEXPANSION AGE csi-manila-gold-restricted manila.csi.openstack.org Delete Immediate true 43m次の例に基づいて、カスタムストレージクラスを使用する永続ボリューム要求 (PVC) を作成します。
PVC ファイルの例
apiVersion: v1 kind: PersistentVolumeClaim metadata: name: pvc-manila-restricted spec: accessModes: - ReadWriteMany resources: requests: storage: 10Gi storageClassName: csi-manila-gold-restricted1 - 1
- アクセスが制限されているカスタムストレージクラスの名前。この例では、
csi-manila-gold-restrictedという名前です。
次のコマンドを実行して、ファイルから PVC を適用します。
$ oc apply -f pvc-manila-restricted.yaml