Avamar 检查点是 Avamar 数据节点上的一组只读目录。
它就像 Avamar 系统的时间点快照。如果 Avamar 系统遇到无法纠正的严重问题,则它对于回滚可能非常有用。
cplist 工具创建 Avamar 系统上存在的检查点列表。
任何有权访问 Avamar 实用程序节点的用户都可以运行该工具。
在决定如何在遇到问题或正在进行维护的系统上继续操作之前,了解存在哪些检查点及其状况至关重要。
对检查点状态的错误假设可能导致数据丢失或 Avamar 系统无法恢复。
本文可帮助读者解释该工具的输出。
以下是命令 cplist 的输出示例。
cp.20130915110057 Sun Sep 15 12:00:57 2013 valid rol --- nodes 3/3 stripes 3530
cp.20130915110654 Sun Sep 15 12:06:54 2013 valid --- --- nodes 3/3 stripes 3530
我们查看上面的第一个检查点,并讨论每个数据字段的含义。
检查点标签名称 - cp.20130915110057
- 这是检查点的标识标签,与检查点启动的时间相对应。Cp。YYYYMMDDHHMMSS
- 在 Avamar v7.1 中,检查点分配有序列号,而不是使用检查点开始日期和时间进行标记。
所花费的时间 — 9 月 15 日(星期日),12:00:57
- 创建检查点的日期、日期和时间。这始终与检查点标签对应。
有效性 - 有效
- 如果此字段显示“valid”,则检查点“很麻烦”。
- 有效性表示检查点对于回滚用途是否有用。
- 如果此字段显示“valid”,并不意味着检查点已经过 HFScheck 验证。
- 运行“cplist”时,“validity”字段是多余的,因为默认情况下,命令会显示可用检查点。
- 运行“cplist --full”将显示系统上的所有检查点,包括任何无法用于回滚的检查点。
HFScheck 验证类型 —“rol”
- 此字段显示在检查点上运行的 HFScheck 验证的类型。
- 可能的类型包括“hfs”、“rdc”、“par”、“rol”
- hfs 或 full — 表示验证已在检查点中的所有条带上运行。
- roll — 表示验证已检查检查检查点中的所有新条带或修改过的条带。
- 研究表明,当发生数据完整性问题时,通常受影响的条带是新创建或最近修改的条带。因此,Avamar 工程部门建议,滚动验证实际上与更长的完整 HFScheck 验证一样可靠。
- 根据 Avamar 系统的数据接收率,滚动 HFScheck 还可能会检查检查检查点未修改的条带的一定比例。这意味着,最终,所有条带(即使是尚未修改的条带)都可能会被完整性检查。
- rdc — 表示验证已完成,但一个节点未参与验证。 未指定验证类型。
- 标记为 rdc 的检查点无法保证数据的完整性。与完全没有验证相比,这样的检查可提供对数据完整性更好的置信度。
可删除的“---”
- 此字段指示是否可以根据 Avamar Server 上强制执行的检查点保留设置删除检查点。
- 检查点保留由“cphfschecked”和“cpmostrecent”参数控制。
- 除非支持工程师建议,否则检查点保留应保留为默认值。
- 错误的检查点保留设置可能会使 Avamar 系统面临数据丢失风险,或可能导致操作系统容量问题。
REFCOUNT/NODECOUNT — “node 3/3”
- 第一个数字是 refcount。这将报告响应 cplist 命令的节点数。此值不一定表示在线节点的数量。
- 第二个数字是节点计数。这指的是最初获取检查点时参与的节点数。换言之,有多少数据节点包含该特定检查点目录。
- 在考虑这两个字段输出的含义之前,请仔细记下系统的状态(节点总数和联机节点数)以及 cplist 的运行方式。
条带计数字段 — “3530”
- 此字段显示检查点中捕获的条带总数。
- 滚动检查点验证将验证此数量条带的子集。
- 完整检查点验证将验证所有这些检查点。
cplist 输出
示
例 1:
cp.20130914190119 Sat Sep 14 20:01:19 2013 valid rol --- nodes 1/1 stripes 1401
cp.20130914192153 Sat Sep 14 20:21:53 2013 valid --- --- nodes 1/1 stripes 1401
这告诉我们什么?
- 这是单节点系统。
- 有两个“正常”或可用的检查点。
- cp.20130914190119 通过滚动 HFScheck 进行验证,其他检查点尚未验证。
- 两个检查点都捕获了 1401 个条带。
示例 2:
cp.20130911150620 Wed Sep 11 11:06:20 2013 valid rol --- nodes 9/9 stripes 121107
cp.20130911160421 Wed Sep 11 12:04:21 2013 valid --- --- nodes 9/9 stripes 121107
cp.20130912151051 Thu Sep 12 11:10:51 2013 valid --- --- nodes 8/9 stripes 121107
这告诉我们什么?
- 在每个检查点期间,有九个节点参与了检查点创建过程。我们可能假定系统上有九个节点,但不依赖于此信息的 cplist 输出。
- 三个检查点中最旧的已通过滚动 HFScheck 进行验证。
- 最近一次检查点(9 月 12 日)目前无法在构成该检查点的九个节点之一上访问。
示例 3:
cp.20130915110057 Sun Sep 15 12:00:57 2013 valid rol --- nodes 3/3 stripes 3530
cp.20130915110654 Sun Sep 15 12:06:54 2013 valid --- del nodes 3/3 stripes 3530
cp.20130916053830 Mon Sep 16 06:38:30 2013 valid --- --- nodes 3/3 stripes 3530
cp.20130916060236 Mon Sep 16 07:02:36 2013 valid --- --- nodes 2/2 stripes 3530
这告诉我们什么?
- cp.20130915110654 有资格根据检查点保留规则被删除。
- cp.20130916060236 是在三个节点之一离线时拍摄的。
示例 4:
如果 Avamar 系统与 Data Domain 集成,则如果 Data Domain 系统变得不可用,cplist 可以将检查点显示为无效。例如,
cp.20130830173413 Fri Aug 30 10:34:13 2013 valid hfs --- nodes 1/1 stripes 82
cp.20130831000113 Fri Aug 30 17:01:13 2013 valid hfs --- nodes 1/1 stripes 82
如果 Data Domain 设备已关闭;
admin@utility:~/>: cplist
cplist: ERROR: ddrmaint: <4750>Datadomain get checkpoint list operation failed.
2013/09/17-14:28:06.79970 [cplist] ERROR: <0001> ddrmaint: <4750>Datadomain get checkpoint list operation failed.
cp.20130830173413 Fri Aug 30 10:34:13 2013 invalid --- --- nodes 1/1 stripes 82
cp.20130831000113 Fri Aug 30 17:01:13 2013 invalid --- --- nodes 1/1 stripes 82