记录 Ansible 输出

默认情况下,Ansible 会将有关剧本、任务和模块参数的输出发送到控制节点上的屏幕 (STDOUT)。 如果您想在日志中捕获 Ansible 输出,您有三个选项

  • 要在控制节点上的单个日志中保存 Ansible 输出,请设置 log_path 配置文件设置。 您可能还需要设置 display_args_to_stdout,这有助于通过在 Ansible 输出中包含变量值来区分相似的任务。

  • 要在单独的日志中保存 Ansible 输出(每个受管节点一个),请设置 no_target_syslogsyslog_facility 配置文件设置

  • 要将 Ansible 输出保存到安全的数据库,请使用 AWX 或 红帽 Ansible 自动化平台。 然后,您可以使用图表和/或 REST API 随着时间的推移查看基于主机、项目和特定清单的历史记录。

使用 no_log 保护敏感数据

如果您将 Ansible 输出保存到日志中,您会暴露 Ansible 输出中的任何机密数据,例如密码和用户名。 要使敏感值不出现在日志中,请使用 no_log: True 属性标记暴露这些值的任务。 但是,no_log 属性不会影响调试输出,因此请注意不要在生产环境中调试 Playbook。 有关示例,请参阅我如何在 Playbook 中保留机密数据?