第 3 章 功能增强

本节论述了 Red Hat OpenShift Container Storage 4.7 中引入了的主要改进。

更好地指明了成功升级 OpenShift Container Storage

在以前的版本中,很难确定 OpenShift Container Storage 升级是否已成功完成。在某些情况下,控制台会报告所有内容非常正常,虽然有些组件还没有升级到其新的容器镜像。在这个版本中,StorageCluster 会检查并报告其所有受管组件正在运行的容器,这有助于排除升级场景

OSD Pod Disruption Budgets 被重新设计

在以前的版本中,OpenShift Container Storage Pod Disruption Budgets(PDB)默认具有 minUnavailable=0,一次只允许在单个节点上重新引导 OSD。这会导致 OCP 控制台不断显示有关节点无法重启的警告。在这个版本中,OSD PDBs 进行了以下的重新设计:

  • 开始时有一个 OSD PDB。这样,任何时候只能有一个 OSD 停机。
  • 当 OSD 停机后,其故障域便会确定,为其他故障域创建 OSD PDB 的任何块。
  • 已创建的原始 OSD PDB 已被删除。因此,所有 OSD 可以在故障域中停止。

使用新设计时,用户可以排空同一故障域中的多个节点。

在外部模式中更新 RGW 地址

在这个版本中,如果 MCG 在外部模式中使用了 RGW 后备存储配置 MCG,则可以更改 RGW 地址而不影响 Multicloud Object Gateway 的(MCG)工作。

RGW 的可用空间

在以前的版本中,NooBaa bucket 显示所有存储桶的存储容量为 1PiB,但不显示 RGW 上的可用空间。借助此项功能增强,Red Hat Ceph 集群的存储容量会在 status 字段中导出,现在 NooBaa 侦听这个状态字段的更改,并更新每个 RGW 基于 RGW 的后备储存的可用容量。

允许配置 Service 监控端口,使其与用于外部模式的默认 ceph-mgr Prometheus 端口不同

在这个版本中,如果外部 Red Hat Ceph 集群被配置为使用 ceph-mgr Prometheus 模块在非默认端口(9283)上侦听,那么 OpenShift Container Storage 现在可以连接和使用这些指标,即 OpenShift Container Storage 现在接受任何监控端口。

ocs-operator 接受用于外部模式的监控服务的非默认端口

在以前的版本中,ocs-operator 中没有置备来传递默认端口 9283 以外的监控 Prometheus 服务端口。这使得端口不可用于监控服务。在这个版本中,ocs-operator 被启用来接受和传播来自外部集群 JSON 输入和监控服务的非默认监控端口。

使用现有 secret 来创建新的后备存储

在这个版本中,可以使用现有 secret 通过 Multicloud Object Gateway CLI 创建新的后备存储。

优先选择创建新 OSD 部署,而不是更新现有 OSD 部署

在以前的版本中,对于持久性卷声明上的 OSD,Rook 隐式地更新现有 OSD 前,在创建新 OSD 前,在创建新 OSD 前,在创建新 OSD 前不会向集群中添加新容量,直到 OSD 协调结束为止。在这个版本中,集群会比更新现有 OSD 扩展 OSD 来实现新的容量,从而在置备存储后马上提供新的容量,这也可将协调时间从 15 缩短到 5-10 分钟,同时扩展集群中的 OSD 数量。

RGW 的公共路由

在这个版本中,OpenShift Container Storage operator 为 Red Hat Ceph Storage 的 RADOS 对象网关(RGW)服务创建一个路由。

在 ROKS 上部署的 OpenShift Container Storage,没有 IBM 云设置中的凭证

在这个版本中,当 OpenShift Container Storage 在 ROKS 上部署并且没有凭证用于使用 ROKS 作为默认后备存储时,会在 IBM 云设置中易于安装。

OSD 重启的 Prometheus 警报

此功能增强添加了一个 Prometheus 警报,以通知 OpenShift Container Storage OSD 在 5 分钟内重启超过 5 次。警报消息如下:

 Storage daemon osd.x has restarted 5 times in the last 5 minutes. Please check the pod events or ceph status to find out the cause.

其中,x 代表 OSD 号。

命名空间存储桶的系统警报

随着 Red Hat OpenShift Container Storage 4.7 的发布,系统警报被添加用于命名空间存储桶和资源,以便更好地了解系统的当前状态。

输出到 noobaa-endpoint pod 日志的日志消息

在以前的版本中,即使设置了 debug 选项,日志消息也会输出到 noobaa-endpoint pod 日志。在这个版本中,只有在设置了 debug 选项时,日志消息才会输出到 noobaa-endpoint pod 日志。