我有4台服务器,我们有相同模式的日志文件。对于每个serch /查询,我需要逐个登录所有服务器并执行命令。
是否可以提供一些命令,以便它会自动逐个登录所有这些服务器并从每个服务器获取输出?
我需要做哪些配置,设置等才能使其正常工作。 我是Linux Domain的新手。
答案 0 :(得分:4)
正如您的问题评论中所建议的那样,有许多工具可以帮助您在多台计算机上执行任务。我将添加到此列表并建议Ansible。它旨在通过ssh以非常简单的方式执行所有交互,并且配置非常少。
https://github.com/ansible/ansible
如果您要在~/.ssh/config
文件中定义server-1和server-2,那么ansible配置就像
[myservers]
server-1
server-2
然后在组
上运行命令$ ansible myservers -a uptime
答案 1 :(得分:2)
如果您的服务器被称为eenie
,meanie
,minie
和moe
,则只需执行
for server in eenie meanie minie moe; do
ssh "$server" grep 'intrusion attempt' /var/log/firewall.log
done
grep
命令不会显示报告结果的服务器;也许可以用ssh "$server" sed -n "/intrusion attempt/s/^/$server: /p" /var/log/firewall.log
答案 2 :(得分:-1)
使用https://sealion.com。您只需执行一个脚本,它将在您的服务器中安装代理并开始收集输出。它有一个方便的Web界面,可以查看所有服务器的输出。