[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: running same command on multiple servers
From: |
Ole Tange |
Subject: |
Re: running same command on multiple servers |
Date: |
Thu, 24 May 2018 01:23:36 +0200 |
On Mon, May 14, 2018 at 2:39 AM, Ryan Brothers <ryan.brothers@gmail.com> wrote:
> I have a few questions on parallel I was hoping you could help with relating
> to running the same command on multiple servers. I'm running version
> 20180422.
>
> 1) When I run:
>
> parallel --results test.csv echo ::: a b c
>
> I get an error:
>
> Can't use an undefined value as a symbol reference at /usr/bin/parallel line
> 8906.
>
> Is that the correct way to run it to have output into a csv file?
You found a bug. Fixed in 20180522.
> 2) When I run:
>
> parallel --results a --nonall -S $SERVER1,$SERVER2 echo a b c
>
> I noticed that a results directory does not get created. Should it be
> created in this case?
Currently --results is incompatible with --nonall. Would the expected
output be something like:
a/server/$SERVER1/1/a/[...files...]
a/server/$SERVER2/1/a/[...files...]
a/server/$SERVER1/1/b/[...files...]
a/server/$SERVER2/1/b/[...files...]
a/server/$SERVER1/1/c/[...files...]
a/server/$SERVER2/1/c/[...files...]
> 3) Similarly, this doesn't output anything to the screen:
>
> parallel --results -.csv --nonall -S $SERVER1,$SERVER2 echo a b c
This is also not implemented, but I can envision what this should look
like: Basically the same output as --joblog - but with the value
columns added.
As --nonall/--onall is somewhat of a hack, it might not be easy to get
working, though.
> 4) What I'm really trying to get at with these questions is I'm currently
> using parallel-ssh (https://code.google.com/archive/p/parallel-ssh), but not
> sure if it's still being maintained. With pssh, I can run the same command
> on many servers and get back the results of running each command on each
> server - as an example, I may want to run "yum update" on a bunch of
> servers.
Try:
parallel --tag --joblog my.log --nonall -S $SERVER1,$SERVER2 echo a b c
cat my.log
> Is it possible to have the output from parallel be similar to the output
> that pssh provides? pssh displays each server you ran the command on with a
> success/failure indicator, and then it also logs all output into files,
> naming each file with the server name.
Currently that is not possible. But it is not a bad idea.
/Ole