如何使用ansible连续跟踪远程文件?

11
如何使用Ansible在已知位置的几个远程服务器上追踪文件?这个问题基于这个Hacker News thread上的评论:
“我们公司有数百台机器,使用ansible进行tail。如果我们想自定义日志视图,只需编辑playbook即可。我认为这比需要额外的npm包(更不用说定制的额外工作了)要方便得多。”

Ansible只是运行ssh命令,所以我想在运行shell命令时,在您的清单文件中的主机上运行tail命令会起作用。不过,我会让其他人回答官方答复。 - OneCricketeer
4
这是一种根本错误的方法。你正在使用铲子来涂墙。虽然你可能能够使用Ansible拼凑出一些东西,但它并不是这项工作的正确工具。你应该使用日志聚合/集中式日志系统。 - Mxx
当然,正确的方法确实是花时间建立一个日志聚合/集中日志系统。但是,我正在寻找一种快速而简单的解决方案,可以在不设置多个终端窗格的情况下尾随多个服务器的日志,其中每个窗格都从单个远程服务器尾随日志。 - neowulf33
3个回答

3
你可以使用ansible的 ad-hoc 命令:
 ansible atlanta -a "tail /homedir/myfile" -f 10

更新

Ansible只能在完成命令后打印输出。因此,我认为你想要的不可能实现,ansible可能不是你想要的工具。查看问题48703887

如果您真的想使用ansible来完成此任务,则可以在其中一个问题中发布的hack(我没有测试过,实际上我不建议这样做)。

我真的不知道HN的那个人在说什么,也许只是tail(不带-f)?


1
我需要使用“tail -f”持续监控日志。 - neowulf33

0

您可以使用daggy通过ssh进行流式命令,包括tail -f


0

虽然这理论上回答了问题,但最好在此处包含答案的基本部分,并提供参考链接。 - Draken

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接