用途:当 playbook 因 UNREACHABLE、权限拒绝、MODULE FAILURE 或未定义变量而失败,或出现 SSH 连接失败、sudo 密码缺失、模板渲染失败、执行缓慢时,可按连接、认证、模块、语法四类错误系统诊断。
主要能力与用法: 连接问题先用 ssh -v -i /path/to/key user@hostname 测试,用 nc -zv hostname 22 检查端口,用 ansible-inventory --host hostname 验证清单解析;常见原因包括清单中 IP/主机名错误、防火墙拦截 22 端口、SSH 密钥权限非 600。 认证问题可用 ansible hostname -m ping -u user --private-key /path/to/key 显式测试;sudo 密码问题可运行 ansible-playbook playbook.yml --ask-become-pass,或在 /etc/sudoers 配置 NOPASSWD。 模块问题用 ansible-doc ansible.builtin.copy 查文档,并用 ansible --version 确认参数与版本匹配。 变量问题可用 {{ my_var | default('fallback') }} 设默认值,或用 ansible.builtin.debug 的 var 调试具体变量。 调试命令还包括 --syntax-check、--check、--step、--start-at-task、--limit。详细度从 -v 到 -vvvv,依次显示任务结果、任务输入参数、SSH 连接细节、插件内部信息,建议按需递增。 性能方面可在 ansible.cfg 中设置 callback_whitelist = profile_tasks 和 pipelining = True,不需要时用 gather_facts: no 跳过事实收集。
限制:资料未提供安装命令、收费信息、平台支持范围与具体版本要求,暂未提供。