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.2.5. ブロックボリュームのサポート
OpenShift Container Platform は、raw ブロックボリュームを静的にプロビジョニングできます。これらのボリュームにはファイルシステムがなく、ディスクに直接書き込むアプリケーションや、独自のストレージサービスを実装するアプリケーションにはパフォーマンス上の利点があります。
raw ブロックボリュームは、PV および PVC 仕様で volumeMode: Block
を指定してプロビジョニングされます。
raw ブロックボリュームを使用する Pod は、特権付きコンテナーを許可するように設定する必要があります。
以下の表は、ブロックボリュームをサポートするボリュームプラグインを表示しています。
ボリュームプラグイン | 手動のプロビジョニング | 動的なプロビジョニング | 完全対応 |
---|---|---|---|
AWS EBS | ✅ | ✅ | ✅ |
Azure Disk | ✅ | ✅ | ✅ |
Azure File | |||
Cinder | ✅ | ✅ | |
ファイバーチャネル | ✅ | ||
GCP | ✅ | ✅ | ✅ |
HostPath | |||
iSCSI | ✅ | ✅ | |
ローカルボリューム | ✅ | ✅ | |
NFS | |||
Red Hat OpenShift Container Storage | ✅ | ✅ | ✅ |
VMware vSphere | ✅ | ✅ | ✅ |
手動でプロビジョニングできるものの、完全にサポートされていないブロックボリュームはいずれも、テクノロジープレビューとしてのみ提供されます。テクノロジープレビュー機能は、Red Hat 製品のサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではないことがあります。Red Hat は実稼働環境でこれらを使用することを推奨していません。テクノロジープレビューの機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行いフィードバックを提供していただくことを目的としています。Red Hat のテクノロジープレビュー機能のサポート範囲についての詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。
2.5.1. ブロックボリュームの例
PV の例
apiVersion: v1 kind: PersistentVolume metadata: name: block-pv spec: capacity: storage: 10Gi accessModes: - ReadWriteOnce volumeMode: Block persistentVolumeReclaimPolicy: Retain fc: targetWWNs: ["50060e801049cfd1"] lun: 0 readOnly: false
apiVersion: v1
kind: PersistentVolume
metadata:
name: block-pv
spec:
capacity:
storage: 10Gi
accessModes:
- ReadWriteOnce
volumeMode: Block
persistentVolumeReclaimPolicy: Retain
fc:
targetWWNs: ["50060e801049cfd1"]
lun: 0
readOnly: false
- 1
volumeMode
をBlock
に設定して、この PV が raw ブロックボリュームであることを示します。
PVC の例
apiVersion: v1 kind: PersistentVolumeClaim metadata: name: block-pvc spec: accessModes: - ReadWriteOnce volumeMode: Block resources: requests: storage: 10Gi
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: block-pvc
spec:
accessModes:
- ReadWriteOnce
volumeMode: Block
resources:
requests:
storage: 10Gi
- 1
volumeMode
をBlock
に設定して、raw ブロック PVC が要求されていることを示します。
Pod
仕様の例
apiVersion: v1 kind: Pod metadata: name: pod-with-block-volume spec: containers: - name: fc-container image: fedora:26 command: ["/bin/sh", "-c"] args: [ "tail -f /dev/null" ] volumeDevices: - name: data devicePath: /dev/xvda volumes: - name: data persistentVolumeClaim: claimName: block-pvc
apiVersion: v1
kind: Pod
metadata:
name: pod-with-block-volume
spec:
containers:
- name: fc-container
image: fedora:26
command: ["/bin/sh", "-c"]
args: [ "tail -f /dev/null" ]
volumeDevices:
- name: data
devicePath: /dev/xvda
volumes:
- name: data
persistentVolumeClaim:
claimName: block-pvc
値 | デフォルト |
---|---|
Filesystem | Yes |
Block | No |
PV volumeMode | PVC volumeMode | バインディングの結果 |
---|---|---|
Filesystem | Filesystem | バインド |
Unspecified | Unspecified | バインド |
Filesystem | Unspecified | バインド |
Unspecified | Filesystem | バインド |
Block | Block | バインド |
Unspecified | Block | バインドなし |
Block | Unspecified | バインドなし |
Filesystem | Block | バインドなし |
Block | Filesystem | バインドなし |
値を指定しないと、Filesystem
のデフォルト値が指定されます。