pssh,超时,被信号 9 杀死

pssh, Time out, killed by signal 9

我在其他机器上使用PSSH到运行命令来实现parallel compute使用IPyParallel,但是我遇到了一个问题,我的命令是

pssh -P -h ip.txt -i ipengine --file=~/parallel/test/ipcontroller-engine.json

过了一会儿,它返回:

[1] 11:54:41 [FAILURE] 192.168.0.112 Timed out, Killed by signal 9
Stderr: 2015-10-12 11:53:41.593 [IPEngineApp] Loading url_file u'/home/fit/parallel/test/ipcontroller-engine.json'
2015-10-12 11:53:41.595 [IPEngineApp] Registering with controller at tcp://192.168.0.115:59413
2015-10-12 11:53:41.628 [IPEngineApp] Starting to monitor the heartbeat signal from the hub every 3010 ms.
2015-10-12 11:53:41.630 [IPEngineApp] Completed registration with id 0
[2] 11:54:41 [FAILURE] 192.168.0.104 Timed out, Killed by signal 9
Stderr: 2015-10-12 11:53:41.647 [IPEngineApp] Loading url_file u'/home/fit/parallel/test/ipcontroller-engine.json'
2015-10-12 11:53:41.648 [IPEngineApp] Registering with controller at tcp://192.168.0.115:59413
2015-10-12 11:53:41.682 [IPEngineApp] Starting to monitor the heartbeat signal from the hub every 3010 ms.
2015-10-12 11:53:41.684 [IPEngineApp] Completed registration with id 1

我认为PSSH有问题,但我不知道如何解决。

谷歌搜索后,我发现如果不输入-t选项,pssh命令只会持续60秒。 所以,为了解决这个问题,我输入命令

pssh -P -h ip.txt -t 100000000 -i ipengine --file=~/parallel/test/ipcontroller-engine.json

并且该命令将在 100000000 秒后被终止

更新2020/08/28

感谢@Nicolas Thery and @Setzer22,您可以设置 -t 0 来禁用超时功能,而不是设置任意大的值。

-t timeout
--timeout timeout
Make connections time out after the given number of seconds. With a value of 0, pssh will not timeout any connections.

将 pssh 的超时设置为 0 以禁用默认的 60 秒超时。 -t 0

pssh -P -t 0 -h host_file <COMMAND>

最上面的答案表明超时非常长,您可以将其禁用。