我想知道如果为了通过 ssh 进行监视/报告而修改某种执行文件系统监视的工具(即 inotify-tools)是否会有帮助。它会帮助系统管理员能够做类似的事情inotify-watch 192.168.0.33:/home/deploy/script
吗?可能被监控的服务器应该满足一些先决条件,但这听起来可行吗?
我想知道如果为了通过 ssh 进行监视/报告而修改某种执行文件系统监视的工具(即 inotify-tools)是否会有帮助。它会帮助系统管理员能够做类似的事情inotify-watch 192.168.0.33:/home/deploy/script
吗?可能被监控的服务器应该满足一些先决条件,但这听起来可行吗?
老实说,这似乎是错误的工作方式。
首先,无法知道远程机器是否支持inotify。
其次,将传统的两部分通用解决方案组合成一个单独的特定解决方案似乎需要付出很多努力。使用 ssh 很少能最好地完成对远程机器的监控和报告。当您需要有关远程主机的这种级别的信息时,您通常希望在远程主机上放置一个可以进行监控的软件代理,然后在不同的机器上运行监控系统以轮询代理(或让代理报告背部)。
如果您想在不安装额外代理的情况下将此功能添加到机器,则 SNMP 将是合乎逻辑的选择(许多/大多数主机都支持开箱即用的 SNMP,或者拥有供应商提供的 SNMP 包)。或者,大多数基于代理的监控系统,例如 Nagios、BigBrother/Hobbit/BigSister、Munin 等,都提供定义您自己的插件的能力。创建一个基于 inotify 的插件并不难。
如果您不想使用成熟的监控系统来监控远程盒子,我会使用类似func的东西,它为此提供了比 ssh 更好的框架。
你考虑过穆宁吗?http://munin.projects.linpro.no/
正常的操作方法是让 munin-node 软件监听远程机器。munin监控软件会定期连接节点收集数据;它甚至可以通过 SSH 隧道做到这一点。(在常见问题解答中,我不能放两个链接,因为我的代表太低了)。
Munin 默认可以监控范围广泛的统计数据,包括文件系统监控。此外,为 munin-node 编写自己的插件非常容易,以收集您想要的数据。
您可能希望查看启用文件审核,这会导致系统记录文件事件。它相当灵活,不需要持久连接。审计可以通过命令行工具auditctl(8)进行搜索,因此您无需费力地翻阅大量无关数据。另一个好处是您可以获得用户帐户、进程 ID 等的记录。
至于远程监控,您可以让本地服务器为您执行任务并将数据发送出去,或者您可以通过 ssh 运行远程命令,以最适合您的需求为准。
是的,任何其他监控系统的方法都会有所帮助。你问是因为你写了一个包装吗?
fam可能是您正在寻找的。它有一个守护进程来执行本地检测,而 libfam 是一个库,可以与它对话以获得更独立于平台的通知。
我会使用您想要查看文件访问的任何工具,然后通过经过身份验证的 Web API 推送它,然后您可以在一个不错的 web-ui 中转换/存储/排序这些东西