第 9 章 为 IBM Power OpenShift Data Foundation 集群扩展存储
要在 IBM Power 集群中扩展配置的 Red Hat OpenShift Data Foundation worker 节点的存储容量,您可以一次添加三个磁盘来提高容量。由于 OpenShift Data Foundation 使用副本数 3 来维持高可用性,因此需要三个磁盘。因此,消耗的存储量是可用空间的三倍。
当启用加密或使用两个池的副本时,可用空间可能会有所不同。
9.1. 通过使用本地存储设备为 IBM Power 基础架构上的 OpenShift Data Foundation 节点添加容量来扩展存储
要扩展使用本地存储设备创建的 OpenShift Data Foundation 集群,需要将新磁盘添加到存储节点。建议您在部署 OpenShift Data Foundation 过程中使用的新磁盘不支持异构磁盘/OSD。
您可以将存储容量(额外存储设备)添加到 IBM Power 基础架构上基于 OpenShift Data Foundation worker 节点配置的本地存储中。
灵活扩展功能会在部署时启用,以后无法启用或禁用。
先决条件
- 您必须登录到 OpenShift Container Platform 集群。
您必须已安装本地存储 Operator。使用以下步骤:
- 您必须有三个存储类型和大小相同的 OpenShift Container Platform worker 节点(例如,0.5TB SSD),与原始 OpenShift Data Foundation StorageCluster 创建时相同。
流程
要为 OpenShift Container Platform 节点添加安装 OpenShift Data Foundation 的存储容量,您需要
找到您要添加的可用设备,即每个 worker 节点最少一个设备。您可以按照相关部署指南中查找可用存储设备的步骤进行操作。
注意确保您为要为其添加存储的所有现有节点(最小 3 个)执行此流程。
在
LocalVolume
自定义资源(CR)中添加额外的磁盘。$ oc edit -n openshift-local-storage localvolume localblock
输出示例:
spec: logLevel: Normal managementState: Managed nodeSelector: nodeSelectorTerms: - matchExpressions: - key: kubernetes.io/hostname operator: In values: - worker-0 - worker-1 - worker-2 storageClassDevices: - devicePaths: - /dev/sda - /dev/sdx # newly added device storageClassName: localblock volumeMode: Block
确保在编辑 CR 后保存更改。
输出示例:
localvolume.local.storage.openshift.io/localblock edited
您可以在此 CR 中看到添加新设备。
-
sdx
-
显示新创建的持久性卷 (PV),带有
localVolume
CR 中使用的storageclass
名称。$ oc get pv | grep localblock | grep Available
输出示例:
local-pv-a04ffd8 500Gi RWO Delete Available localblock 24s local-pv-a0ca996b 500Gi RWO Delete Available localblock 23s local-pv-c171754a 500Gi RWO Delete Available localblock 23s
- 导航到 OpenShift Web 控制台。
- 单击左侧导航栏中的 Operators。
- 选择 Installed Operators。
- 在窗口中点 OpenShift Data Foundation Operator。
在顶部导航栏中,向右滚动并单击 Storage System 选项卡。
- 点击可见列表旁的 Action 菜单(⋮) 来扩展选项菜单。
从选项菜单中选择 Add Capacity。
在此对话框中,将 Storage Class 名称设置为
localVolume
CR 中使用的名称。显示的可用容量基于存储类中可用的本地磁盘。- 点 Add。
-
要检查状态,请进入 Storage
Data Foundation,并验证 Status 卡中的 Storage System 有一个绿色勾号。
验证步骤
验证可用的容量。
-
在 OpenShift Web 控制台中,点 Storage
Data Foundation。 -
点 Storage Systems 选项卡,然后点
ocs-storagecluster-storagesystem
。 导航到 Overview
Block and File 选项卡,然后检查 Raw Capacity 卡。 请注意,容量会根据您的选择而增加。
注意原始容量不考虑复制并显示完整容量。
-
在 OpenShift Web 控制台中,点 Storage
验证新 OSD 及其对应的新持久卷声明(PVC)已创建。
查看新创建的 OSD 的状态:
-
从 OpenShift Web 控制台点 Workloads
Pods。 从 Project 下拉列表中选择
openshift-storage
。注意如果禁用 Show default projects 选项,请使用切换按钮列出所有默认项目。
-
从 OpenShift Web 控制台点 Workloads
查看 PVC 的状态:
-
从 OpenShift Web 控制台点 Storage
Persistent Volume Claims。 从 Project 下拉列表中选择
openshift-storage
。注意如果禁用 Show default projects 选项,请使用切换按钮列出所有默认项目。
-
从 OpenShift Web 控制台点 Storage
可选:如果在集群中启用了集群范围的加密,请验证新 OSD 设备是否已加密。
识别运行新 OSD pod 的节点。
$ oc get -n openshift-storage -o=custom-columns=NODE:.spec.nodeName pod/<OSD-pod-name>
<OSD-pod-name>
是 OSD pod 的名称。
例如:
$ oc get -n openshift-storage -o=custom-columns=NODE:.spec.nodeName pod/rook-ceph-osd-0-544db49d7f-qrgqm
输出示例:
NODE compute-1
对于上一步中确定的每个节点,请执行以下操作:
创建调试 pod,并为所选主机打开 chroot 环境。
$ oc debug node/<node-name>
<node-name>
是节点的名称。
$ chroot /host
检查
ocs-deviceset
名称旁边的crypt
关键字。$ lsblk
只有在红帽支持团队帮助下,才支持集群缩减。