4.13.3. 静态置备 VMware vSphere 卷
要静态置备 VMware vSphere 卷,您必须创建虚拟机磁盘供持久性卷框架引用。
先决条件
- 当存储可以被挂载为 OpenShift Container Platform 中的卷之前,它必须已存在于底层的存储系统中。
流程
创建虚拟机磁盘。在静态置备 VMware vSphere 卷前,必须手动创建虚拟机磁盘 (VMDK)。可使用以下任一方法:
使用
vmkfstools
创建。通过 Secure Shel (SSH) 访问 ESX,然后使用以下命令创建 VMDK 卷:$ vmkfstools -c <size> /vmfs/volumes/<datastore-name>/volumes/<disk-name>.vmdk
使用
vmware-diskmanager
创建:$ shell vmware-vdiskmanager -c -t 0 -s <size> -a lsilogic <disk-name>.vmdk
创建引用 VMDK 的持久性卷。创建包含
PersistentVolume
对象定义的pv1.yaml
文件:apiVersion: v1 kind: PersistentVolume metadata: name: pv1 1 spec: capacity: storage: 1Gi 2 accessModes: - ReadWriteOnce persistentVolumeReclaimPolicy: Retain vsphereVolume: 3 volumePath: "[datastore1] volumes/myDisk" 4 fsType: ext4 5
重要在格式化并置备卷后更改 fsType 参数的值可能会导致数据丢失和 pod 故障。
从文件创建
PersistentVolume
对象:$ oc create -f pv1.yaml
创建一个映射到您在上一步中创建的持久性卷声明。创建包含
PersistentVolumeClaim
对象定义的pvc1.yaml
文件:apiVersion: v1 kind: PersistentVolumeClaim metadata: name: pvc1 1 spec: accessModes: - ReadWriteOnce 2 resources: requests: storage: "1Gi" 3 volumeName: pv1 4
从文件创建
PersistentVolumeClaim
对象:$ oc create -f pvc1.yaml
4.13.3.1. 格式化 VMware vSphere 卷
在 OpenShift Container Platform 挂载卷并将其传递给容器之前,它会检查卷是否包含由 PersistentVolume
(PV)定义中 fsType
参数值指定的文件系统。如果没有使用文件系统格式化设备,该设备中的所有数据都会被清除,设备也会自动格式化为指定的文件系统。
因为 OpenShift Container Platform 在首次使用卷前会进行格式化,所以您可以使用未格式化的 vSphere 卷作为 PV。