This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.3.4. Azure File を使用した永続ストレージ
OpenShift Container Platform では、Microsoft Azure File ボリュームがサポートされます。Azure を使用して、OpenShift Container Platform クラスターに永続ストレージをプロビジョニングできます。これには、Kubernetes と Azure についてのある程度の理解があることが前提となります。
Kubernetes 永続ボリュームフレームワークは、管理者がクラスターのプロビジョニングを永続ストレージを使用して実行できるようにし、ユーザーが基礎となるインフラストラクチャーの知識がなくてもこれらのリソースを要求できるようにします。Azure File ボリュームは動的にプロビジョニングできます。
永続ボリュームは単一のプロジェクトまたは namespace にバインドされず、それらは OpenShift Container Platform クラスター間で共有できます。PersistentVolumeClaim (永続ボリューム要求、PVC) はプロジェクトまたは namespace に固有のもので、アプリケーションで使用できるようにユーザーによって要求されます。
インフラストラクチャーにおけるストレージの高可用性は、基礎となるストレージのプロバイダーに委ねられています。
追加の参考資料
3.4.1. Azure File 共有 PersistentVolumeClaim の作成
PersistentVolumeClaim を作成するには、最初に Azure アカウントおよびキーを含むシークレットを定義する必要があります。このシークレットは PersistentVolume 定義に使用され、アプリケーションで使用できるように PersistentVolumeClaim によって参照されます。
前提条件
- Azure File 共有があること。
- この共有にアクセスするための認証情報 (とくにストレージアカウントおよびキー) が利用可能であること。
手順
Azure File の認証情報が含まれるシークレットを作成します。
oc create secret generic <secret-name> --from-literal=azurestorageaccountname=<storage-account> \ --from-literal=azurestorageaccountkey=<storage-account-key>
$ oc create secret generic <secret-name> --from-literal=azurestorageaccountname=<storage-account> \
1 --from-literal=azurestorageaccountkey=<storage-account-key>
2 Copy to Clipboard Copied! 作成したシークレットを参照する PersistentVolume を作成します。
apiVersion: "v1" kind: "PersistentVolume" metadata: name: "pv0001" spec: capacity: storage: "5Gi" accessModes: - "ReadWriteOnce" storageClassName: azure-file-sc azureFile: secretName: <secret-name> shareName: share-1 readOnly: false
apiVersion: "v1" kind: "PersistentVolume" metadata: name: "pv0001"
1 spec: capacity: storage: "5Gi"
2 accessModes: - "ReadWriteOnce" storageClassName: azure-file-sc azureFile: secretName: <secret-name>
3 shareName: share-1
4 readOnly: false
Copy to Clipboard Copied! 作成した PersistentVolume にマップする PersistentVolumeClaim を作成します。
apiVersion: "v1" kind: "PersistentVolumeClaim" metadata: name: "claim1" spec: accessModes: - "ReadWriteOnce" resources: requests: storage: "5Gi" storageClassName: azure-file-sc volumeName: "pv0001"
apiVersion: "v1" kind: "PersistentVolumeClaim" metadata: name: "claim1"
1 spec: accessModes: - "ReadWriteOnce" resources: requests: storage: "5Gi"
2 storageClassName: azure-file-sc
3 volumeName: "pv0001"
4 Copy to Clipboard Copied!
3.4.2. Azure File 共有の Pod へのマウント
PersistentVolumeClaim の作成後に、これをアプリケーション内で使用できます。以下の例は、この共有を Pod 内にマウントする方法を示しています。
前提条件
- 基礎となる Azure File 共有にマップされる PersistentVolumeClaim があること。
手順
既存の PersistentVolumeClaim をマウントする Pod を作成します。
apiVersion: v1 kind: Pod metadata: name: pod-name spec: containers: ... volumeMounts: - mountPath: "/data" name: azure-file-share volumes: - name: azure-file-share persistentVolumeClaim: claimName: claim1
apiVersion: v1 kind: Pod metadata: name: pod-name
1 spec: containers: ... volumeMounts: - mountPath: "/data"
2 name: azure-file-share volumes: - name: azure-file-share persistentVolumeClaim: claimName: claim1
3 Copy to Clipboard Copied!