ganeti-listrunner - Run commands in parallel over multiple machines
ganeti-listrunner -l logdir {-x executable | -c shell-cmd} {-f hostfile | -h hostlist} [-a aux-file] [-b batch-size] [-u username] [-A]
ganeti-listrunner is a tool to run commands in parallel over multiple machines. It differs from dsh or other tools in that it asks for the password once (if not using ssh-agent) and then reuses the password to connect to all machines, thus being easily usable even when public key authentication or Kerberos authentication is not available.
It can run either a command or a script (which gets uploaded first and deleted after execution) on a list of hosts provided either via a file (one host per line) or as a comma-separated list on the commandline. The output (stdout and stderr are merged) of the remote execution is written to a logfile. One logfile per host is written.
The options that can be passed to the program are as follows:
The exist status of the command will be zero, unless it was aborted in some way (e.g. ^C).
Run a command on a list of hosts:
listrunner -l logdir -c "uname -a" -h host1,host2,host3
Upload a script, some auxiliary files and run the script:
listrunner -l logdir -x runme.sh \
-a seed.dat -a golden.dat \
-h host1,host2,host3
dsh(1), cssh(1)