3.5. 块卷支持
OpenShift Dedicated 可以静态置备原始块卷。这些卷没有文件系统。对于可以直接写入磁盘或者实现其自己的存储服务的应用程序来说,使用它可以获得性能优势。
原始块卷可以通过在 PV 和 PVC 规格中指定 volumeMode: Block
来置备。
使用原始块卷的 pod 需要配置为允许特权容器。
下表显示了哪些卷插件支持块卷。
卷插件 | 手动置备 | 动态置备 | 完全支持 |
---|---|---|---|
Amazon Elastic Block Store (Amazon EBS) | ✅ | ✅ | ✅ |
Amazon Elastic File Storage (Amazon EFS) | |||
GCP | ✅ | ✅ | ✅ |
LVM 存储 | ✅ | ✅ | ✅ |
3.5.1. 块卷示例
PV 示例
apiVersion: v1
kind: PersistentVolume
metadata:
name: block-pv
spec:
capacity:
storage: 10Gi
accessModes:
- ReadWriteOnce
volumeMode: Block 1
persistentVolumeReclaimPolicy: Retain
fc:
targetWWNs: ["50060e801049cfd1"]
lun: 0
readOnly: false
- 1
- 需要把
volumeMode
设置为Block
来代表这个 PV 是一个原始块卷。
PVC 示例
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: block-pvc
spec:
accessModes:
- ReadWriteOnce
volumeMode: Block 1
resources:
requests:
storage: 10Gi
- 1
- 需要把
volumeMode
设置为Block
来代表请求一个原始块 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: 1 - name: data devicePath: /dev/xvda 2 volumes: - name: data persistentVolumeClaim: claimName: block-pvc 3
值 | 默认 |
---|---|
Filesystem | 是 |
Block | 否 |
PV volumeMode | PVC volumeMode | 绑定结果 |
---|---|---|
Filesystem | Filesystem | 绑定 |
Unspecified | Unspecified | 绑定 |
Filesystem | Unspecified | 绑定 |
Unspecified | Filesystem | 绑定 |
Block | Block | 绑定 |
Unspecified | Block | 无绑定 |
Block | Unspecified | 无绑定 |
Filesystem | Block | 无绑定 |
Block | Filesystem | 无绑定 |
未指定值时将使用默认值 Filesystem
。