parallel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: parallel ssh path questions


From: Chris Covington
Subject: Re: parallel ssh path questions
Date: Sun, 25 Sep 2011 13:32:46 -0400

On Sun, Sep 25, 2011 at 12:55 PM, Ole Tange <tange@gnu.org> wrote:
>  my question is about the remote portion which i'm excited about
> using as well.
> the catch is in the environment that i'll be using parallel:
> 1) parallel will be available with the same path on every machine (ie
> /foo/bar/parallel) , but /foo/bar/parallel will not be in the $PATH. right
> now parallel just sshes to the remote boxes and then it fails because
> 'parallel' is not found.

You do not need GNU Parallel installed on the remote machines. It is
used for figuring out the number of CPUs, which you can pass to it
using the '/' notation. This command will not call parallel on
my4coremachine:

parallel -S 4/my4coremachine.example.net echo ::: bar

thanks Ole, that does work.  but can this remote path for parallel be configured so that I don't have to specify the CPUs for each host?  where would this be done in the code if not?
 
> 2) the user that parallel runs as will have a read-only homedir.

Since you do not need to call GNU Parallel on the remote machines I
reckon this will not be an issue.

you're right, it seems to work just fine.  

one more question for you, to get parallel ssh to work seamlessly I needed to reconfigure the ssh parameters as follows.  I didn't want to modify the ssh preferences for the user.  is there any way this can be configurable?

--- parallel    2011-09-25 13:16:47.429253000 -0400
+++ parallel.bak        2011-09-23 11:22:36.879041000 -0400
@@ -2641,9 +2641,9 @@
         if($::opt_controlmaster) {
             # Use control_path to make ssh faster
             my $control_path = $self->control_path_dir()."/ssh-%r@%h:%p";
-            $sshcmd = "ssh -n -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -S ".$control_path;
+            $sshcmd = "ssh -S ".$control_path;
             $serverlogin = $self->{'string'};
-            my $master = "ssh -n -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -MTS $control_path $serverlogin sleep 1";
+            my $master = "ssh -MTS $control_path $serverlogin sleep 1";
             if(not $self->{'control_path'}{$control_path}++) {
                 # Master is not running for this control_path
                 # Start it
@@ -2657,7 +2657,7 @@
                 }
             }
         } else {
-            $sshcmd = "ssh -n -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no"; $serverlogin = $self->{'string'};
+            $sshcmd = "ssh"; $serverlogin = $self->{'string'};
         }
     }
     $self->{'sshcommand'} = $sshcmd;

thanks
Chris

reply via email to

[Prev in Thread] Current Thread [Next in Thread]