Skip to main content
本製品の最新リリースがご利用いただけます。
日本語は機械翻訳による参考訳です。内容に矛盾や不一致があった場合には、英語の内容が優先されます。

ボリュームをプロビジョニングする

共同作成者

設定したKubernetes StorageClassを使用してPVへのアクセスを要求するPersistentVolume(PV)とPersistentVolumeClaim(PVC)を作成します。その後、PVをポッドにマウントできます。

概要

A "永続ボリューム_" (PV)は、Kubernetesクラスタ上のクラスタ管理者がプロビジョニングする物理ストレージリソースです。。 "PersistentVolumeClaim_" (PVC)は、クラスタ上のPersistentVolumeへのアクセス要求です。

PVCは、特定のサイズまたはアクセスモードのストレージを要求するように設定できます。クラスタ管理者は、関連付けられているStorageClassを使用して、PersistentVolumeのサイズとアクセスモード(パフォーマンスやサービスレベルなど)以上を制御できます。

PVとPVCを作成したら、ポッドにボリュームをマウントできます。

マニフェストの例

PersistentVolumeサンプルマニフェスト

このサンプルマニフェストは、StorageClassに関連付けられた10Giの基本PVを示しています。 basic-csi

apiVersion: v1
kind: PersistentVolume
metadata:
  name: pv-storage
  labels:
    type: local
spec:
  storageClassName: basic-csi
  capacity:
    storage: 10Gi
  accessModes:
    - ReadWriteOnce
  hostPath:
    path: "/my/host/path"
PersistentVolumeClaimサンプルマニフェスト

次の例は、という名前のStorageClassに関連付けられた、RWOアクセスが設定された基本的なPVCを示しています。 basic-csi

kind: PersistentVolumeClaim
apiVersion: v1
metadata:
  name: pvc-storage
spec:
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 1Gi
  storageClassName: basic-csi
ポッドマニフェストのサンプル
kind: Pod
apiVersion: v1
metadata:
  name: pv-pod
spec:
  volumes:
    - name: pv-storage
      persistentVolumeClaim:
       claimName: basic
  containers:
    - name: pv-container
      image: nginx
      ports:
        - containerPort: 80
          name: "http-server"
      volumeMounts:
        - mountPath: "/my/mount/path"
          name: pv-storage

PVおよびPVCの作成

手順
  1. PVを作成します。

    kubectl create -f pv.yaml
  2. PVステータスを確認します。

    kubectl get pv
    NAME        CAPACITY  ACCESS MODES  RECLAIM POLICY  STATUS    CLAIM  STORAGECLASS  REASON  AGE
    pv-storage  4Gi       RWO           Retain          Available                              7s
  3. PVC を作成します。

    kubectl create -f pvc.yaml
  4. PVCステータスを確認します。

    kubectl get pvc
    NAME        STATUS VOLUME     CAPACITY ACCESS MODES STORAGECLASS AGE
    pvc-storage Bound  pv-name 2Gi      RWO                       5m
  5. ボリュームをポッドにマウントします。

    kubectl create -f pv-pod.yaml
    メモ 進捗状況は次を使用して監視できます。 kubectl get pod --watch
  6. ボリュームがマウントされていることを確認します。 /my/mount/path

    kubectl exec -it task-pv-pod -- df -h /my/mount/path
  7. ポッドを削除できるようになりました。Podアプリケーションは存在しなくなりますが、ボリュームは残ります。

    kubectl delete pod task-pv-pod

を参照してください "Kubernetes オブジェクトと Trident オブジェクト" ストレージクラスとの連携の詳細については、を参照してください。 PersistentVolumeClaim とパラメータを使用して、Astra Tridentでボリュームをプロビジョニングする方法を制御します。