We're currently setting up a small cluster used for parallel
rendering. For convinience we use a master server which "hides" a set
of dedicated nodes behind NAT. However, we also want to connect
external workstations in a flexible manner. We've set up the routes so
that each external machine can communicate directly with the nodes
behind the NAT, and vice versa. We've also verified communication on
random ports using a simple python socket script.
However, the communication still fails in MPI with a message like:
[localhost.localdomain:17383] *** An error occurred in MPI_Barrier
[localhost.localdomain:17383] *** on communicator MPI_COMM_WORLD
[localhost.localdomain:17383] *** MPI_ERR_INTERN: internal error
[localhost.localdomain:17383] *** MPI_ERRORS_ARE_FATAL (goodbye)
Before posting additonal debug info, I want to check if anyone has
succedded in setting up an MPI cluster with "internal" and "external"
nodes seperated by NAT.
Note also that this is not a crucial problem, we could also make all
nodes "external", but a solution with NAT would be quite practical.
Regards, Gunnar Johansson