SSH / OpenMPI:mpirun権限が拒否されましたが、sshは正常に動作します。

SSH / OpenMPI:mpirun権限が拒否されましたが、sshは正常に動作します。

OpenMPIを使用して4つのノード(すべてFedora 22を実行)で構成されたクラスタを設定しようとしています。

マスターノードでパスワードのないキー(~/.ssh/id_dsa)を作成し、~/.ssh/id_dsa.pubを3つのスレーブノードの~/.ssh/authorized_keysにコピーしました。したがって、マスターノードで、、、を実行しssh slave1ssh slave2パスワードssh slave3を入力しなくても、そのノードに正常に入ることができます。にも適用されますssh master

ただし、.thisを使用しようとしたときにmpirun実行するコマンドは次のとおりです。

/usr/lib64/openmpi/bin/mpirun -np 32 --hostfile .mpi_hostfile ./testprogram

これは出力の最初のビットです。

Permission denied, please try again.
Permission denied, please try again.
Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).
ORTE was unable to reliably start one or more daemons.

その後、を実行すると、ssh slave3「最後にログインに成功した後、ログイン試行が2回失敗しました」というメッセージが表示されます。したがって、mpirun試みたSSH認証が何らかの理由で失敗したようです。

を使用してパスワードなしのキーベース認証を実行できますが、ssh使用しない理由についてのアイデアはありますかmpirun

参考までに次のようになります.mpi_hostfile

# Host file for OpenMPI

# Master node, slots = num cores
localhost slots=8

# Slaves
slave1 slots=8
slave2 slots=8
slave3 slots=8

ベストアンサー1

これは、Open MPIがデフォルトでツリーベースのスタートアップスキームを使用するためです。たとえば、mpirunをスレーブ1として呼び出すマシンでsshを実行し、スレーブ1からスレーブ2にsshを呼び出すなどの操作を実行します。

バラよりhttp://blogs.cisco.com/performance/tree-based-launch-in-open-mpiそしてhttp://blogs.cisco.com/performance/tree-based-launch-in-open-mpi-part-2詳細については。

おすすめ記事