标签: pdsh

多台服务器并行执行sh脚本

我正在尝试在循环中的多个服务器中执行操作,但我想在第一个服务器中启动我的操作并直接转到第二个,而无需等待第一个完成。

HOSTS="host1 host2"
    For hostname in ${HOST} ;
do ssh -tt ${USERNAME}@${hostname} << EOF
actions
exit
EOF
Done 
Run Code Online (Sandbox Code Playgroud)

任何人都有想法在 linux sh bash 中做到这一点?

先感谢您。

remote-management shell-script pdsh

5
推荐指数
1
解决办法
331
查看次数

SED 和 PDSH:向集群中从节点上的文件添加一行

我试图添加包含一个新行GATEWAY=10.0.10.1/etc/sysconfig/network集群中的每个32个从节点的文件。
我阅读了这篇关于如何使用 sed 插入一行的文章

这适用于我向本地文件添加一行:

sed -i.bak -e "\$aGATEWAY=10.0.10.1" test/test1
Run Code Online (Sandbox Code Playgroud)

这适用于我查看节点 32 上的文件:

pdsh -w n032 cat test/test1
Run Code Online (Sandbox Code Playgroud)

对我尝试在节点 32 上的文件中添加一行失败了:

pdsh -w n032 sed -i.bak -e "\$aGATEWAY=10.0.10.1" test/test1
Run Code Online (Sandbox Code Playgroud)

出现此错误:

n032: sed: -e expression #1, char 2: extra characters after command
pdsh@admin: n032: ssh exited with exit code 1
Run Code Online (Sandbox Code Playgroud)

我拥有要更改的文件:

pdsh -w n032 ls -al test/test1
Run Code Online (Sandbox Code Playgroud)

上面的命令显示我拥有它并且拥有读写 ( rw) 权限。

为什么会失败?

sed cluster pdsh

2
推荐指数
1
解决办法
925
查看次数

标签 统计

pdsh ×2

cluster ×1

remote-management ×1

sed ×1

shell-script ×1