永続ブロック・ボリューム・ストレージの作成
Compute Cloud@Customer Block Volumeサービスは、永続的で耐久性のある高パフォーマンスのブロック・ストレージを提供し、コンテナの外部にデータを格納するために使用できます。
このプロシージャは、リクエストされたoci-bvストレージ・クラスを自動的に作成します。このクラスを作成する必要はありません。この手順は、kubectlコマンドを使用して永続ボリューム要求を作成することから始まります。
-
ストレージ・クラス名
oci-bvを指定して、永続ボリューム要求を作成します。$ kubectl create -f csi-bvs-pvc.yamlcsi-bvs-pvc.yamlファイルの内容は次のとおりです。apiVersion: v1 kind: PersistentVolumeClaim metadata: name: mynginxclaim spec: storageClassName: "oci-bv" accessModes: - ReadWriteOnce resources: requests: storage: 50Gimetadataセクションの永続ボリューム要求名はユーザー指定です。1つの永続ボリュームに複数の永続ボリューム要求を設定できます。accessModesの値には、ReadWriteOnceを指定します。ReadWriteManyは使用しないでください。storageプロパティの値は、50GB以上である必要があります。 -
次のコマンドを実行して、PVCが作成されたことを確認します。
$ kubectl get pvc NAME STATUS VOLUME CAPACITY ACCESSMODES STORAGECLASS AGE mynginxclaim Pending oci-bv 4moci-bvストレージ・クラス定義には次のものが含まれているため、PVCのステータスはPendingです。volumeBindingMode: WaitForFirstConsumer -
ポッドなどの他のオブジェクトを作成するときに、PVCを使用します。
たとえば、この定義から新しいポッドを作成できます。この定義は、
/dataでポッドによってマウントされるmynginxclaimPVCをnginxボリュームとして使用するようにシステムに指示します。apiVersion: v1 kind: Pod metadata: name: nginx spec: containers: - name: nginx image: nginx:latest ports: - name: http containerPort: 80 volumeMounts: - name: data mountPath: /usr/share/nginx/html volumes: - name: data persistentVolumeClaim: claimName: mynginxclaim次のコマンドを実行して、PVCが新しいPVにバインドされていることを確認します。
$ kubectl get pvc NAME STATUS VOLUME CAPACITY ACCESSMODES STORAGECLASS AGE mynginxclaim Bound csi-unique_ID 50Gi RWO oci-bv次のコマンドを実行して、ポッドが新しいPVCを使用していることを確認します:
$ kubectl describe pod nginx