注意
本文档适用于 Ceph 的开发版本。
rgw-restore-bucket-index -- 尝试将存储桶对象恢复到其存储桶索引中
概要
描述
rgw-restore-bucket-index 是一个实验性 RADOS 网关用户管理实用程序。它扫描数据池中属于给定存储桶的对象,并尝试将这些对象添加回存储桶索引中。它旨在作为存储桶索引**灾难性**丢失后的**最后手段**。请仔细查阅下面列出的警告。
该实用程序适用于常规(即非版本化)存储桶、版本化存储桶以及已暂停版本控制的存储桶。
警告
此实用程序目前被认为是实验性的。
如果存储桶在实用程序运行时处于活动使用状态,则结果是不可预测的。
如果只有部分存储桶对象从存储桶索引中丢失,则结果是不可预测的。在这种情况下,考虑使用 radosgw-admin 的“object reindex”子命令来逐个将对象恢复到存储桶索引中。
对于版本化存储桶中的对象,如果最新版本是删除标记,它将被恢复。如果删除标记被新版本覆盖,则该删除标记将不会被恢复。这对结果的影响应该最小,因为它恢复了最新版本并且所有以前的版本都可访问。
命令行参数
- -b <bucket>
指定要重建索引的存储桶。
- -p <pool>
可选,指定包含存储桶头部对象的数据池。如果省略,实用程序将尝试自行确定数据池。
- -r <realm-name>
可选,如果恢复未应用于默认域,则指定域。
- -g <zonegroup-name>
可选,如果恢复未应用于默认区域组,则指定区域组。
- -z <zone-name>
可选,如果恢复未应用于默认区域,则指定区域。
- -l <rados-ls-output-file>
可选,指定包含 rados 数据池列表输出的文件。由于列出数据池可能是一个耗时且昂贵的操作,如果尝试恢复多个存储桶的索引,重用相同的列表可能更有效。
- -t <temporary-directory>
可选,指定用于存储临时文件的目录。临时文件的大小高度依赖于所涉及的存储桶条目数量,因此临时目录所在的分区应具有适当的大小。
- -y
可选,无需进一步提示即可继续。如果没有此选项,实用程序将显示一些信息并提示用户是否继续。提供此选项后,实用程序将直接继续。使用此选项时请务必小心。
示例
尝试恢复名为 summer-2023-photos 的存储桶的索引
$ rgw-restore-bucket-index -b summer-2023-photos
可用性
rgw-restore-bucket-index 是 Ceph 的一部分,Ceph 是一个可大规模扩展的开源分布式存储系统。请参阅 Ceph 文档(网址为 https://docs.ceph.net.cn)以获取更多信息。