10.7. 使用 PolicyGenTemplate CR 配置 LVM 存储
您可以使用 GitOps Zero Touch Provisioning (ZTP)为部署的受管集群配置逻辑卷管理器(LVM)存储。
当使用 PTP 事件或带有 HTTP 传输的裸机硬件事件时,您可以使用 LVM Storage 来保留事件订阅。
将 Local Storage Operator 用于在分布式单元中使用本地卷的持久性存储。
先决条件
-
安装 OpenShift CLI(
oc
)。 -
以具有
cluster-admin
特权的用户身份登录。 - 创建一个 Git 存储库,在其中管理自定义站点配置数据。
流程
要为新受管集群配置 LVM Storage,请在
common-ranGen.yaml
文件中的spec.sourceFiles
中添加以下 YAML:- fileName: StorageLVMOSubscriptionNS.yaml policyName: subscription-policies - fileName: StorageLVMOSubscriptionOperGroup.yaml policyName: subscription-policies - fileName: StorageLVMOSubscription.yaml spec: name: lvms-operator channel: stable-4.15 policyName: subscription-policies
注意Storage LVMO 订阅已弃用。在以后的 OpenShift Container Platform 版本中,存储 LVMO 订阅将不可用。反之,您必须使用 Storage LVMS 订阅。
在 OpenShift Container Platform 4.15 中,您可以使用 Storage LVMS 订阅而不是 LVMO 订阅。LVMS 订阅不需要在
common-ranGen.yaml
文件中手动覆盖。将以下 YAML 添加到common-ranGen.yaml
文件中的spec.sourceFiles
中,以使用 Storage LVMS 订阅:- fileName: StorageLVMSubscriptionNS.yaml policyName: subscription-policies - fileName: StorageLVMSubscriptionOperGroup.yaml policyName: subscription-policies - fileName: StorageLVMSubscription.yaml policyName: subscription-policies
将
LVMCluster
CR 添加到特定组或单个站点配置文件中的spec.sourceFiles
中。例如,在group-du-sno-ranGen.yaml
文件中添加以下内容:- fileName: StorageLVMCluster.yaml policyName: "lvms-config" 1 spec: storage: deviceClasses: - name: vg1 thinPoolConfig: name: thin-pool-1 sizePercent: 90 overprovisionRatio: 10
- 1
- 这个示例配置创建一个带有所有可用设备的卷组 (
vg1
),但安装了 OpenShift Container Platform 的磁盘除外。也创建了一个精简池逻辑卷。
- 将任何其他必要的更改和文件与自定义站点存储库合并。
-
提交 Git 中的
PolicyGenTemplate
更改,然后将更改推送到站点配置存储库,以使用 GitOps ZTP 将 LVM 存储部署到新站点。