snow, socket cluster: problem with path to rscript
On 15 April 2009 at 07:16, Dirk Eddelbuettel wrote:
| On 15 April 2009 at 17:29, Matthieu Stigler wrote:
| | >> So it is now working for the local computer with. However, when trying to | | >> use the external computer, it seems to be working but nothing happens after | | >> he asked for the last password... | | >> | | > | | > This tells you is that "something went wrong". The basic strategy in this case | | > is to use the "outfile" option to hopefully capture an error message. You might | | > need to set outfile differently for different slaves, particularly if | | > you're starting | | > more than one on the same machine, but I suggest just starting one slave | | > on 210 to avoid the issue. So do something like: | | > | | > | | >> host210 <- list(host = "mat at 192.100.100.210", rscript = "/usr/bin/Rscript", | | >> | | > + outfile="/tmp/log.txt") | | > | | >> cl2 <- makeCluster(list(host210), type = "SOCK") | | >> | | > | | > | | Ok, thanks for pointing out this methid. | | | | I tried it and got following error message. This does not seem not be | | computer specific (tried to do it to other host 213, and from other host | | 213 to 212, always same error message): | | | | starting worker for ubuntu:10187 | | | | Error in socketConnection(master, port = port, blocking = TRUE, open = "a+b") : | | | | unable to open connection | | | | Calls: local ... slaveLoop -> recvData -> makeSOCKmaster -> socketConnection | | | | In addition: Warning message: | | | | In socketConnection(master, port = port, blocking = TRUE, open = "a+b") : | | | | ubuntu:10187 cannot be opened | | | | Execution halted | | | | | | Is it related to ssh or snow? I did not find any reference to that prob | | googling for it... | | Test for it --- can you actually issue an ssh command for the _script_ on the | _machine_ you have specified ? I.e. run | | $ ssh mat at 192.100.100.210 /usr/bin/Rscript --version | | where I added --version to make sure Rscript has something to do. Unless | this works 'by itself', you cannot expect to use it. That's what I get for posting before the coffee settles in. Thanks to Luke for correcting the test for socket rather ssh connections. Yet when I specify "SOCK" as type, I still get noise [1] from ssh:
cl <- makeSOCKcluster(c("l1", "l2"))
Control socket connect(/home/deddelbuettel/.ssh/master-deddelbuettel at l1:22): Connection refused ControlSocket /home/deddelbuettel/.ssh/master-deddelbuettel at l1:22 already exists, disabling multiplexing Control socket connect(/home/deddelbuettel/.ssh/master-deddelbuettel at l2:22): Connection refused ControlSocket /home/deddelbuettel/.ssh/master-deddelbuettel at l2:22 already exists, disabling multiplexing
str(cl)
List of 2 $ :List of 3 ..$ con :Classes 'sockconn', 'connection' atomic [1:1] 5 .. .. ..- attr(*, "conn_id")=<externalptr> ..$ host: chr "l1" ..$ rank: int 1 ..- attr(*, "class")= chr "SOCKnode" $ :List of 3 ..$ con :Classes 'sockconn', 'connection' atomic [1:1] 6 .. .. ..- attr(*, "conn_id")=<externalptr> ..$ host: chr "l2" ..$ rank: int 2 ..- attr(*, "class")= chr "SOCKnode" - attr(*, "class")= chr [1:2] "SOCKcluster" "cluster"
implying that you'd still want to sort out ssh access to the hosts even when
you use socket connections.
Dirk
[1] I am using the following in ~/.ssh/config which can speed up multiple
connections to the same machines which is my use case at work:
-----------------------------------------------------------------------------
Host *
ControlPath ~/.ssh/master-%r@%h:%p
ControlMaster auto
ForwardAgent yes
ForwardX11 yes
ForwardX11Trusted yes
-----------------------------------------------------------------------------
Three out of two people have difficulties with fractions.