gpt4 book ai didi

linux - 一个 bash shell 程序,等待列表中的所有服务器启动,然后运行启动脚本

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:33:13 26 4
gpt4 key购买 nike

我正在尝试自动启动在 12 台 Linux 7 服务器网格上运行的应用程序(重启后)。

12 台服务器以随机顺序重新启动。

在启动驻留在 12 个服务器上的应用程序之前,所有服务器都需要运行。

我想做的是测试所有 12 台 Linux 7 服务器是否都已启动,然后当所有 12 台服务器都已启动时,我将继续执行命令的启动序列。

所有 12 个服务器都设置了 ssh key 。

猫服务器列表.txt 10.0.0.6 10.0.0.7 10.0.0.8 10.0.0.9 ... 10.0.0.18

我想ping一个服务器,然后等到ping成功,再转到下一个IP地址。

我为我的问题道歉。

如何编码?

从 IP 列表文件中读取第一行。先 Ping IP 直到成功,然后再 Ping 其他 IP 地址(一次一个)直到所有 12 个都成功。

然后,运行命令以在 12 个服务器的网格上启动应用程序。

问题:如何在 bash shell 中对此进行编码。

最佳答案

内循环可以简单到

while ! ssh "${connection_string}" -o ConnectTimeout=5 true
do
sleep 0.5
done

这会运行一个简单的命令,并在重试之间等待 0.5 秒。

关于linux - 一个 bash shell 程序,等待列表中的所有服务器启动,然后运行启动脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54055009/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com