监控 OpenShift Container Storage

Red Hat OpenShift Container Storage 4.6

使用存储仪表板监控 OpenShift Container Storage

摘要

参阅此文档介绍了使用持久和对象服务仪表板监控 Red Hat OpenShift Container Storage 的说明。

第 1 章 集群健康

1.1. 验证 OpenShift Container Storage 健康

存储健康状况在 Persistent Storage 和 Object Service 仪表板中可见。

流程

  1. 登录 OpenShift Web 控制台。
  2. 检查以下位置中的状态卡。

    • HomeOverviewPersistent Storage
    • HomeOverviewObject Service

      如果 Green Tick 出现在 Status 卡中,则集群处于健康状态。

      如果状态不是 Healthy,请参阅 第 1.2 节 “存储健康级别和集群状态” 来了解有关当前状态和显示的任何警报的更多信息。

1.2. 存储健康级别和集群状态

存储仪表板中会显示与 OpenShift Container Storage 相关的状态信息和警报。

1.2.1. 持久性存储仪表板指示器

Persistent Storage 仪表板显示 OpenShift Container Storage 作为一个整体的状态,以及持久性卷的状态。

下表中列出了每种资源类型的可能状态。

表 1.1. OpenShift Container Storage 健康状态级别

状态图标描述

UNKNOWN

unknown icon

OpenShift Container Storage 没有部署或不可用。

绿色勾号

ocs health icon green

集群健康状态良好。

警告

ocs health icon yellow

当 OpenShift Container Storage 集群处于警告状态时。在内部模式中,将显示警报以及问题详情。外部模式不会显示警报。

Error

ocs health icon red

当 OpenShift Container Storage 集群遇到错误时,一些组件无法正常工作。在内部模式中,将显示警报以及问题详情。外部模式不会显示警报。

1.2.2. Object Service 仪表板指示符

Object Service 仪表板显示 Multicloud Object Gateway 的状态以及集群中的任何对象声明。

下表中列出了每种资源类型的可能状态。

表 1.2. 对象服务健康级别

状态描述

绿色勾号 ocs health icon green

对象存储是健康的。

多云对象网关没有运行

在 NooBaa 系统未找到时显示。

所有资源均不健康

NooBaa 池不健康时显示。

许多存储桶存在问题

当 >= 50% 的存储桶遇到错误时显示。

有些存储桶出现问题

当 >= 30% 的存储桶遇到错误时显示。

不可用

在网络有问题和/或有错误时显示。

1.2.3. 警告面板

当集群状态不是健康状态时,Alert 面板会出现在 Persistent Storage 仪表板和 Object Service 仪表板的 Status 卡下。

有关特定警报以及如何响应它们的信息,请参阅 OpenShift Container Storage 故障排除

第 2 章 指标

2.1. 持久性存储仪表板中的指标

要查看持久性存储仪表板,请在 OpenShift Web 控制台中点 Home → Overview → Persistent Storage

图 2.1. 内部模式的持久性存储概述仪表板示例

持久性存储仪表板截屏

持久性存储仪表板中的以下卡根据部署模式(内部或外部)提供指标:

详情卡

详情卡显示以下内容:

  • 服务名称
  • 集群名称
  • 系统在其中运行的 Provider 的名称(例如:AWS、VSphere、'None' for Bare metal)
  • 模式(作为内部或外部的部署模式)
  • OpenShift Container Storage operator 版本。
清单卡
清单卡显示活跃节点、PVC 和 OpenShift Container Storage 置备程序支持的 PV 数量。在卡的左侧,会显示存储节点、PVC 和 PV 的总数。在卡的右侧,会显示处于 Not Ready 状态的存储节点数,以 Pending 状态和 Released 状态的 PV 计数。
注意

对于外部模式,默认情况下节点数量为 0,因为没有专用节点用于 OpenShift Container Storage。

状态卡

这个卡显示了集群是否在没有错误的情况下启动并运行,还是遇到一些问题。

对于内部模式,Data Resiliency 表示 Ceph 中跨副本的数据重新平衡状态。当内部模式集群处于 warning 或 error 状态时,Alerts 部分会与相关的警报一起显示。

对于外部模式,不会显示数据弹性和警报

容量分类卡

在这个卡中,您可以查看每个项目、存储类和 pod 容量的图形分类。您可以从卡顶部的下拉菜单中选择项目、存储类和 Pod。这些选项用于过滤图形中显示的数据。

选项显示

项目

每个项目的聚合容量,每个项目使用 OpenShift Container 存储以及正在使用的容量。

存储类

将显示基于 OpenShift Container Storage 的存储类的聚合容量。

Pods

试图使用由 OpenShift Container Storage 置备程序支持的 PVC 的所有 pod。

注意

对于外部模式,此图仅显示使用的容量详情。

使用率卡

这个卡显示了内部模式集群的已用容量、输入/输出操作每秒、延迟、吞吐量和恢复信息。

对于外部模式,这个卡只会显示该集群的已用和请求的容量详情。

存储效率卡
这个卡显示系统范围的压缩率,以及使用带有压缩的存储类为持久性卷声明保存的空间大小。

2.2. 对象服务仪表板中的指标

要查看对象服务仪表板,请在 OpenShift Web 控制台中点 Home → Overview → Object Service

重要

要在 OpenShift Container Storage 4.6 发布后的 Object Service dashboard 中查看对象网关(RGW)指标,必须启用监控。要为 RGW 启用监控,请参阅为 Object Service 仪表板 启用监控

图 2.2. Object Service Overview 仪表板示例

对象服务仪表板截图

Object Service 仪表板中提供了以下指标:

详情卡

这个卡显示以下信息:

  • 服务名称:Multicloud Object Gateway(MCG)服务名称。
  • 系统名称 :多云对象网关和 RADOS 对象网关系统名称。Multicloud 对象网关系统名称也是 MCG 管理用户界面的超链接。
  • Provider: 系统在其中运行的 Provider 的名称(例如:AWS、VSphere、'None' for Bare metal)
  • Version :OpenShift Container Storage operator 版本。
存储效率卡
在这个卡中,您可以查看 MCG 如何通过重复数据删除和压缩来优化存储后端资源的消耗,并为您提供计算的效率比例(应用程序数据与逻辑数据)和估计节省图(MCG 未发送到存储供应商的字节数),基于裸机存储和基于云的存储容量以及基于云的存储和云存储出口的容量。
bucket(存储桶)卡

bucket 由 MCG 和 RADOS 对象网关维护,以代表应用存储数据。这些 bucket 通过对象存储桶声明(OBC)创建并访问。可以将特定策略应用到 bucket,以自定义数据放置、数据蔓延、数据弹性、容量配额等。

在这个卡中,对象存储桶(OB)和对象存储桶声明(OBC)的信息单独显示。OB 包括使用 S3 或用户界面(UI)和 OBC 创建的所有存储桶,OBC 包括使用 YAML 或命令行界面(CLI)创建的所有存储桶。bucket 类型左侧显示的数量是 OB 或 OBCs 的总计数。右侧显示的数字显示错误计数,只有在错误计数大于零时才可见。您可以点击数字来查看具有警告或错误状态的存储桶列表。

资源供应商卡
此卡显示当前正在使用的所有多云对象网关和 RADOS 对象网关资源的列表。这些资源用于根据存储桶策略存储数据,可以是基于云的资源,也可以是裸机资源。
状态卡

此卡显示了系统及其服务是否正在毫无问题的情况下运行。当系统处于警告或错误状态时,将显示 alerts 部分,并在其中显示相关警报。单击每个警报旁边的警报链接,以获取有关此问题的更多信息。有关健康检查的信息,请参阅集群健康状况

如果集群中提供了多个对象存储服务,请单击服务类型(如 Object ServiceData Resiliency)以查看各个服务的状态。

状态卡中的数据弹性指示有关通过多云对象网关和 RADOS 对象网关存储的数据是否有任何弹性问题。

容量分类卡
在此卡中,您可以视觉化应用如何通过多云对象网关和 RADOS 对象网关使用对象存储。您可以使用 Service Type 下拉列表单独查看多云网关和对象网关的容量细分。在查看 Multicloud 对象网关时,您可以使用 Break By 下拉菜单按 项目Bucket 类 过滤图表。
性能卡

在此卡中,您可以查看多云对象网关或 RADOS 对象网关的性能。使用 Service Type 下拉菜单选择您要查看的内容。

对于多云对象网关帐户,您可以查看 I/O 操作和逻辑使用容量。对于供应商,您可以查看 I/O 操作、物理和逻辑使用情况以及出口。

下表解释了您可以根据您从卡顶部下拉菜单中选择的不同指标来查看的不同指标:

表 2.1. 多云对象网关的指标

消费者类型指标Chart 显示

帐户

I/O 操作

显示前五个使用者的读写 I/O 操作。所有消费者的读取和写入总量都显示在底部。这些信息可帮助您监控每个应用程序或帐户的吞吐量需求(IOPS)。

帐户

逻辑使用容量

显示每个帐户在前五个消费者的逻辑使用总数。这可帮助您监控每个应用或帐户的吞吐量需求。

供应商

I/O 操作

显示在访问供应商托管的存储后端时 MCG 生成的 I/O 操作计数。这有助于您了解云中的流量,以便您可以根据 I/O 模式改进资源分配,从而优化成本。

供应商

物理与逻辑使用情况

通过比较物理使用情况和每个提供程序的逻辑使用量来显示系统中的数据消耗。这可帮助您控制存储资源,并根据您的使用特征和性能要求制定放置策略,同时有可能优化您的成本。

供应商

Egress

MCG 从每个供应商检索的数据量(读取带宽源自应用程序)。这有助于您了解云中的流量,从而根据出口模式改进资源分配,从而优化成本。

帐户

I/O 操作

显示前五个使用者的读写 I/O 操作。所有消费者的读取和写入总量都显示在底部。这些信息可帮助您监控每个应用程序或帐户的吞吐量需求(IOPS)。

帐户

逻辑使用容量

显示每个帐户在前五个消费者的逻辑使用总数。这可帮助您监控每个应用或帐户的吞吐量需求。

对于 RADOS 对象网关,您可以使用 Metric 下拉列表来查看 延迟带宽

  • Latency:提供 RADOS 对象网关实例之间平均 GET/PUT 延迟的视觉指示。
  • Bandwidth:提供 RADOS 对象网关实例之间 GET/PUT 带宽总和的可视化指示。
活动卡

此卡显示了 OpenShift Container Storage 集群中发生或最近发生了哪些活动。该卡分为两个部分:

  • Ongoing:显示与重建数据弹性和 OpenShift Container Storage operator 升级相关的持续活动进度。
  • Recent Events:显示 openshift-storage 命名空间中发生的事件列表。

第 3 章 警报

3.1. 设置警报

对于内部模式集群,与存储指标服务、存储集群、磁盘设备、集群运行状况、集群容量等相关的各种警报会显示在持久性存储和对象服务仪表板中。这些警报不适用于外部模式。

注意

在警报面板中显示警报可能需要几分钟时间,因为仅触发警报在此面板中可见。

您还可以查看其他详情的警报,并自定义 OpenShift Container Platform 中的 Alerts 显示。

如需更多信息,请参阅管理警报

第 4 章 远程健康监控

OpenShift Container Storage 会收集有关集群健康、使用情况和集群大小的匿名聚合信息,并通过一个名为 Telemetry 的集成组件向红帽报告。红帽利用这些信息便可改进 OpenShift Container Storage,并更快地对影响客户的问题做出反应。

通过 Telemetry 向红帽报告数据的集群被视为连接的集群

4.1. 关于 Telemetry

Telemetry 会向红帽发送一组精选的集群监控指标子集。这些指标会持续发送并描述:

  • OpenShift Container Storage 集群的大小
  • OpenShift Container Storage 组件的健康和状态
  • 正在进行的任何升级的健康和状态
  • 关于 OpenShift Container Storage 组件和功能的有限使用情况信息
  • 有关集群监控组件所报告的警报的摘要信息

红帽将使用这一持续数据流实时监控集群的健康,必要时将对影响客户的问题做出反应。它还允许红帽向客户推出 OpenShift Container Storage 升级,以便最大程度降低服务影响并持续改进升级体验。

这类调试信息将提供给红帽支持和工程团队,其访问限制等同于访问通过问题单报告的数据。红帽利用所有连接的集群信息来帮助改进 OpenShift Container Storage,更直观地使用。所有这些信息都不会与第三方共享。

4.2. Telemetry 收集的信息

Telemetry 收集的主要信息包括:

  • 以字节为单位的 ceph 集群大小 : "ceph_cluster_total_bytes",
  • 以字节为单位使用的 ceph 集群存储量 : "ceph_cluster_total_used_raw_bytes",
  • Ceph 集群健康状态 : "ceph_health_status",
  • osds 的总数: "job:ceph_osd_metadata:count"
  • RHOCP 集群中的持久卷总数 :"job:kube_pv:count",
  • ceph 集群中所有池的总 iops(读取+写入)值 :"job:ceph_pools_iops:total",
  • Ceph 集群中所有池的 iops 总数(reads+writes)值(以字节为单位):"job:ceph_pools_iops_bytes:total",
  • 运行的 ceph 集群版本总数: "job:ceph_versions_running:count"
  • 不健康的 noobaa bucket 的总数: "job:noobaa_total_unhealthy_buckets:sum",
  • noobaa bucket 的总数: "job:noobaa_bucket_count:sum",
  • noobaa 对象的总数: "job:noobaa_total_object_count:sum",
  • noobaa 帐户计数 :"noobaa_accounts_num",
  • noobaa 的存储总使用量(以字节为单位):"noobaa_total_usage"
  • PVC 从特定存储置备程序请求的存储总量(以字节为单位): "cluster:kube_persistentvolumeclaim_resource_requests_storage_bytes:provisioner:sum",
  • PVC 使用的存储总量(以字节为单位) :"cluster:kubelet_volume_stats_used_bytes:provisioner:sum"

Telemetry 不会收集任何身份识别的信息,如用户名、密码、用户资源的名称或地址。除了上述遥测信息外,NooBaa 还将帐户、存储桶、对象、容量、节点和健康连接的统计信息发送到 phonehome.noobaa.com。