OpenShift Container Storage is now OpenShift Data Foundation starting with version 4.9.
扩展存储
横向和纵向扩展选项
摘要
让开源更具包容性 复制链接链接已复制到粘贴板!
红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。我们从这四个术语开始:master、slave、黑名单和白名单。由于此项工作十分艰巨,这些更改将在即将推出的几个发行版本中逐步实施。如需了解更多详细信息,请参阅 CTO Chris Wright 信息。
对红帽文档提供反馈 复制链接链接已复制到粘贴板!
我们感谢您对文档提供反馈信息。请告诉我们如何让它更好。提供反馈:
关于特定内容的简单评论:
- 请确定您使用 Multi-page HTML 格式查看文档。另外,确定 Feedback 按钮出现在文档页的右上方。
- 用鼠标指针高亮显示您想评论的文本部分。
- 点在高亮文本上弹出的 Add Feedback。
- 按照显示的步骤操作。
要提交更复杂的反馈,请创建一个 Bugzilla ticket:
- 进入 Bugzilla 网站。
- 在 Component 部分中,选择 文档。
- 在 Description 中输入您要提供的信息。包括文档相关部分的链接。
- 点 Submit Bug。
前言 复制链接链接已复制到粘贴板!
要将 OpenShift Container Storage 的存储容量扩展为内部模式,您可以执行以下操作之一:
- 扩展存储节点 - 在现有 Red Hat OpenShift Container Storage worker 节点中添加存储容量
- 扩展存储节点 - 添加包含存储容量的新 worker 节点
有关以外部模式扩展存储的信息,请参阅 Red Hat Ceph Storage 文档。
第 1 章 扩展存储节点的要求 复制链接链接已复制到粘贴板!
在继续扩展存储节点前,请参考以下部分以了解特定 Red Hat OpenShift Container Storage 实例的节点要求:
始终确保您有大量的存储容量。
如果存储完全填满,则无法添加容量、删除内容或从存储中迁移内容来释放空间。当存储被完全占用时将很难恢复。
当集群存储容量达到总容量的 75%(接近满)和 85%(满)时,会发出容量警报。始终及时处理容量警告的信息,并定期检查您的存储以确保您不会耗尽存储空间。
如果您完全耗尽存储空间,请联系红帽客户支持。
1.1. Red Hat OpenShift Container Storage 支持的部署 复制链接链接已复制到粘贴板!
用户置备的基础架构:
- Amazon Web Services (AWS)
- VMware
- 裸机
- IBM Power 系统
- IBM Z 或 LinuxONE
安装程序置备的基础架构:
- Amazon Web Services (AWS)
- Microsoft Azure
- Red Hat Virtualization
- VMware
第 2 章 扩展存储容量 复制链接链接已复制到粘贴板!
根据部署的类型,您可以选择以下步骤之一来扩展存储容量。
- 对于 AWS、VMware、Red Hat Virtualization 或 Azure 基础架构,使用动态或自动置备存储设备,请参阅 第 2.2 节 “通过向 OpenShift Container Storage 节点添加容量来扩展存储”
- 有关使用本地存储设备的 VMware 或 Red Hat Virtualization 基础架构,请查看 第 2.3 节 “使用本地存储设备为 OpenShift Container Storage 节点添加容量来扩展存储”
- 有关使用本地存储设备的 IBM Z 或 LinuxONE 基础架构,请参阅 第 2.4 节 “通过向 IBM Z 或 LinuxONE 基础架构的 OpenShift Container Storage 节点添加容量来扩展存储”
- 有关使用本地存储设备的 IBM Power 系统,请查看 第 2.5 节 “通过使用本地存储设备在 IBM Power Systems 基础架构的 OpenShift Container Storage 节点中添加容量来扩展存储”
如果要使用部署期间置备的存储类进行扩展,还必须在扩展前定义额外的存储类。详情请参阅创建存储类。
OpenShift Container Storage 不支持异构 OSD 大小。
2.1. 创建存储类 复制链接链接已复制到粘贴板!
您可以定义一个新的存储类来动态置备现有供应商的存储。
先决条件
- 管理员访问 OpenShift Web 控制台.
步骤
- 登录 OpenShift Web 控制台。
- 点 Storage → Storage Classes。
- 点 Create Storage Class。
- 输入存储类 Name 和 Description。
- 选择所需的 Reclaim Policy 和 Provisioner。
- 点 Create 创建存储类。
验证步骤
- 点 Storage → Storage Classes,验证您可以看到新的存储类。
2.2. 通过向 OpenShift Container Storage 节点添加容量来扩展存储 复制链接链接已复制到粘贴板!
使用以下基础架构上配置的 Red Hat OpenShift Container Storage worker 节点添加存储容量和性能:
- AWS
- VMware vSphere
- Red Hat Virtualization
- Microsoft Azure
先决条件
- 正在运行的 OpenShift 容器平台。
- OpenShift Web 控制台的管理特权。
- 要使用部署期间置备的存储类之外的存储类进行扩展,首先定义一个额外的存储类。详情请参阅创建存储类。
步骤
- 登录 OpenShift Web 控制台。
- 点 Operators → Installed Operators。
- 点 OpenShift Container Storage Operator。
- 单击 Storage Cluster 选项卡。
- 可见列表中应当只有一个项目。点击最右侧的(⋮)来扩展选项菜单。
- 从选项菜单中选择 Add Capacity。
选择 Storage Class。
如果您使用部署期间生成的默认存储类,在 AWS 上将存储类设置为
gp2
,VMware 上为thin
,在 Red Hat Virtualization 上ovirt-csi-sc
,或 Microsoft Azure 上的managed_premium
。如果您已创建了其他存储类,请选择适当的选项。重要将非默认存储类用于您的供应商是一个技术预览功能。
技术预览功能不受红帽产品服务等级协议(SLA)支持,且功能可能并不完整。红帽不推荐在生产环境中使用它们。这些技术预览功能可以使用户提早试用新的功能,并有机会在开发阶段提供反馈意见。
如需更多信息,请参阅技术预览功能支持范围。
Raw Capacity 字段显示在存储类创建过程中设置的大小。所消耗的存储总量是这个大小的三倍,因为 OpenShift Container Storage 使用的副本数为 3。
- 点 Add 并等待集群状态变为 Ready。
验证步骤
导航到 Overview → Block and File 选项卡,然后检查 Raw Capacity 分类 卡。
请注意,容量会根据您的选择而增加。
注意原始容量不考虑复制并显示完整容量。
验证新 OSD 及其对应的新 PVC 是否已创建。
查看新创建的 OSD 的状态:
- 从 OpenShift Web 控制台点 Workloads → Pods。
-
从 Project 下拉列表中选择
openshift-storage
。
查看 PVC 的状态:
- 从 OpenShift Web 控制台点 Storage → Persistent Volume Claims。
-
从 Project 下拉列表中选择
openshift-storage
。
(可选)如果在集群中启用了集群范围的加密,请验证新 OSD 设备是否已加密。
识别运行新 OSD pod 的节点。
oc get -o=custom-columns=NODE:.spec.nodeName pod/<OSD pod name>
$ oc get -o=custom-columns=NODE:.spec.nodeName pod/<OSD pod name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例如:
oc get -o=custom-columns=NODE:.spec.nodeName pod/rook-ceph-osd-0-544db49d7f-qrgqm
oc get -o=custom-columns=NODE:.spec.nodeName pod/rook-ceph-osd-0-544db49d7f-qrgqm
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 对于上一步中确定的每个节点,请执行以下操作:
创建调试 pod,并为所选主机打开 chroot 环境。
oc debug node/<node name> chroot /host
$ oc debug node/<node name> $ chroot /host
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行 "lsblk" 并检查
ocs-deviceset
名旁边的 "crypt" 关键字。lsblk
$ lsblk
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
只有在 红帽支持团队帮助下,才支持集群 缩减。
2.3. 使用本地存储设备为 OpenShift Container Storage 节点添加容量来扩展存储 复制链接链接已复制到粘贴板!
使用这个步骤在以下基础架构上配置的基于 OpenShift Container Storage worker 节点的本地存储中添加存储容量(额外存储设备)。
- 裸机
- VMware
- Red Hat Virtualization
先决条件
- 您必须登录到 OpenShift Container Platform 集群。
您必须已安装了本地存储 operator。使用以下任何适用于您的基础架构的步骤:
-
如果您从以前的版本升级到 OpenShift Container Storage 版本 4.8,且还没有创建
LocalVolumeDiscovery
和LocalVolumeSet
对象,现在请按照 本地存储支持的集群的 Post-update 配置更改 中所述的步骤进行。 - 您必须有三个存储类型和大小相同的 OpenShift Container Platform worker 节点(例如,2TB NVMe 驱动器),与原始 OpenShift Container Storage StorageCluster 创建时相同。
步骤
要添加容量,您可以使用部署期间置备的存储类或与过滤器匹配的其它存储类。
- 在 OpenShift Web 控制台中,点 Operators → Installed Operators。
- 点 OpenShift Container Storage Operator。
- 单击 Storage Cluster 选项卡。
- 可见列表中应当只有一个项目。点击最右侧的(⋮)来扩展选项菜单。
- 从选项菜单中选择 Add Capacity。
- 根据您的要求,选择您添加磁盘或新存储类的存储类。显示的可用容量基于存储类中可用的本地磁盘。
点击 Add。
您可能需要等待几分钟,以便存储集群达到 Ready 状态。
验证步骤
导航到 Overview → Block and File 选项卡,然后检查 Raw Capacity 分类 卡。
请注意,容量会根据您的选择而增加。
注意原始容量不考虑复制并显示完整容量。
验证新 OSD 及其对应的新 PVC 是否已创建。
查看新创建的 OSD 的状态:
- 从 OpenShift Web 控制台点 Workloads → Pods。
-
从 Project 下拉列表中选择
openshift-storage
。
查看 PVC 的状态:
- 从 OpenShift Web 控制台点 Storage → Persistent Volume Claims。
-
从 Project 下拉列表中选择
openshift-storage
。
(可选)如果在集群中启用了集群范围的加密,请验证新 OSD 设备是否已加密。
识别运行新 OSD pod 的节点。
oc get -o=custom-columns=NODE:.spec.nodeName pod/<OSD pod name>
$ oc get -o=custom-columns=NODE:.spec.nodeName pod/<OSD pod name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例如:
oc get -o=custom-columns=NODE:.spec.nodeName pod/rook-ceph-osd-0-544db49d7f-qrgqm
oc get -o=custom-columns=NODE:.spec.nodeName pod/rook-ceph-osd-0-544db49d7f-qrgqm
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 对于上一步中确定的每个节点,请执行以下操作:
创建调试 pod,并为所选主机打开 chroot 环境。
oc debug node/<node name> chroot /host
$ oc debug node/<node name> $ chroot /host
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行 "lsblk" 并检查
ocs-deviceset
名旁边的 "crypt" 关键字。lsblk
$ lsblk
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
只有在 红帽支持团队帮助下,才支持集群 缩减。
使用这个流程为配置的 Red Hat OpenShift Container Storage worker 节点添加存储容量和性能。
先决条件
- 正在运行的 OpenShift 容器平台。
- OpenShift Web 控制台的管理特权。
- 要使用部署期间置备的存储类之外的存储类进行扩展,首先定义一个额外的存储类。详情请参阅创建存储类。
步骤
使用 zFCP 磁盘添加额外硬件资源
使用以下命令列出所有磁盘:
lszdev
$ lszdev
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow SCSI 磁盘以
zfcp-lun
表示,其结构为<device-id>:<wwpn>:<lun-id>
。第一个磁盘用于操作系统。新磁盘的设备 ID 可以相同。使用以下命令附加一个新的 SCSI 磁盘。
chzdev -e 0.0.8204:0x400506630b1b50a4:0x3001301a00000000
$ chzdev -e 0.0.8204:0x400506630b1b50a4:0x3001301a00000000
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意新磁盘的设备 ID 必须与要替换的磁盘相同。新磁盘通过其 WWPN 和 LUN ID 进行标识。
列出所有 FCP 设备以验证新磁盘是否已配置。
lszdev zfcp-lun
$ lszdev zfcp-lun TYPE ID ON PERS NAMES zfcp-lun 0.0.8204:0x102107630b1b5060:0x4001402900000000 yes no sda sg0 zfcp-lun 0.0.8204:0x500507630b1b50a4:0x4001302a00000000 yes yes sdb sg1 zfcp-lun 0.0.8204:0x400506630b1b50a4:0x3001301a00000000 yes yes sdc sg2
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
- 导航到 OpenShift Web 控制台。
- 单击左侧导航栏中的 Operators。
- 选择 Installed Operators。
- 在窗口中点击 OpenShift Container Storage Operator:
- 在顶部导航栏中,滚动右滚动并单击 Storage Cluster 选项卡。
- 点可见列表旁边的(⋮)来扩展选项菜单。
从选项菜单中选择 Add Capacity。
Raw Capacity 字段显示在存储类创建过程中设置的大小。所消耗的存储总量是这个大小的三倍,因为 OpenShift Container Storage 使用的副本数为 3。
- 点 Add 并等待集群状态变为 Ready。
验证步骤
进入到 Overview → Block and File 选项卡,然后检查 Capacity breakdown 卡。
请注意,容量会根据您的选择而增加。
注意原始容量不考虑复制并显示完整容量。
只有在 红帽支持团队帮助下,才支持集群 缩减。
使用这个步骤在 IBM Power Systems 基础架构上配置的基于 OpenShift Container Storage worker 节点的本地存储中添加存储容量(额外存储设备)。
先决条件
- 您必须登录 OpenShift Container Platform (RHOCP) 集群。
您必须已安装了本地存储 operator。请使用以下步骤,请参阅
-
如果您从以前的版本升级到 OpenShift Container Storage 4.8,且还没有创建
LocalVolumeDiscovery
对象,现在请按照 由本地存储支持的集群的 Post-update 配置更改 中所述的步骤进行。 - 您必须有三个 OpenShift Container Platform worker 节点,并附加到每个节点(如 0.5TB SSD),因为使用了原始的 OpenShift Container StorageCluster。
步骤
要在安装了 OpenShift Container Storage 的 OpenShift Container Platform 节点中添加存储容量,您需要
找到您要添加的可用设备,即每个 worker 节点最少一个设备。您可以按照相关部署指南中查找可用存储设备的步骤进行操作。
注意确保您为要为其添加存储的所有现有节点(最小 3 个)执行此流程。
在
LocalVolume
自定义资源(CR)中添加额外的磁盘。oc edit -n openshift-local-storage localvolume localblock
$ oc edit -n openshift-local-storage localvolume localblock
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 确保在编辑 CR 后保存更改。
输出示例:
localvolume.local.storage.openshift.io/localblock edited
localvolume.local.storage.openshift.io/localblock edited
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 您可以在此 CR 中看到新的设备已被添加新设备。
-
sdx
-
显示使用
localVolume
CR 中使用的storageclass
名称新创建的 PV。oc get pv | grep localblock | grep Available
$ oc get pv | grep localblock | grep Available
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例:
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
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
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 导航到 OpenShift Web 控制台。
- 点左侧导航栏上的 Operator。
- 选择 Installed Operators。
- 在窗口中点击 OpenShift Container Storage Operator:
- 在顶部导航栏中,滚动右滚动并单击 Storage Cluster 选项卡。
- 可见列表中应当只有一个项目。点击最右侧的(⋮)来扩展选项菜单。
从选项菜单中选择 Add Capacity。
在此对话框中,将 Storage Class 名称设置为
localVolume
CR 中使用的名称。显示的可用容量基于存储类中可用的本地磁盘。完成设置后,点 Add。
您可能需要等待几分钟,以便存储集群达到 Ready 状态。
验证步骤
导航到 Overview → Block and File 选项卡,然后检查 Raw Capacity 分类 卡。
请注意,容量会根据您的选择而增加。
注意原始容量不考虑复制并显示完整容量。
验证新 OSD 及其对应的新 PVC 是否已创建。
查看新创建的 OSD 的状态:
- 从 OpenShift Web 控制台点 Workloads → Pods。
-
从 Project 下拉列表中选择
openshift-storage
。
查看 PVC 的状态:
- 从 OpenShift Web 控制台点 Storage → Persistent Volume Claims。
-
从 Project 下拉列表中选择
openshift-storage
。
(可选)如果在集群中启用了集群范围的加密,请验证新 OSD 设备是否已加密。
识别运行新 OSD pod 的节点。
oc get -o=custom-columns=NODE:.spec.nodeName pod/<OSD pod name>
$ oc get -o=custom-columns=NODE:.spec.nodeName pod/<OSD pod name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例如:
oc get -o=custom-columns=NODE:.spec.nodeName pod/rook-ceph-osd-0-544db49d7f-qrgqm
oc get -o=custom-columns=NODE:.spec.nodeName pod/rook-ceph-osd-0-544db49d7f-qrgqm
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 对于上一步中确定的每个节点,请执行以下操作:
创建调试 pod,并为所选主机打开 chroot 环境。
oc debug node/<node name> chroot /host
$ oc debug node/<node name> $ chroot /host
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行 "lsblk" 并检查
ocs-deviceset
名旁边的 "crypt" 关键字。lsblk
$ lsblk
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
只有在 红帽支持团队帮助下,才支持集群 缩减。
第 3 章 横向扩展存储容量 复制链接链接已复制到粘贴板!
要扩展存储容量,您需要执行以下步骤:
- 添加新节点
- 验证新节点是否已成功添加
- 扩展存储容量
OpenShift Container Storage 不支持异构 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 (RHOCP) 集群。
步骤
- 导航到 Compute → Machine Sets。
- 在您要添加节点的机器集中,选择 Edit Machine Count。
- 添加节点数量,然后点 Save。
- 点 Compute → Nodes 并确认新节点是否处于 Ready 状态。
将 OpenShift Container Storage 标签应用到新节点。
- 对于新节点,Action menu (⋮) → Edit Labels。
- 添加 cluster.ocs.openshift.io/openshift-storage 并点 Save。
建议您添加 3 个节点,每个节点都位于不同的区中。您必须添加 3 个节点,并对所有节点执行此步骤。
验证步骤
- 要验证是否已添加新节点,请参阅验证添加新节点。
3.1.2. 在用户置备的基础架构中添加节点 复制链接链接已复制到粘贴板!
使用此流程在 AWS 或 VMware 用户置备的基础架构中添加节点。
先决条件
- 您必须登录 OpenShift Container Platform (RHOCP) 集群。
步骤
根据您要在 AWS 用户置备的基础架构或 VMware 用户置备的基础架构中添加节点,请执行以下步骤:
检查与处于
Pending
状态的 OpenShift Container Storage 相关的证书签名请求 (CSR):oc get csr
$ oc get csr
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 为新节点批准所有所需的 OpenShift Container Storage CSR:
oc adm certificate approve <Certificate_Name>
$ oc adm certificate approve <Certificate_Name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 点 Compute → Nodes,确认新节点是否处于 Ready 状态。
使用以下任一方法之一将 OpenShift Container Storage 标签应用到新节点:
- 从用户界面
- 对于新节点,点击 Action Menu(⋮) → Edit Labels
-
添加
cluster.ocs.openshift.io/openshift-storage
并点 Save。
- 使用命令行界面
执行以下命令,将 OpenShift Container Storage 标签应用到新节点:
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 注意建议您添加 3 个节点,每个节点都位于不同的区中。您必须添加 3 个节点,并对所有节点执行此步骤。
验证步骤
- 要验证是否已添加新节点,请参阅验证添加新节点。
3.1.3. 使用本地存储设备添加节点 复制链接链接已复制到粘贴板!
使用此流程在以下系统中添加节点:
- 裸机
- IBM Z 或 LinuxONE
- VMware
- Red Hat Virtualization
先决条件
- 您必须登录 OpenShift Container Platform (RHOCP) 集群。
- 您必须有三个存储类型和大小相同的 OpenShift Container Platform worker 节点(例如,2TB SSD 或 2TB NVMe 驱动器),与原始 OpenShift Container Storage StorageCluster 创建时相同。
-
如果您从以前的版本升级到 OpenShift Container Storage 版本 4.8,且还没有创建
LocalVolumeDiscovery
和LocalVolumeSet
对象,现在请按照 本地存储支持的集群的 Post-update 配置更改 中所述的步骤进行。
步骤
根据您要在裸机、IBM Power Systems、IBM Z 或 LinuxONE、VMware 基础架构或 Red Hat Virtualization 平台上添加节点,请执行以下步骤:
对于 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 Container Storage 相关的证书签名请求 (CSR):oc get csr
$ oc get csr
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 为新节点批准所有所需的 OpenShift Container Storage CSR:
oc adm certificate approve <Certificate_Name>
$ oc adm certificate approve <Certificate_Name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 点 Compute → Nodes,确认新节点是否处于 Ready 状态。
使用以下任一方法之一将 OpenShift Container Storage 标签应用到新节点:
- 从用户界面
- 对于新节点,点击 Action Menu(⋮) → Edit Labels
添加
cluster.ocs.openshift.io/openshift-storage
并点 Save。- 使用命令行界面
执行以下命令,将 OpenShift Container Storage 标签应用到新节点:
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 从 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 (RHOCP) 集群。
- 您必须有三个存储类型和大小相同的 OpenShift Container Platform worker 节点(例如,2TB SSD 驱动器),与原始 OpenShift Container Storage StorageCluster 创建时相同。
-
如果您从以前的 OpenShift Container Storage 版本升级且还没有创建
LocalVolumeDiscovery
对象,按照本地存储支持的集群所述步骤进行操作。
步骤
对于 IBM Power 系统:
- 使用所需基础架构获取新的 IBM Power 机器。请参阅 平台要求。
使用新的 IBM Power Systems 机器创建一个新的 OpenShift Container Platform 节点。
检查与处于
Pending
状态的 OpenShift Container Storage 相关的证书签名请求 (CSR):oc get csr
$ oc get csr
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 为新节点批准所有所需的 OpenShift Container Storage CSR:
oc adm certificate approve <Certificate_Name>
$ oc adm certificate approve <Certificate_Name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 点 Compute → Nodes,确认新节点是否处于 Ready 状态。
使用以下任一方法之一将 OpenShift Container Storage 标签应用到新节点:
- 从用户界面
- 对于新节点,点击 Action Menu(⋮) → Edit Labels
添加
cluster.ocs.openshift.io/openshift-storage
并点 Save。- 使用命令行界面
执行以下命令,将 OpenShift Container Storage 标签应用到新节点:
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 从 OpenShift Web 控制台中点 Operators → Installed Operators。
从 Project 下拉菜单中选择安装 Local Storage Operator 的项目。
- 点 Local Storage。
- 点 Local Volume Discovery 选项卡。
-
点
LocalVolumeDiscovery → Edit Local Volume Discovery
旁边的 Action 菜单 (⋮)。 -
在 YAML 中,将新节点的主机名添加到节点选择器下的
values
字段中。 - 点击 Save。
- 点本地卷选项卡。
-
在
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' ' -f1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 点 Workloads → Pods,确认新节点上的以下 pod 处于 Running 状态 :
-
csi-cephfsplugin-*
-
csi-rbdplugin-*
-
3.2. 为新添加的节点添加容量 复制链接链接已复制到粘贴板!
若要为新添加的节点添加容量,可使用 Add Capacity
选项扩展具有 3 个 OSD 的存储集群,或者使用新的灵活扩展功能,允许您在启用时将存储集群扩展至任意数量的 OSD。
3.2.1. 使用 Add Capacity 选项添加 3 个 OSD 的容量 复制链接链接已复制到粘贴板!
若要在用户界面中使用 Add Capacity 选项为动态和本地存储添加 3 个 OSD 的容量,请参阅通过添加容量来扩展存储。Add Capacity 选项可用于启用了灵活扩展功能的存储集群。
3.2.2. 使用 YAML 添加容量 复制链接链接已复制到粘贴板!
启用灵活扩展后,您可以使用 YAML(而不是默认的 3 OSD)一次添加 1 个或多个 OSD 的容量。但是,您需要确保以集群保持平衡的方式添加磁盘。
仅支持内部附加存储集群创建模式才支持灵活扩展。灵活扩展存储集群仅适用于新的 Red Hat OpenShift Container Storage 4.7,不适用于升级的集群。
要启用灵活的扩展,请创建一个具有 3 个节点且少于 3 个可用区的集群。OpenShift Web 控制台检测到分布在 3 个可用区的 3 个节点,并启用灵活的扩展。
您无法在创建存储集群后启用或禁用灵活的扩展功能。
3.2.2.1. 验证是否启用了灵活的扩展 复制链接链接已复制到粘贴板!
要验证是否在存储集群中启用了灵活的扩展,请执行以下步骤:
- 点 OpenShift Container Storage Operator。
- 点 Storage Cluster 选项卡。
- 点存储集群旁的操作菜单 (⋮)。
- 点 Edit Storage Cluster。您将被重定向到 YAML。
在 YAML 中,在
spec
部分搜索flexibleScaling
键,并在status
部分搜索failureDomain
。如果flexible scaling
为 true,failureDomain
被设置为 host,则启用灵活的扩展功能。spec: flexibleScaling: true […] status: failureDomain: host
spec: flexibleScaling: true […] status: failureDomain: host
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
3.2.2.2. 在 1 个 OSD 的倍数中使用 YAML 添加容量 复制链接链接已复制到粘贴板!
要通过 YAML 灵活地将 OSD 添加到存储集群中,请执行以下步骤:
先决条件
- 管理员访问 OpenShift Container Platform Web 控制台。
- 启用灵活扩展的存储集群。
- 其他可用于添加容量的磁盘。
步骤
- 点 Operators → Installed Operators 查看所有已安装的 Operator。确保选中的项目为 openshift-storage。
- 点 OpenShift Container Storage operator。
- 点 Storage Cluster 选项卡。
- 点击您要扩展的存储集群旁的操作菜单 (⋮)。
- 点 Edit Storage Cluster。您将被重定向到 YAML。
-
在 YAML 中,搜索键
count
。此计数参数可向上扩展容量。 将数量增加到您要添加到集群的 OSD 数量。
重要根据可用磁盘的数量,确保 YAML 中的
count
参数递增,同时确保以集群保持平衡的方式添加磁盘。- 点击 Save。
您可能需要等待一两分钟,存储集群才会到达 Ready 状态。
验证步骤
导航到 Overview → Block and File 选项卡,然后检查 Raw Capacity 分类 卡。
请注意,容量会根据您的选择而增加。
注意原始容量不考虑复制并显示完整容量。
验证新 OSD 及其对应的新 PVC 是否已创建。
查看新创建的 OSD 的状态:
- 从 OpenShift Web 控制台点 Workloads → Pods。
-
从 Project 下拉列表中选择
openshift-storage
。
查看 PVC 的状态:
- 从 OpenShift Web 控制台点 Storage → Persistent Volume Claims。
-
从 Project 下拉列表中选择
openshift-storage
。
(可选)如果在集群中启用了集群范围的加密,请验证新 OSD 设备是否已加密。
识别运行新 OSD pod 的节点。
oc get -o=custom-columns=NODE:.spec.nodeName pod/<OSD pod name>
$ oc get -o=custom-columns=NODE:.spec.nodeName pod/<OSD pod name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例如:
oc get -o=custom-columns=NODE:.spec.nodeName pod/rook-ceph-osd-0-544db49d7f-qrgqm
oc get -o=custom-columns=NODE:.spec.nodeName pod/rook-ceph-osd-0-544db49d7f-qrgqm
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 对于上一步中确定的每个节点,请执行以下操作:
创建调试 pod,并为所选主机打开 chroot 环境。
oc debug node/<node name> chroot /host
$ oc debug node/<node name> $ chroot /host
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行 "lsblk" 并检查
ocs-deviceset
名旁边的 "crypt" 关键字。lsblk
$ lsblk
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
只有在 红帽支持团队帮助下,才支持集群 缩减。