5.10. Azure Disk CSI Driver Operator
5.10.1. 概述
OpenShift Container Platform 可以使用 Microsoft Azure Disk Storage 的 Container Storage Interface(CSI)驱动程序置备持久性卷(PV)。
在使用 CSI Operator 和驱动程序时,建议先熟悉 持久性存储和配置 CSI 卷。
要创建挂载到 Azure Disk 存储资产中的 CSI 置备 PV,OpenShift Container Platform 在 openshift-cluster-csi-drivers
命名空间中默认安装 Azure Disk CSI Driver Operator 和 Azure Disk CSI 驱动程序。
-
Azure Disk CSI Driver Operator 提供了一个名为
managed-csi
的存储类,您可以使用它来创建持久性卷声明(PVC)。Azure Disk CSI Driver Operator 支持动态卷置备,方法是允许按需创建存储卷,使集群管理员无需预置备存储。 - Azure Disk CSI 驱动程序 允许您创建并挂载 Azure Disk PV。
5.10.2. 关于 CSI
在过去,存储厂商一般会把存储驱动作为 Kubernetes 的一个部分提供。随着容器存储接口 (CSI) 的实现,第三方供应商可以使用标准接口来提供存储插件,而无需更改核心 Kubernetes 代码。
CSI Operators 为 OpenShift Container Platform 用户提供了存储选项,如卷快照,它无法通过 in-tree 卷插件实现。
OpenShift Container Platform 默认使用 in-tree(非 CSI)插件来置备 Azure Disk 存储。
在以后的 OpenShift Container Platform 版本中,计划使用现有树内插件置备的卷迁移到对应的 CSI 驱动程序。CSI 自动迁移应该可以无缝进行。迁移不会改变您使用所有现有 API 对象的方式,如持久性卷、持久性卷声明和存储类。有关迁移的更多信息,请参阅 CSI 自动迁移。
完全迁移后,后续版本的 OpenShift Container Platform 中将最终删除树内插件。
5.10.3. 创建带有存储帐户类型的存储类
存储类用于区分和划分存储级别和使用。通过定义存储类,用户可以获得动态置备的持久性卷。
在创建存储类时,您可以指定存储帐户类型。这与您的 Azure 存储帐户 SKU 层对应。有效选项包括 Standard_LRS
,Premium_LRS
,StandardSSD_LRS
,UltraSSD_LRS
,Premium_ZRS
, 和 StandardSSD_ZRS
。有关查找 Azure SKU 层的详情,请参考 SKU 类型。
ZRS 有一些区域限制。有关这些限制的详情,请参考 ZRS 限制。
先决条件
- 使用管理员权限访问 OpenShift Container Platform 集群
流程
使用以下步骤创建带有存储帐户类型的存储类。
使用类似如下的 YAML 文件创建设计存储帐户类型的存储类:
$ oc create -f - << EOF apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: <storage-class> 1 provisioner: disk.csi.azure.com parameters: skuName: <storage-class-account-type> 2 reclaimPolicy: Delete volumeBindingMode: WaitForFirstConsumer allowVolumeExpansion: true EOF
通过列出存储类来确保创建了存储类:
$ oc get storageclass
输出示例
$ oc get storageclass NAME PROVISIONER RECLAIMPOLICY VOLUMEBINDINGMODE ALLOWVOLUMEEXPANSION AGE azurefile-csi file.csi.azure.com Delete Immediate true 68m managed-csi (default) disk.csi.azure.com Delete WaitForFirstConsumer true 68m sc-prem-zrs disk.csi.azure.com Delete WaitForFirstConsumer true 4m25s 1
- 1
- 带有存储帐户类型的新存储类。