ここでは、PersistentVolumeの作成方法を説明します。 コンテナ用永続ストレージを利用するためには、PersistentVolumeClaimの要求を満たすPersistentVolumeを事前に作成しておく必要があります。
$ kubectl get pv NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE pv01 1Gi RWO Recycle Available slow 5s
STATUSフィールドの値で、使用状況を確認することができます。
例:pv.yml
apiVersion: v1 kind: PersistentVolume metadata: name: pv02 spec: capacity: storage: 1Gi volumeMode: Filesystem accessModes: - ReadWriteOnce persistentVolumeReclaimPolicy: Recycle mountOptions: - hard - nfsvers=4 nfs: path: /var/FJSGHD/volumes/kubernetes_container_data_00 server: <NFSサーバーのIPアドレス>
設定項目 | 説明 |
---|---|
metadata.name | PersistentVolumeの名前を指定します。 他のPersistentVolumeと重複しないようにしてください。 |
spec.capacity.storage |
PersistentVolumeとして確保したストレージ容量を指定します。 注意 NFSサーバー上で使用されるストレージ容量が制限されたり、 予約されるわけではありません。 ストレージ容量の管理は、利用者側で行ってください。 |
spec.volumeMode | Filesystemを指定してください。 |
spec.accessModes |
アクセスモードを指定します。アクセスモードは、PersistentVolumeに対してどのようなアクセスが可能であるかを表します。 指定可能なアクセスモードを以下に示します。
注意 実際のアクセス制限は、NFSサーバー側で行う必要があります。 |
spec.persistentVolumeReclaimPolicy |
PersistentVolumeの再利用に関するポリシーです。 Podが永続ストレージの利用を終えて、 PersistentVolumeにバインドされたPersistentVolumeClaimが削除されたときに、 何が起こるかが決まります。指定可能な値を以下に示します。
|
spec.mountOptions |
NFSサーバーのストレージをマウントする際のオプションです。 |
spec.nfs.path | 共有ディレクトリの絶対パスを指定します。 |
spec.nfs.server | NFSサーバーのIPアドレスを指定してください。 |
$ kubectl apply -f pv.yml persistentvolume "pv02" created
$ kubectl get pv NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE pv01 1Gi RWO Recycle Available slow 5s pv02 1Gi RWO Recycle Available slow 5s