Avamar:错误的 DMA 设置和解决步骤导致 Isilon NDMP 备份挂起
摘要: Isilon 网络数据管理协议 (NDMP) 备份挂起显示 avtar 死锁循环和“无法找到信息节点的历史记录”错误。原因:直接内存访问 (DMA) 未设置为“通用”。每 KB 482157修复:使用 Isilon CLI 标记 Avamar 标记或更改 DMA。
本文适用于
本文不适用于
本文并非针对某种特定的产品。
本文并非包含所有产品版本。
症状
Isilon NDMP 备份挂起
在日志文件中观察到的指标
- 重复的死锁消息,指示服务器上没有工作可做且没有待处理内容。
- 历史记录处理报告零 NDMPHISTLISTLINE 消息。
- Mark EOF 历史记录显示
inode:0。 - Avtar 错误报告无法找到特定索引节点的历史记录。
- NDMP 历史记录线程报告文件历史记录数据耗尽,无法应答待处理
GETNDMPISILONHISTLIST消息。 - 调试信息显示处理
GETNDMPISILONHISTLIST请求目录索引节点。 - 响应指示无法查找索引节点的历史记录
4371567677。
[avtar] context::loop: Probable deadlock: No work to do and nothing pending on server. [avtar] context::loop: Probable deadlock: No work to do and nothing pending on server. [avtar] context::loop: Probable deadlock: No work to do and nothing pending on server.
[phist] isilontar_history::processhist::body handled 0 NDMPHISTLISTLINE messages, which is all that readhist sent
[phist] isilontar_history::processhist::mark_eof_history lastparent_done inode:0
Avtar Errors relating unable to find history for inode ####
avtar Error <8667>: NDMP history processing thread has read all file history data and is unable to answer remaining 3 GETNDMPISILONHISTLIST messages from the data processing thread
avtar Info <10765>: DEBUG: answering GETNDMPISILONHISTLIST message:CLIENTONLY_GETNDMPHISTLIST64=412 serial=0 seq=0 flags=:N:0 kind=0 for dir inode:4371567677 with done=false and best effort data histlist:(nil)
[avtar] backisilontardir::response unable to find history for inode '4371567677'
原因
Isilon 上的 DMA 设置不正确
Isilon 群集上的数据迁移加速器 (DMA) 类型配置的值不是 generic。此错误配置会阻止 Avamar 正确处理 NDMP 历史记录数据,从而导致死锁情况和历史记录查找失败。
- DMA 类型设置为非泛型值(例如,特定于供应商的值)会阻止 NDMP 历史记录处理线程进行应答
GETNDMPISILONHISTLIST消息。 - Avamar 日志反复显示“Probable deadlock:无需执行任何工作,服务器上也没有待处理的内容。”
- Avamar 报告错误,例如
avtar Error<8667>和“无法找到 Inode 的历史记录......”
记录错误配置的证据
[avtar] context::loop: Probable deadlock: No work to do and nothing pending on server. [phist] isilontar_history::processhist::body handled 0 NDMPHISTLISTLINE messages, which is all that readhist sent avtar Error <8667>: NDMP history processing thread has read all file history data and is unable to answer remaining 3 GETNDMPISILONHISTLIST messages from the data processing thread [avtar] backisilontardir::response unable to find history for inode '4371567677'
解决方案
修复 Isilon NDMP 备份死锁。
建议的解决方案 — 将 Isilon DMA 模式设置为“通用”
将 Isilon 群集上的数据迁移加速器 (DMA) 模式更改为通用模式可解决阻止 NDMP 历史记录处理的死锁条件。
- 使用具有以下条件的帐户登录 Isilon 群集:
admin权限的默认管理员。 - 验证当前 DMA 设置。
- 将 DMA 模式修改为
generic。 - 重新启动 NDMP 服务以应用更改。
- 确认 Avamar 备份作业完成且未挂起。
命令示例(在 Isilon CLI 上运行):
# Show current DMA mode isi storagepool settings view | grep dma # Change DMA mode to generic isi storagepool settings modify --dma-mode generic # Restart NDMP service svc_isilon restart ndmp
更改后,监视 avtar 用于删除死锁消息的日志,例如:
[avtar] context::loop: Probable deadlock: No work to do and nothing pending on server.
注意:将 DMA 模式切换为通用< 模式可能会影响其他基于 ADM 的集成的性能。在生产环境中应用此更改之前,请与任何第三方 ADM 供应商确认。
备用解决方案 — Avamar Client 标记解决方法
备用解决方案 — Avamar Client 标记解决方法
如果更改 Isilon DMA 设置不可行,请应用 Avamar Client 标记作为临时解决方法。
- 编辑 Avamar Client 配置文件 (
/etc/avamar/avtar.conf或适当的位置)。 - 添加标记
--disable-ndmp-history添加到 Avamar NDMP 备份命令行。 - 保存文件并重新启动 Avamar Client 服务。
- 运行测试备份以确保死锁不再发生。
编辑示例(替换现有的 NDMP 命令行):
# Original command avtar --ndmp ... # Modified command with workaround flag avtar --ndmp --disable-ndmp-history ...
重新启动 Avamar Client 服务:
systemctl restart avamar-client
注意:此标记禁用 NDMP 历史记录处理,这可能会限制报告和审核功能。在更正 DMA 设置之前,仅用作临时措施。
验证步骤
- 运行新的 Avamar NDMP 备份作业。
- 检查每个节点池的
avtar记录是否存在死锁消息和“无法查找信息节点的历史记录”错误。 - 确认备份成功完成,并且数据显示在 Avamar 控制台中。
- 如果问题仍然存在,请收集最新的
avtar登录并向戴尔支持部门创建案例。
在进行更改之前,请始终备份配置文件。不正确的修改可能会中断备份作。
请联系戴尔支持,如果您不确定任何步骤,请提出服务请求。
其他信息
如果更改了 DMA 设置,则必须强制执行新的级别 0。
在不正确的 DMA 下创建的先前备份不可用于数据恢复。
在不正确的 DMA 下创建的先前备份不可用于数据恢复。
受影响的产品
Avamar产品
Avamar, Avamar Plug-in for NDMP文章属性
文章编号: 000170820
文章类型: Solution
上次修改时间: 11 12月 2025
版本: 4
从其他戴尔用户那里查找问题的答案
支持服务
检查您的设备是否在支持服务涵盖的范围内。