Red Hat Training

A Red Hat training course is available for OpenShift Container Platform

25.3.2. 静态置备 VMware vSphere 卷

当存储可以被挂载为 OpenShift Container Platform 中的卷之前,它必须已存在于底层的存储系统中。确保为 vSphere 配置 OpenShift Container Platform 后,OpenShift Container Platform 和 vSphere 都需要一个虚拟机文件夹路径、文件系统类型和 PersistentVolume API。

25.3.2.1. 创建 PersistentVolume

  1. 定义 PV 对象定义,如 vsphere-pv.yaml

    apiVersion: v1
    kind: PersistentVolume
    metadata:
      name: pv0001 1
    spec:
      capacity:
        storage: 2Gi 2
      accessModes:
        - ReadWriteOnce
      persistentVolumeReclaimPolicy: Retain
      vsphereVolume: 3
        volumePath: "[datastore1] volumes/myDisk" 4
        fsType: ext4 5
    1
    卷的名称。这必须是如何通过 PV 声明或从 pod 识别它。
    2
    为这个卷分配的存储量。
    3
    使用的卷类型。这个示例使用 vsphereVolume。此标签用于将 vSphere VMDK 卷挂载到 Pod 中。卸载卷时会保留卷内容。卷类型支持 VMFS 和 VSAN 数据存储。
    4
    要使用的现有 VMDK 卷。在卷定义中,数据存储名称必须放在方括号([])中,如下所示。
    5
    要挂载的文件系统类型。例如: ext 4、xfs 或者其它文件系统。
    重要

    在格式化并置备卷后更改 fsType 参数的值可能会导致数据丢失和 pod 失败。

  2. 创建 PV:

    $ oc create -f vsphere-pv.yaml
      persistentvolume "pv0001" created
  3. 确定创建了 PV:

    $ oc get pv
    NAME    LABELS  CAPACITY  ACCESSMODES   STATUS    CLAIM   REASON  AGE
    pv0001  <none>  2Gi       RWO           Available                 2s

现在,您可以使用 PV 声明来请求存储,该声明现在可以使用 PV。

重要

PV 声明仅存在于用户的命名空间中,且只能被同一命名空间中的 pod 引用。尝试从不同命名空间中访问 PV 会导致 pod 失败。