恢复使用 DAOS 第 2 层存储
HCL Domino 当前不提供将 DAOS 对象从第 2 层存储移动到第 1 层存储的自动方法。以下步骤描述了如何手动恢复。
关于此任务
完整步骤如下。请参阅详细步骤以了解更多信息。
- 禁用 DAOS 第 2 层
- 验证第 2 层中是否有对象。
- 将第 2 层的所有对象复制到第 1 层存储。
- 执行快速重新同步。
- 验证 DAOS 不再具有第 2 层引用。
- 删除第 2 层对象。
- 执行完全重新同步。
过程
-
禁用 DAOS 第 2 层存储:
-
通过在服务器控制台上发出以下命令,验证第 2 层中是否存在 DAOS 对象:.
tell daosmgr objectinfo summary
如果输出表明没有第 2 层对象,请跳过此过程中的其余步骤。以下输出示例表明有 32 个第 2 层对象:[1998:0002-082C] DAOS TIERED STORAGE SUMMARY [1998:0002-082C] TIER 1 STORAGE: [1998:0002-082C] OBJECTS - 0 [1998:0002-082C] MB - 0 MB [1998:0002-082C] TIER 2 STORAGE: [1998:0002-082C] OBJECTS - 32 [1998:0002-082C] MB - 70 MB [1998:0002-082C] TOTAL STORAGE : [1998:0002-082C] OBJECTS - 32 [1998:0002-082C] MB - 70 MB [1998:0002-082C] AVERAGE AGE - 1521 days
-
将第 2 层的所有对象复制到第 1 层存储。这些步骤假定使用 AWS CLI(命令行界面),因此必须安装和配置 AWS CLI。但是,您可以使用与 S3 后端兼容的任何工具进行复制。
-
通过在服务器控制台上发出以下命令来执行快速重新同步:
tell daosmgr resync quick force
此操作会致使 DAOS 刷新其在第 1 层和第 2 层中的对象的索引,但不执行完全重新同步。如果发出
tell daosmgr status
命令,结果显示catalogState = RESYNCING
。DAOS 会在此状态下继续运行,但不会删减任何已删除的对象。 -
通过在服务器控制台上发出以下命令来验证是否不再具有第 2 层对象:
tell daosmgr objectinfo summary
输出应显示0
第 2 层对象,例如:[1D1C:0002-6170] DAOS TIERED STORAGE SUMMARY [1D1C:0002-6170] TIER 1 STORAGE: [1D1C:0002-6170] OBJECTS - 32 [1D1C:0002-6170] MB - 70 MB [1D1C:0002-6170] TIER 2 STORAGE: [1D1C:0002-6170] OBJECTS - 0 [1D1C:0002-6170] MB - 0 MB [1D1C:0002-6170] TOTAL STORAGE : [1D1C:0002-6170] OBJECTS - 32 [1D1C:0002-6170] MB - 70 MB [1D1C:0002-6170] AVERAGE AGE - 1521 days
-
通过发出以下形式的命令,从 S3 中删除第 2 层对象。此命令与步骤 3c 中用于列出第 2 层对象的命令一样,除非您使用
rm
替换ls
标志:aws s3 [--profile <profile-name>] [--endpoint-url <s3-endpoint>] rm s3://<s3-bucket>/obj/<s3-server-id>/<s3-server-id>/ --recursive
例如:aws s3 --profile dominocos rm s3://aws-hcl-dominocos/obj/96A6456FB0F12AE91178C9A8AE0DAB7DB6F1130D/ 96A6456FB0F12AE91178C9A8AE0DAB7DB6F1130D/ --recursive
控制台输出示例:
delete: s3://aws-hcl-dominocos/obj/96A6456FB0F12AE91178C9A8AE0DAB7DB6F1130D/ 96A6456FB0F12AE91178C9A8AE0DAB7DB6F1130D/ 040E4598A2A287490B8DD7784FEB7150B876313E001B1D64.nlo delete: s3://aws-hcl-dominocos/obj/96A6456FB0F12AE91178C9A8AE0DAB7DB6F1130D/ 96A6456FB0F12AE91178C9A8AE0DAB7DB6F1130D/ 11FCA4B81120D5650D67C9427C80D6B8256AFCF30000D902.nlo
-
通过以下任一方式执行 DAOS 完全重新同步。
- 如果已安排“Domino 目录”程序文档运行
tell daosmgr resync
目录,请等待其运行。 - 否则,请在服务器控制台中发出命令
tell daosmgr resync force
。完全重新同步可能需要较长的时间才能完成,因此最好在非工作时间运行。
注: 您在步骤 4 中发出的tell daosmgr resync quick force
命令可确保 DAOS 具有所有现有对象的索引。但是该命令不能确保对象的所有引用计数都是精确的。精确的引用计数要求执行完全重新同步,这涉及通过迭代所有启用了 DAOS 的数据库中的所有附件引用从头开始重建对象索引。 - 如果已安排“Domino 目录”程序文档运行