haskell-distributed / distributed-process

Cloud Haskell core libraries
http://haskell-distributed.github.io
713 stars 97 forks source link

simplelocalnet: how to use on master with several interfaces? #102

Open jwaldmann opened 11 years ago

jwaldmann commented 11 years ago

(I'm sorry for this being not exactly Haskell)

I wan to run C.H. on a cluster where the main node has several network interfaces:

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.6.0     0.0.0.0         255.255.255.0   U     0      0        0 eth1
192.168.5.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0
141.X.X.0      0.0.0.0         255.255.252.0   U     0      0        0 eth2
0.0.0.0         141.X.X.X   0.0.0.0         UG    0      0        0 eth2

client nodes have two interfaces in the local network (192.168.5/6.X) only

I can run C.H. processes on several of the client nodes, but I don't seem to be able to use the main node. Are the broadcasts going to the wrong places?

hyperthunk commented 11 years ago

It's possible your os isn't configured to multicast to the interface you're trying to use. What does netstat -nr look like?

jwaldmann commented 11 years ago
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
192.168.6.0     0.0.0.0         255.255.255.0   U         0 0          0 eth1
192.168.5.0     0.0.0.0         255.255.255.0   U         0 0          0 eth0
141.X.X.0       0.0.0.0         255.255.252.0   U         0 0          0 eth2
0.0.0.0       141.X.X.X         0.0.0.0         UG        0 0          0 eth2
hyperthunk commented 11 years ago

So I don't see a multicast range IP address in the routing table there. You need to add the route so that all the servers know about the group, something like route -nv add -net 228.0.0.4 -interface eth0 or whatever your flavour of *nix requires. I'd suggest using something like emcast or mnc to test that the machines are happily communicating in the first instance. Or just ip igmp join-group <ip-addr> and ping from another location or whatever.

hyperthunk commented 11 years ago

Did you have any joy with this @jwaldmann?