OpenShift Container Storage is now OpenShift Data Foundation starting with version 4.9.
第 3 章 横向扩展存储容量
要扩展存储容量,您需要执行以下步骤:
- 添加新节点。
- 验证新节点是否已成功添加。
- 向上扩展存储容量。
OpenShift Data Foundation 不支持异构 OSD 大小。
3.1. 添加节点 复制链接链接已复制到粘贴板!
您可以在现有工作程序节点已以其最大支持 OSD 运行时添加节点来增加存储容量,即增加初始配置期间所选容量的 3 个 OSD。
根据部署类型,您可以选择以下步骤之一来添加存储节点:
- 对于 AWS、Azure 或 Red Hat Virtualization 安装程序置备的基础架构,请参阅在安装程序置备的基础架构中添加节点。
- 对于 AWS 或 VMware 用户置备的基础架构,请参阅在用户置备的基础架构中添加节点。
- 对于裸机、IBM Z 或 LinuxONE、VMware 或 Red Hat Virtualization 基础架构,请参阅使用本地存储设备添加节点。
- 对于 IBM Power,请参阅在 IBM Power 中使用本地存储设备添加节点。
3.1.1. 在安装程序置备的基础架构中添加节点 复制链接链接已复制到粘贴板!
您可以在以下安装程序置备的基础架构中添加节点:
- AWS
- Azure
- Red Hat Virtualization
- VMware
先决条件
- 您必须登录到 OpenShift Container Platform 集群。
流程
-
导航到 Compute
Machine Sets。 在您要添加节点的机器集中,选择 Edit Machine Count。
- 添加节点数量,然后点 Save。
-
点 Compute
Nodes 并确认新节点是否处于 Ready 状态。
将 OpenShift 数据基础标签应用到新节点。
-
对于新节点,点击 Action 菜单(⋮)
Edit Labels。 - 添加 cluster.ocs.openshift.io/openshift-storage,然后点 Save。
-
对于新节点,点击 Action 菜单(⋮)
建议您添加 3 个节点,每个节点都位于不同的区中。您必须添加 3 个节点,并对所有节点执行此步骤。
验证步骤
- 要验证是否已添加新节点,请参阅验证添加新节点。
3.1.2. 在用户置备的基础架构中添加节点 复制链接链接已复制到粘贴板!
您可以在 AWS 或 VMware 用户置备的基础架构中添加节点。
先决条件
- 您必须登录到 OpenShift Container Platform 集群。
流程
根据您在 AWS 中添加节点还是 VMware 用户置备的基础架构,执行以下步骤:
检查与处于
Pending状态的 OpenShift Data Foundation 相关的证书签名请求 (CSR):oc get csr
$ oc get csrCopy to Clipboard Copied! Toggle word wrap Toggle overflow 批准新节点所需的所有 OpenShift Data Foundation CSR。
oc adm certificate approve <Certificate_Name>
$ oc adm certificate approve <Certificate_Name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow <Certificate_Name>- 是 CSR 的名称。
-
点 Compute
Nodes,确认新节点是否处于 Ready 状态。 使用以下任一方法之一将 OpenShift Data Foundation 标签应用到新节点:
- 从用户界面
-
对于新节点,点击 Action Menu(⋮)
Edit Labels。 -
添加
cluster.ocs.openshift.io/openshift-storage,然后点 Save。
-
对于新节点,点击 Action Menu(⋮)
- 使用命令行界面
将 OpenShift 数据基础标签应用到新节点。
oc label node <new_node_name> cluster.ocs.openshift.io/openshift-storage=""
$ oc label node <new_node_name> cluster.ocs.openshift.io/openshift-storage=""Copy to Clipboard Copied! Toggle word wrap Toggle overflow <new_node_name>- 是新节点的名称。
建议您添加 3 个节点,每个节点都位于不同的区中。您必须添加 3 个节点,并对所有节点执行此步骤。
验证步骤
- 要验证是否已添加新节点,请参阅验证添加新节点。
3.1.3. 使用本地存储设备添加节点 复制链接链接已复制到粘贴板!
您可以在以下内容中添加节点:
- 裸机
- IBM Z 或 LinuxONE
- VMware
- Red Hat Virtualization
先决条件
- 您必须登录到 OpenShift Container Platform 集群。
- 您必须有三个存储类型和大小相同的 OpenShift Container Platform worker 节点(例如,2TB SSD 或 2TB NVMe 驱动器),与原始 OpenShift Data Foundation StorageCluster 创建时相同。
流程
根据基础架构类型,执行以下步骤:
对于 VMware:
- 使用所需基础架构在 vSphere 上创建新虚拟机。请参阅平台要求。
- 使用新虚拟机创建新的 OpenShift Container Platform worker 节点。
Red Hat Virtualization:
- 使用所需基础架构在 Red Hat Virtualization 上创建新虚拟机。请参阅 平台要求。
- 使用新虚拟机创建新的 OpenShift Container Platform worker 节点。
对于裸机:
- 获取具有所需基础架构的新裸机计算机。请参阅 平台要求。
- 使用新的裸机机器创建新的 OpenShift Container Platform 节点。
对于 IBM Z 或 LinuxONE:
- 获取具有所需基础架构的新 IBM Z 或 LinuxONE 机器。请参阅 平台要求。
- 使用新的 IBM Z 或 LinuxONE 机器创建一个新的 OpenShift Container Platform 节点。
检查与处于
Pending状态的 OpenShift Data Foundation 相关的证书签名请求 (CSR):oc get csr
$ oc get csrCopy to Clipboard Copied! Toggle word wrap Toggle overflow 批准新节点所需的所有 OpenShift Data Foundation CSR。
oc adm certificate approve <Certificate_Name>
$ oc adm certificate approve <Certificate_Name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow <Certificate_Name>- 是 CSR 的名称。
-
点 Compute
Nodes,确认新节点是否处于 Ready 状态。 使用以下任一方法之一将 OpenShift Data Foundation 标签应用到新节点:
- 从用户界面
-
对于新节点,点击 Action Menu(⋮)
Edit Labels。 -
添加
cluster.ocs.openshift.io/openshift-storage,然后点 Save。
-
对于新节点,点击 Action Menu(⋮)
- 使用命令行界面
将 OpenShift 数据基础标签应用到新节点。
oc label node <new_node_name> cluster.ocs.openshift.io/openshift-storage=""
$ oc label node <new_node_name> cluster.ocs.openshift.io/openshift-storage=""Copy to Clipboard Copied! Toggle word wrap Toggle overflow <new_node_name>- 是新节点的名称。
从 OpenShift Web 控制台中点 Operators
Installed Operators。 从 Project 下拉菜单中选择安装 Local Storage Operator 的项目。
- 点 Local Storage。
点 Local Volume Discovery 选项卡。
-
在
LocalVolumeDiscovery旁边,点 Action 菜单 (⋮)Edit Local Volume Discovery。 -
在 YAML 中,将新节点的主机名添加到节点选择器下的
values字段中。 - 点击 Save。
-
在
点 Local Volume Sets 选项卡。
-
在
LocalVolumeSet旁边,点 Action 菜单 (⋮)Edit Local Volume Set。 在 YAML 中,将新节点的主机名添加到
节点选择器下的values字段中。图 3.1. 显示添加新主机名的 YAML
- 点击 Save。
-
在
建议您添加 3 个节点,每个节点都位于不同的区中。您必须添加 3 个节点,并对所有节点执行此步骤。
验证步骤
- 要验证是否已添加新节点,请参阅验证添加新节点。
3.1.4. 使用 IBM Power 中的本地存储设备添加节点 复制链接链接已复制到粘贴板!
先决条件
- 您必须登录到 OpenShift Container Platform 集群。
- 您必须有三个存储类型和大小相同的 OpenShift Container Platform worker 节点(例如,2TB SSD 驱动器),与原始 OpenShift Data Foundation StorageCluster 创建时相同。
流程
- 使用所需基础架构获取新的 IBM Power 机器。请参阅平台要求。
使用新的 IBM Power 机器创建新的 OpenShift Container Platform 节点。
检查与处于
Pending状态的 OpenShift Data Foundation 相关的证书签名请求 (CSR):oc get csr
$ oc get csrCopy to Clipboard Copied! Toggle word wrap Toggle overflow 批准新节点所需的所有 OpenShift Data Foundation CSR。
oc adm certificate approve <Certificate_Name>
$ oc adm certificate approve <Certificate_Name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow <Certificate_Name>- 是 CSR 的名称。
-
点 Compute
Nodes,确认新节点是否处于 Ready 状态。 使用以下任一方法之一将 OpenShift Data Foundation 标签应用到新节点:
- 从用户界面
-
对于新节点,点击 Action Menu(⋮)
Edit Labels。 -
添加
cluster.ocs.openshift.io/openshift-storage并点 Save。
-
对于新节点,点击 Action Menu(⋮)
- 使用命令行界面
将 OpenShift 数据基础标签应用到新节点。
oc label node <new_node_name> cluster.ocs.openshift.io/openshift-storage=""
$ oc label node <new_node_name> cluster.ocs.openshift.io/openshift-storage=""Copy to Clipboard Copied! Toggle word wrap Toggle overflow
<new_node_name>- 是新节点的名称。
从 OpenShift Web 控制台中点 Operators
Installed Operators。 从 Project 下拉菜单中选择安装 Local Storage Operator 的项目。
- 点 Local Storage。
点本地卷选项卡。
-
在
LocalVolume旁边,点 Action 菜单 (⋮)Edit Local Volume。 在 YAML 中,将新节点的主机名添加到
节点选择器下的values字段中。图 3.2. 显示添加新主机名的 YAML
- 点击 Save。
-
在
建议您添加 3 个节点,每个节点都位于不同的区中。您必须添加 3 个节点,并对所有节点执行此步骤。
验证步骤
- 要验证是否已添加新节点,请参阅验证添加新节点。
3.1.5. 验证新节点的添加 复制链接链接已复制到粘贴板!
执行以下命令并验证输出中是否存在新节点:
oc get nodes --show-labels | grep cluster.ocs.openshift.io/openshift-storage= |cut -d' ' -f1
$ oc get nodes --show-labels | grep cluster.ocs.openshift.io/openshift-storage= |cut -d' ' -f1Copy to Clipboard Copied! Toggle word wrap Toggle overflow 点 Workloads
Pods,确认新节点上的以下 pod 处于 Running 状态 : -
csi-cephfsplugin-* -
csi-rbdplugin-*
-