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

恢复发生故障的存储卷并重建 Cassandra 数据库

贡献者

您必须运行一个脚本来重新格式化和重新挂载故障存储卷上的存储,并在系统确定有必要时在存储节点上重建 Cassandra 数据库。

开始之前
  • 您拥有 Passwords.txt 文件

  • 服务器上的系统驱动器完好无损。

  • 已确定故障的发生原因 、并且已在必要时获取更换存储硬件。

  • 替换存储的总大小与原始存储相同。

  • 您已检查是否未在执行存储节点停用,或者已暂停节点停用操作步骤 。(在网格管理器中,选择 * 维护 * > * 任务 * > * 取消配置 * 。)

  • 您已检查扩展是否未在进行中。(在网格管理器中,选择 * 维护 * > * 任务 * > * 扩展 * 。)

  • 您已拥有 "已查看有关存储卷恢复的警告"

步骤
  1. 根据需要,更换与先前已确定并卸载的故障存储卷关联的故障物理或虚拟存储。

    请勿在此步骤中重新挂载卷。存储将重新挂载并添加到 /etc/fstab 稍后再执行。

  2. 在网格管理器中,转至*N节点*> appliance Storage Node >*硬件*。在页面的StorageGRID 设备部分中、验证存储RAID模式是否运行正常。

  3. 登录到发生故障的存储节点:

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

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

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

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

      以root用户身份登录后、提示符将从变为 $ to #

  4. 使用文本编辑器(vi或vim)从中删除故障卷 /etc/fstab 文件、然后保存文件。

    备注 在中注释掉故障卷 /etc/fstab 文件不足。必须从中删除此卷 fstab 恢复过程会验证中的所有行 fstab 文件与挂载的文件系统匹配。
  5. 重新格式化任何发生故障的存储卷,并根据需要重建 Cassandra 数据库。输入 …​ reformat_storage_block_devices.rb

    • 卸载存储卷0后、系统将显示提示和消息、指示Cassand拉 服务正在停止。

    • 如果需要,系统将提示您重建 Cassandra 数据库。

      • 查看警告。如果其中任何一项都不适用,请重建 Cassandra 数据库。输入: *

      • 如果多个存储节点脱机或在过去 15 天内重建了另一个存储节点。输入: *

        该脚本将退出而不重建 Cassandra 。请联系技术支持。

    • 对于存储节点上的每个rangedb驱动器、当系统要求您执行以下操作时: Reformat the rangedb drive <name> (device <major number>:<minor number>)? [y/n]?、输入以下响应之一:

      • * y * 重新格式化出现错误的驱动器。这将重新格式化存储卷、并将重新格式化的存储卷添加到 /etc/fstab 文件

      • n(如果驱动器没有错误,并且您不想重新格式化它)。

        备注 选择 * n * 将退出此脚本。挂载驱动器(如果您认为应保留驱动器上的数据且错误地卸载了驱动器)或删除驱动器。然后、运行 reformat_storage_block_devices.rb 命令。
        备注 某些 StorageGRID 恢复过程使用 Reaper 处理 Cassandra 修复。一旦相关服务或所需服务开始,便会自动进行修复。您可能会注意到脚本输出中提到 " reaper " 或 "`Cassandra repair.` " 。 如果您看到指示修复失败的错误消息,请运行错误消息中指示的命令。

      在以下示例输出中、为驱动器 /dev/sdf 必须重新格式化、且不需要重建Cassandra:

    root@DC1-S1:~ # reformat_storage_block_devices.rb
    Formatting devices that are not in use...
    Skipping in use device /dev/sdc
    Skipping in use device /dev/sdd
    Skipping in use device /dev/sde
    Reformat the rangedb drive /dev/sdf (device 8:64)? [Y/n]? y
    Successfully formatted /dev/sdf with UUID b951bfcb-4804-41ad-b490-805dfd8df16c
    All devices processed
    Running: /usr/local/ldr/setup_rangedb.sh 12368435
    Cassandra does not need rebuilding.
    Starting services.
    Informing storage services of new volume
    
    Reformatting done.  Now do manual steps to
    restore copies of data.

在重新格式化和重新挂载存储卷并完成必要的Cassand拉 操作后、您可以执行此操作 "使用网格管理器还原对象数据"