永続的High Performance Block Volumeストレージの作成
この手順では、Compute Cloud@Customerに永続ストレージとして高パフォーマンスのブロック・ボリュームを作成します。
高パフォーマンスのブロック・ボリュームが不要な場合は、永続ブロック・ボリューム・ストレージの作成の手順を使用します。
-
oci-bv-high
ストレージ・クラス定義(provisioner: blockvolume.csi.oraclecloud.com
)で指定されたCSIプラグインを使用して、高パフォーマンスのブロック・ボリュームを作成します。$ kubectl create -f csi-bvs-high.yaml
csi-bvs-high.yaml
ファイルの内容は次のとおりです。apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: oci-bv-high provisioner: blockvolume.csi.oraclecloud.com parameters: vpusPerGB: "20" attachment-type: "paravirtualized" volumeBindingMode: WaitForFirstConsumer allowVolumeExpansion: true reclaimPolicy: Delete
-
永続ボリューム要求を作成し、ストレージ・クラス名
oci-bv-high
を指定します。$ kubectl create -f csi-bvs-high-pvc.yaml
csi-bvs-high-pvc.yaml
ファイルの内容は次のとおりです。apiVersion: v1 kind: PersistentVolumeClaim metadata: name: mynginxclaim-high spec: storageClassName: "oci-bv-high" accessModes: - ReadWriteOnce resources: requests: storage: 50Gi
metadata
セクションの永続ボリューム要求名はユーザー指定です。1つの永続ボリュームに対して複数の永続ボリュームを要求できます。accessModes
の値には、ReadWriteOnce
を指定します。ReadWriteMany
は使用しないでください。storage
プロパティの値は50GB以上である必要があります。 -
次のコマンドを実行して、PVCが作成されたことを確認します:
$ kubectl get pvc NAME STATUS VOLUME CAPACITY ACCESSMODES STORAGECLASS AGE mynginxclaim-high Pending oci-bv-high 4m
oci-bv-high
ストレージ・クラス定義に次のものが含まれているため、PVCのステータスは「保留」です。volumeBindingMode: WaitForFirstConsumer
-
ポッドなどの他のオブジェクトを作成する場合は、PVCを使用します。
たとえば、次のポッド定義から新しいポッドを作成できます。このポッド定義は、
/data
でポッドによってマウントされるmynginxclaim-high
PVCをnginx
ボリュームとして使用するようにシステムに指示します。apiVersion: v1 kind: Pod metadata: name: nginx-high 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-high
次のコマンドを実行して、PVCが新しいPVにバインドされていることを確認します。
$ kubectl get pvc NAME STATUS VOLUME CAPACITY ACCESSMODES STORAGECLASS AGE mynginxclaim-high Bound csi-unique_ID 50Gi RWO oci-bv-high
次のコマンドを実行して、ポッドが新しいPVCを使用していることを確認します。
$ kubectl describe pod nginx-high