Avamar:备份性能缓慢问题故障处理
Summary: 本文介绍了如何将 Avamar 备份性能分解为各个组成部分。提供了有关如何调查 Avamar 备份缓慢问题、确定瓶颈并减轻其影响的实用指导原则。
Symptoms
- 将文件系统或数据库备份到 Avamar Server 或 Data Domain 后端的 Avamar Client。
- 初始备份已完成且 Avamar Server 上存在完整备份的 L1 备份。
为什么要优化客户端备份性能?
- 确保在备份窗口内可靠地完成各个备份。
- 尽可能减少 Avamar Client 硬件资源上的不必要负载。
- 高效利用备份会话并减少备份排队。
- 当备份与维护活动重叠时,所有活动的运行速度都会变慢。
- 提供一段静默时间,以便重置哈希引用位图(
备份性能缓慢的典型症状:
- 备份无法在计划的窗口内完成。活动监视器报告“Client time out - end”(客户端超时 - 结束)
- 备份没有机会在计划的窗口结束前启动。活动监视器报告“Client time out - start”(客户端超时 - 开始)
- 垃圾收集定期失败,并显示 MSG_ERR_BACKUPSINPROGRESS 或 MSG_ERR_TRYAGAINLATER
从性能角度了解 Avamar 备份期间发生的情况
有关在后台发生的影响 Avamar Client 备份性能和行为的情况的详细说明,请参阅以下文章:
Cause
Resolution
收集信息:
收集有关问题的详细信息:
确定备份链的哪个部分具有最严重的瓶颈:
下面的示意图显示了备份系统的主要组成部分。 
瓶颈总是存在的,但我们应该努力了解瓶颈出现在哪里。
如果我们能做到这一点,并缓解瓶颈,就能够提高性能。
当某一个瓶颈得到缓解后,另一个瓶颈可能会变得明显。我们的最终目标是实现可接受的备份持续时间。
Avamar 服务器端瓶颈:
如果到 Avamar Server 的所有备份速度缓慢,请考虑服务器端出问题的可能性。
如果在一天中的某些时间,到 Avamar Server 的所有备份速度都很慢,请考虑服务器端争用或网络瓶颈。
如果一个或几个备份客户端存在性能问题,请单独关注每个客户端。
服务器运行状况:
运行状况良好的 Avamar Server 不太可能成为备份的瓶颈。
检查备份服务器的运行状况。
- Avamar:如何在 Avamar Server 上运行 proactive_check.pl 运行状况检查脚本
- 如果要将备份发送到 Data Domain,请检查 DD 自动支持信息,或联系 Data Domain 支持人员以验证它是否正常
Avamar 会限制客户端连接,以保持可接受的性能水平。
服务器争用:
如果一天中存在备份性能较差的时间,这可能表示存在争用。
- sched.sh 脚本可以直观地显示备份缓慢时正在运行的活动。
- 请参阅 Avamar:如何使用 sched.sh 脚本检查 Avamar Server 上的历史备份、复制和维护活动。
- 检查是否有正在进行的维护任务(通过运行 status.dpn)
- 检查有多少个客户端会话处于活动状态
-
admin@utilitynode:~/>: avmaint session | grep path | wc -l
-
- 妥善安排维护和备份计划,以免它们时间重叠。
- 查看 status.dpn 和 top 命令的输出,以检查数据节点上的负载
- 在数据节点上运行 mapall 'iostat -x'。检查 %iowait、%idle 和 %util,以查看是否有任何磁盘的 I/O 带宽已饱和。
- 要隔离特定客户端的性能,请在 Avamar Server 未在执行维护任务或其他备份或复制时测试备份。
Data Domain 备份接收性能:
登录戴尔支持门户并查看:
网络端瓶颈:
如果您通过 WAN 备份客户端,则网络可能是瓶颈。
网络延迟:
这会影响客户端检查 Avamar Server 上是否存在哈希的速率。
- 运行从客户端到 Avamar Server 的 ping 命令,检查网络的丢包和延迟
网络带宽:
在备份期间,新数据必须通过网络发送到 Avamar Server。查看已完成备份的日志,并了解要发送的备份数据量。
2014-11-20 04:45:30 avtar Info <5156>: Backup #1180 timestamp 2014-11-20 04:45:28, 23 files, 5 folders, 291.7 GB (23 files, 4.316 GB, 1.48% new)
如果客户端和服务器通过 WAN 分隔,链路是否可以在备份窗口内传输必要的数据?
在这种情况下,需要传输的数据为 4.316 GB。
这些值都是相互关联的:
- 新备份数据量
- 可用于备份的时间
- 有效的网络带宽

更大的新数据量需要更多的网络带宽或更长的备份时间。
这些因素有现实的限制,但用户可以在一定程度上进行控制。
考虑是否可以控制中任何一项以实现及时备份。
如果怀疑存在网络瓶颈或服务器通信问题:
确认客户端与备份设备之间的网络吞吐量。
启用 avtar comstats 日志记录以便于故障处理。
客户端瓶颈:
确保这不是客户端到服务器的初始备份:
首次备份会比较慢,这是预期现象。
如果这是一个成熟的客户端,请检查备份配置最近是否有更改。
确保备份未过早取消:
在备份日志中搜索“canceled”。下面是一个示例,急切的用户取消了 L1 备份。
2013-11-05 12:15:29 avtar Info <5157>: PARTIAL Backup #14 timestamp 2011-11-05 12:13:36, 2,030 files, 562 folders, 397.3 MB (691 files, 17.44 MB, 4.39% new)
2013-11-05 12:15:29 avtar Info <7539>: Label "MOD-xxxxxxxxxx", scheduled to expire 11/12/11, none backup
2013-11-05 12:15:29 avtar Info <6083>: Backed-up 397.3 MB in 1.36 minutes: 17 GB/hour (89,593 files/hour)
2013-11-05 12:15:29 avtar Info <7883>: Finished at 2011-11-05 12:15:29 GMT Standard Time, Elapsed time: 0000h:01m:21s
2013-11-05 12:15:29 avtar Info <8468>: Sending wrapup message to parent
2013-11-05 12:15:29 avtar Info <5314>: Command failed (exit code 10013: Externally canceled)
在这种情况下,备份正常终止,数据作为“部分”备份保留。
尽管部分备份日志可指示备份性能,但合理的分析需要来自完整备份的日志。
检查日志以处理文件高速缓存或哈希高速缓存大小调整问题:
检查是否将限流标记传递给 avtar:
Avtar CPU 或网络限流会大大降低备份性能。
请参阅 Avamar:如何限制 Avamar Client 对系统资源(CPU、网络、I/O 和内存)的消耗(英文版)。
这可以在备份日志中检测到。
2013-09-06 14:22:13 avtar Info <6557>: Network bandwidth throttling is enabled, limiting to approx. 0.512 Mbps (62.50 KB/sec) 2013-09-06 14:22:13 avtar Info <6558>: CPU throttling is enabled, limiting CPU usage to approx. 70%
是否存在 Avamar Client CPU 或内存瓶颈?
Avamar 备份以硬件允许的最大速度运行,并与其他服务竞争资源。注意客户端的“日常作业”和忙碌时段。
使用任务管理器或进程资源管理器(在 Windows 上)或“top”命令(UNIX 或 Linux)监视客户端。这些检查可以发现备份期间是否出现 CPU 饱和。
戴尔有一个内部的“LogAnalyzer”工具,它可绘制一段时间内的资源消耗和性能图表。请与支持部门合作来使用此工具。
在备份期间,缓存文件将加载到内存中。检查客户端的内存使用情况,以观察页异常或客户端 RAM 不足的线索。
在 Data Domain 的 Avamar v7.x 客户端利用“分页缓存”(f_cache2.dat)时,这不太成为问题。
与传统的“单片”avtar 缓存相比,分页缓存可减少客户端上的内存占用。
检查客户端 I/O 瓶颈:
在客户端缓存大小调整之后,决定备份性能的下一个因素是托管备份数据并将其发送到 avtar 的存储系统。
确保目标存储运行状况良好:
确保目标存储设备不存在阻碍最佳性能的问题。
确保第三方软件未与与 avtar 竞争 I/O:
客户端上是否有任何应用程序与 Avamar Client 竞争存储 I/O?
防病毒软件的实时扫描或访问时扫描会极大地影响 Avamar Client 的性能。
是否可以将文件扫描配置为并行运行?
有时,备份数据跨多个卷托管,这些卷由不同的读取头提供服务。在这些情况下,可以配置卷并行,以便 Avamar 可以同时扫描多个卷。
确保客户端未使用 CIFS 或 NFS 备份数据
仅通过 NDMP 加速器支持 CIFS 或 NFS 数据的备份。
检查是否正在使用存储压缩或加密
如果目标数据位于在文件系统级别对数据进行压缩或加密的目标存储上,则备份性能可能会低于预期。
使用 Perfmon 分析 Windows 客户端资源瓶颈:
以下文章可帮助您创建性能图表,以了解客户端在某个时刻是否在等待任何特定资源。可以考虑与 LogAnalyzer 工具生成的图表配合使用。
Outlook 归档 .pst 文件备份
包含多个或大型 .pst 文件的备份可能会执行缓慢。
存储性能基准测试
检查托管目标数据的存储设备的性能。
正在备份的数据导致备份性能不佳:
备份缓慢的最常见原因是正在备份的数据的特性。
检查是否有大量新数据或更改的数据:
一些大型的新文件或修改后的文件可能会造成本应快速运行的备份的运行时间超出备份窗口。要识别这些文件,请参阅:
Windows 客户端
Linux 和 UNIX 客户端 — 检查客户端的数据集是否包含任何大型稀疏文件。
检查备份摘要行以了解备份范围并识别异常值:
在备份日志中搜索字符串“Backup #”或“Backed-up”。
2017-06-07 20:21:38 avtar Info <5156>: Backup #441 timestamp 2017-06-07 20:21:38, 2,653,523 files, 255,181 folders, 1,566 GB (10,777 files, 668.4 MB, 0.04% new) 2017-06-07 20:21:38 avtar Info <6083>: Backed-up 1,566 GB in 1281.60 minutes: 73 GB/hour (124,228 files/hour)
在调查备份性能时,此方法可以为您节省大量时间。
对于上述输出,请考虑:
- 这是初始备份还是 1 级备份。(都不是,因为备份标签为 #441)
- 备份中的文件数量是否合理。(260 万个文件是合理的)
- 文件与文件夹的比率是多少?(10:1,这是典型值)
- 数据集中的数据总量。(约 1.5 TB)
- 要处理的文件数和文件总数的比例。(大约“1.1 万个文件 / 250 万个文件”是合理的)
- 要处理的所有文件的总大小。(这只能是估计值)
- 要发送到 Avamar Server 的已更改数据量。(668 MB)
- 更改率是否合理。对于较小的数据集来说,可容忍较高的更改率(0.04% 是合理的)
- 考虑到备份的总体大小和范围,每小时的性能是否合理。(考虑到其他数字,每小时 12.4 万个文件将被视为性能缓慢)
通常,这些详细信息为我们提供了足够的数据来了解备份性能不佳的原因。
如有必要,请查看备份过程中生成的状态行消息。
确定这两个日志行中的任何值是否为异常值。换言之,它们是否大于或小于典型值?
如果您熟悉备份行为,则更容易检测异常。
文件与文件夹的比例
大多数客户数据集的文件与文件夹比例约为 10:1,并且 avtar 经过调整以反映这一点。
如果数据集的文件与文件夹比例较低(如下面的示例所示),在不进行调整的情况下,备份可能无法高效运行。
2015-11-18 00:34:32 avtar Info <5156>: Backup #75 timestamp 2015-11-18 00:24:43, 4,007,032 files, 1,974,043 folders, 1,589 GB (2,680 files, 419.4 MB, 0.03% new)
请参阅针对文件与文件夹比率低的数据集的 Avamar Client 备份性能调整。
使用 avtar 日志状态信息消息进行性能分析:
使用 Notepad++ 或类似工具,过滤日志以查找包含状态消息的 avtar Info 行。您可以使用包含 <5100> 或 <8688> 的代码条目来进行过滤,具体取决于 Avamar Client 的版本。这些行是 avtar 报告的定期状态消息。
检查第三方应用程序是否意外更新文件元数据:
某些应用程序可能会更改文件元数据。如果发生这种情况,Avamar 将备份整个文件。
查看 include 和 exclude 标记的用法。避免“include”语句:
《操作最佳实践》指南讨论了 Include 和 Exclude 列表。
Avamar 必须将备份数据集中的每个文件与两个列表进行比较,以确定是否要备份该文件。此比较过程会增加开销,并可能增加备份运行时间。
检查客户端的 avsar 目录是否存在 avtar.cmd 文件。
检查该文件是否包含任何有效的 --exclude 或 --exclude-from-file 语句。
如果某个目录或文件系统被排除,但使用了 include 标记,则 avtar 会扫描该目录或文件系统以查找已被告知要“include”的项目。
检查数据集是否包含重新解析点或存根文件:
如果数据集包含存根文件或指向存储在另一设备上的数据的指针,请务必小心谨慎。
如果 avtar 必须等待远程文件被调回,则备份性能会受到影响。
此类软件的示例包括:Enterprise Vault Archiver、Moonwalk 和 DiskXtender。
使用 Avamar 来宾安装备份虚拟客户端
- 由于硬件资源瓶颈的缘故,虚拟机的 Avamar 来宾备份运行缓慢并且超时(英文版)
- 由于 VMware vShield Endpoint Trend Micro Deep Security 的缘故,Avamar 虚拟机客户端来宾备份遇到性能缓慢问题(英文版)
v7.2 中由于文件扫描行为更改而出现的已知备份性能相关问题
Additional Information
其他提醒
- 确保虚拟机客户端不受资源限制,或者不遵守那些会影响 Avamar 备份快速完成能力的严格硬件限制。 在忙碌的计算机上,操作系统可能会过载或处理太多线程,从而导致严重的上下文切换。
- 利用《Avamar 操作最佳实践指南》来优化 Avamar 系统、备份安排和客户端高速缓存调整。
其它参考