我有一个包含 50 多台 ubuntu 机器的 LAN。我想使用集中式 ldap 服务器更改整个 LAN 授权。我有一个正在运行的 LAN 服务器,并且我编写了一个脚本来完成所有客户端配置。
我不想通过 SSH 连接到每个系统并运行脚本。那么我能做些什么来同时在整个 LAN 上运行脚本吗?
答案1
PSSH 应该可以完成这项工作。您需要做的就是提供一个 known_hosts 文件和脚本:
pssh -h host-file --user -P ./script
答案2
对于少量的机器来说,类似下面的操作就可以正常工作。
ssh [email protected] 'uptime'
要访问所有较大的服务器组,您可以将其包装到 for 循环中,如下所示。或者
$SERVERS = server1 server2 server3
for SERVER in $SERVERS
do
ssh user@$SERVER 'uptime'
done
现在,对于 50 台服务器规模,你可能需要开始深入研究 Puppet(https://puppetlabs.com)或 ANSIBLE(https://www.ansible.com)。还有 SALT 和 CHEF。请参阅此文章对它们进行适当的比较。