4.4. 安装后存储配置
以下存储配置任务是必需的:
- 如果您的存储供应商没有被 CDI 识别,您必须配置存储配置集。存储配置集根据关联的存储类提供推荐的存储设置。
可选: 您可以使用 hostpath 置备程序(HPP)配置本地存储。
如需了解更多选项,请参阅 存储配置概述,包括配置 Containerized Data Importer (CDI)、数据卷和自动引导源更新。
4.4.1. 使用 HPP 配置本地存储
安装 OpenShift Virtualization Operator 时,会自动安装 Hostpath Provisioner(HPP)Operator。HPP Operator 创建 HPP 置备程序。
HPP 是为 OpenShift Virtualization 设计的本地存储置备程序。要使用 HPP,您必须创建一个 HPP 自定义资源(CR)。
HPP 存储池不能与操作系统位于同一个分区。否则,存储池可能会填满操作系统分区。如果操作系统分区已满,则性能可能会生效,或者节点可能会不稳定或不可用。
4.4.1.1. 使用 storagePools 小节为 CSI 驱动程序创建存储类
要使用 hostpath 置备程序 (HPP),您必须为 Container Storage Interface (CSI) 驱动程序创建关联的存储类。
当您创建存储类时,您将设置参数,它们会影响属于该存储类的持久性卷(PV)的动态置备。您不能在创建 StorageClass
对象后更新其参数。
虚拟机使用基于本地 PV 的数据卷。本地 PV 与特定节点绑定。虽然磁盘镜像准备供虚拟机消耗,但可能不会将虚拟机调度到之前固定本地存储 PV 的节点。
要解决这个问题,使用 Kubernetes pod 调度程序将持久性卷声明(PVC)绑定到正确的节点上的 PV。通过使用 volumeBindingMode
参数设置为 WaitForFirstConsumer
的 StorageClass
值,PV 的绑定和置备会延迟到 pod 使用 PVC。
先决条件
-
以具有
cluster-admin
特权的用户身份登录。
流程
创建
storageclass_csi.yaml
文件来定义存储类:apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: hostpath-csi provisioner: kubevirt.io.hostpath-provisioner reclaimPolicy: Delete 1 volumeBindingMode: WaitForFirstConsumer 2 parameters: storagePool: my-storage-pool 3
- 保存文件并退出。
运行以下命令来创建
StorageClass
对象:$ oc create -f storageclass_csi.yaml