Skip to main content
本产品推出了新版本。
简体中文版经机器翻译而成,仅供参考。如与英语版出现任何冲突,应以英语版为准。

对元数据问题进行故障排除

贡献者

您可以执行多项任务来帮助确定元数据问题的根源。

对低元数据存储警报进行故障排除

如果触发 * 低元数据存储 * 警报,则必须添加新的存储节点。

您需要的内容
  • 您必须使用支持的浏览器登录到网格管理器。

关于此任务

StorageGRID 会在每个存储节点的卷 0 上为对象元数据预留一定数量的空间。此空间称为实际预留空间,并细分为对象元数据允许的空间(允许的元数据空间)以及数据缩减和修复等基本数据库操作所需的空间。允许的元数据空间用于控制整体对象容量。

允许的元数据空间卷 0

如果对象元数据占用的空间超过元数据允许的 100% ,则数据库操作将无法高效运行,并会发生错误。

StorageGRID 使用以下 Prometheus 指标来衡量允许的元数据空间的容量:

storagegrid_storage_utilization_metadata_bytes/storagegrid_storage_utilization_metadata_allowed_bytes

当此 Prometheus 表达式达到特定阈值时,将触发 * 低元数据存储 * 警报。

  • * 次要 * :对象元数据正在使用允许的元数据空间的 70% 或更多。您应尽快添加新的存储节点。

  • * 主要 * :对象元数据正在使用允许的元数据空间的 90% 或更多。您必须立即添加新的存储节点。

    重要说明 当对象元数据使用 90% 或更多的允许元数据空间时,信息板上会显示一条警告。如果显示此警告,则必须立即添加新的存储节点。绝不能允许对象元数据使用超过允许空间的 100% 。
  • * 严重 * :对象元数据正在使用 100% 或更多的允许元数据空间,并且开始占用基本数据库操作所需的空间。您必须停止载入新对象,并且必须立即添加新的存储节点。

在以下示例中,对象元数据使用的元数据空间超过允许的 100% 。这是一种严重情况,会导致数据库运行效率低下和出现错误。

元数据信息板警报
重要说明 如果卷 0 的大小小于元数据预留空间存储选项(例如,在非生产环境中),则计算 * 低元数据存储 * 警报可能不准确。
步骤
  1. 选择*警报*>*当前*。

  2. 如果需要,从警报表中展开 * 低元数据存储 * 警报组,然后选择要查看的特定警报。

  3. 查看警报对话框中的详细信息。

  4. 如果触发了主要或关键的 * 低元数据存储 * 警报,请执行扩展以立即添加存储节点。

    备注 由于 StorageGRID 会在每个站点保留所有对象元数据的完整副本,因此整个网格的元数据容量受最小站点的元数据容量限制。如果需要向一个站点添加元数据容量、则还应按相同数量的存储节点扩展任何其他站点。

    执行扩展后, StorageGRID 会将现有对象元数据重新分发到新节点,从而增加网格的整体元数据容量。无需用户操作。已清除 * 低元数据存储 * 警报。

对服务进行故障排除:状态—Cassandra (SVST)警报

服务:状态 - Cassandra ( SVST )警报指示您可能需要为存储节点重建 Cassandra 数据库。Cassandra 用作 StorageGRID 的元数据存储。

您需要的内容
  • 您必须使用支持的浏览器登录到网格管理器。

  • 您必须具有特定的访问权限。

  • 您必须具有 Passwords.txt 文件

关于此任务

如果 Cassandra 停止超过 15 天(例如,存储节点已关闭),则在节点恢复联机后, Cassandra 将无法启动。您必须为受影响的 DDS 服务重建 Cassandra 数据库。

您可以使用 " 诊断 " 页面获取网格当前状态的追加信息 。

重要说明 如果两个或多个 Cassandra 数据库服务关闭超过 15 天,请联系技术支持,不要继续执行以下步骤。
步骤
  1. 选择*支持*>*工具*>*网格拓扑*。

  2. 选择*站点>存储节点_*>* SSM*>*服务*>*警报*>*主*以显示警报。

    此示例显示已触发 SVST 警报。

    警报: SSM :服务页面

    "SSM 服务主页 " 页面还指示 Cassandra 未运行。

    概述: SSM :服务页面
  1. 尝试从存储节点重新启动Cassandra:

    1. 登录到网格节点:

      1. 输入以下命令: ssh admin@grid_node_IP

      2. 输入中列出的密码 Passwords.txt 文件

      3. 输入以下命令切换到root: su -

      4. 输入中列出的密码 Passwords.txt 文件以root用户身份登录后、提示符将从变为 $ to #

    2. 输入 …​ /etc/init.d/cassandra status

    3. 如果Cassandra未运行、请重新启动它: /etc/init.d/cassandra restart

  2. 如果 Cassandra 未重新启动,请确定 Cassandra 已关闭多长时间。如果 Cassandra 已关闭超过 15 天,则必须重建 Cassandra 数据库。

    重要说明 如果两个或更多 Cassandra 数据库服务已关闭,请联系技术支持,不要继续执行以下步骤。

    您可以通过绘制 Cassandra 图表或查看 servermanager.log 文件来确定 Cassandra 已关闭多长时间。

  3. 绘制 Cassandra 图表:

    1. 选择*支持*>*工具*>*网格拓扑*。然后选择*站点>存储节点_*>* SSM*>*服务*>*报告*>*图表*。

    2. 选择 * 属性 * > * 服务:状态 - Cassandra* 。

    3. 对于 * 开始日期 * ,请输入至少早于当前日期 16 天的日期。对于 * 结束日期 * ,输入当前日期。

    4. 单击 * 更新 * 。

    5. 如果图表显示 Cassandra 关闭超过 15 天,请重建 Cassandra 数据库。

以下图表示例显示 Cassandra 已关闭至少 17 天。

概述: SSM :服务页面
  1. 查看存储节点上的 servermanager.log 文件:

    1. 登录到网格节点:

      1. 输入以下命令: ssh admin@grid_node_IP

      2. 输入中列出的密码 Passwords.txt 文件

      3. 输入以下命令切换到root: su -

      4. 输入中列出的密码 Passwords.txt 文件以root用户身份登录后、提示符将从变为 $ to #

    2. 输入 …​ cat /var/local/log/servermanager.log

      此时将显示 servermanager.log 文件的内容。

      如果 Cassandra 已关闭超过 15 天,则 servermanager.log 文件中将显示以下消息:

    "2014-08-14 21:01:35 +0000 | cassandra | cassandra not
    started because it has been offline for longer than
    its 15 day grace period - rebuild cassandra
    1. 确保此消息的时间戳是您按照步骤中的说明尝试重新启动 Cassandra 的时间 从存储节点重新启动 Cassandra

      Cassandra 可以有多个条目;您必须找到最新的条目。

    2. 如果 Cassandra 已关闭超过 15 天,则必须重建 Cassandra 数据库。

      有关说明、请参见恢复和维护说明中的"`从一个存储节点恢复超过15天`"。

    3. 如果重建 Cassandra 后无法清除警报,请联系技术支持。

相关信息

"保持并恢复()"

排除Cassandra内存不足错误(SMT警报)

如果 Cassandra 数据库出现内存不足错误,则会触发总计事件( SMT )警报。如果发生此错误,请联系技术支持以使用问题描述 。

关于此任务

如果 Cassandra 数据库发生内存不足错误,则会创建堆转储,触发总事件( SMT )警报, Cassandra 堆内存不足错误计数将增加 1 。

步骤
  1. 要查看事件、请选择*节点*>*网格节点_*>*事件*。

  2. 验证 Cassandra 堆内存不足错误计数是否为 1 或更高。

    您可以使用 " 诊断 " 页面获取网格当前状态的追加信息 。

  3. 转至 /var/local/core/、压缩 Cassandra.hprof 并将其发送给技术支持。

  4. 创建的备份 Cassandra.hprof 文件、然后将其从中删除 /var/local/core/ directory

    此文件最大可达 24 GB ,因此您应将其删除以释放空间。

  5. 解决问题描述 后、单击*重置事件计数*。

    备注 要重置事件计数,您必须具有网格拓扑页面配置权限。