Shell脚本在N系统上远程并行执行命令

时间:2017-04-05 15:33:47

标签: bash shell scripting automation

如何通过shell脚本并行在N系统上远程执行命令?命令为yum -y update

3 个答案:

答案 0 :(得分:1)

基本上我会这样做:

for SRV in srv1 srv2 srv3
do
    ssh ${SRV} "yum -y update" &
done
wait

它将在每台服务器上启动命令并等待一切完成。

您应该考虑在srv中添加不同的.ssh/config,并在每台服务器上使用公钥身份验证。

答案 1 :(得分:1)

GNU Parallel有一个功能:

N=10
parallel -j$N --nonall -S server1,server2,server3 yum -y update

也可以从文件中读取服务器:

N=10
parallel -j$N --nonall --slf hostfile yum -y update

答案 2 :(得分:0)

您可以尝试Cluster SSH。这是在许多机器中执行相同操作的简单方法。点击链接查看教程。