gpt4 book ai didi

debugging - 如何调试 Ansible 问题?

转载 作者:行者123 更新时间:2023-12-03 06:36:25 26 4
gpt4 key购买 nike

有时,ansible 不会执行您想要的操作。而且增加冗长也无济于事。例如,我现在尝试启动 coturn 服务器,该服务器附带 systemd 操作系统 (Debian Jessie) 上的 init 脚本。 Ansible 认为它正在运行,但事实并非如此。我如何了解幕后发生的事情?执行哪些命令,以及哪些输出/退出代码?

最佳答案

调试模块

  • 最基本的方法是通过添加 -vvv 来运行 ansible/ansible-playbook 并增加详细级别执行线。

  • 对于用 Python (Linux/Unix) 编写的模块,最彻底的方法是使用环境变量运行 ansible/ansible-playbook ANSIBLE_KEEP_REMOTE_FILES 设置为 1(在控制机上)。

它会导致 Ansible 在目标计算机上保留其执行的 Python 脚本(无论成功与否)的精确副本。

脚本的路径打印在 Ansible 日志中,对于常规任务,它们存储在 SSH 用户的主目录下:~/.ansible/tmp/

确切的逻辑嵌入在脚本中并取决于每个模块。有些使用带有标准或外部库的 Python,有些则调用外部命令。

调试剧本

  • 与调试模块类似,使用 -vvv 参数增加详细级别会导致更多数据打印到 Ansible 日志中

  • 自 Ansible 2.1 起 Playbook Debugger允许交互式调试失败的任务:检查、修改数据;重新运行任务。

调试连接

  • ansible/ansible-playbook 调用添加 -vvvv 参数会导致日志包含连接的调试信息。<

关于debugging - 如何调试 Ansible 问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42417079/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com