corosync クラスターのテストに取り組んでいます。リソースがPythonを使用して別のノードに確実に移行されるように、フローティングIPを持つインターフェイスを失敗させようとしています。
ここでのジレンマは、私のコマンドがリモート マシン上で実行されることですが、テスト コードが応答を待って永遠にハングし、失敗が挿入されたためにノードが再起動されることです。
ssh = SSHClient(self.get_ms_ip(ms),
self.get_ms_user(ms),
self.get_ms_password(ms))
ssh.connect()
self.logger.info("Failing FIP eth now on %s" % ms)
ssh.exec_command(cmd, timeout=1)
#Code never reached this comment.
Pythonでは、コマンドを送信して、戻りを待たずに続行するにはどうすればよいですか? ここで提案されているように、ssh.exec_commandをsubprocess.Popenでラップしようとしましたが、プロセスを実行して待機しないでくださいが、何も違いはありませんでした。