TOC:
1 Introduction
1.1 What is a farm?
1.2 What is sssh/sscp?
2 Installation
2.1 From Tarball
2.2 Using RPM
3 Usage
3.1 sssh_create - create sssh/sscp farms
3.2 sssh - execute commands on every farmhost
3.3 sscp - send/retrieve files to/from every farmhost
4 Other stuff
4.1 Project page
4.2 Todo
4.3 Screenshots
-----------------------------------------------------------------------------
1 Introduction
===============
1.1 What is a farm?
-------------------
A farm is a logical group of hostnames/ip-addresses stored in a simple
textfile. Every farm has its own file stored in the farm directory defined
in sssh.cfg. These files are read by the sssh/sscp scripts.
1.2 What is sssh/sscp?
----------------------
sssh is a script that executes a command on every host in a farm via ssh.
sscp pushes/gets a specified file to/from every host in a farm using scp.
2 Installation
===============
2.1 Tarball
------------
tar zxvf sssh-version.tar.gz
mkdir -p /etc/sssh/farms
cp sssh.cfg to /etc/sssh
cp sssh ssh_create scp sssh_funcs /usr/local/bin
2.2 RPM
---------
rpm -ivh sssh-VERSION-noarch.rpm
3 Usage
========
The usage of sssh is pretty easy.
- create a farm (and pherhaps trusts)
- use sssh / sscp
General options (eg -L) can be passed to every script.
3.1 sssh_create - create sssh/sscp farms
-----------------------------------------
sssh_create creates farms for sssh/sscp usage.
Options:
-h Show this help message
-f farm farm name
-H IP/Hostnamelist seperated by commas
-L [-f farm] List available farms
List hosts in farm if -f farm is given
-t Create ssh trusts for nodes in farm
-l ssh trusts for user other than "me"
sssh/sscp will show a password prompt for every host without ssh trust.
3.2 sssh - execute commands on every farmhost
----------------------------------------------
sssh executes a command (-c) on every host in a specified farm (-f).
Options:
-f farm1[,..,farmN] specifies farm(s) on which will be executed
-H host1[,..,hostN] execute on these hosts. -H is a list of
IPs/Hostnames seperated by commas. This is very useful
if there was an error on some hosts of a previous farm
command
-c is the command to be executed on the hosts
of the specified farm(s). Clever quoting might be needed
in some cases.
-A execute on every hosts in every farm *warning*
A question to really execute is asked unless -q is given
-h Show help message
-l user Log in using this user name
-L [-f farm] List available farms
List hosts in farm if -f farm is given
-q Quiet - don't ask if -A is given
-t Create ssh trusts for nodes in farm/hostlist. sssh asks for
a password only once per host and adds the local public key to
the remote authorized_keys and fixes the permissions.
3.3 sscp - send/retrieve files to/from every farmhost
------------------------------------------------------
sscp can transfer files to (-p = push) or from (-g get) every host in a
farm. The hostname/IP listed in the farm is appended to the local filename
when files are retrieved from farm members.
Usage: ./sscp -f farm [-l user] -p localfile remotefile
Usage: ./sscp -f farm [-l user] -g remotefile localfile
./sscp -L [-f farm]
Options:
-A Copy from/to every host in every farm *warning*
A warning message is displayed unless -q is given
-f farm1[,..,farmN] specifies farm(s) from/to which files are got/pushed
-f is required unless -H is given.
-H host1[,..,hostN] IP/Hostnamelist seperated by commas. -H is a list of
IPs/Hostnames seperated by commas.
-l user Copy files using this remote user name
-L [-f farm[,farm,..] List available farms
List hosts in farm if -f farm is given
-g Get file from farm nodes
-p Push files to farm nodes
-h Show help message
-q don't ask if -A is given
4 Other stuff
==============
4.1 Project Page
-----------------
Visit http://sssh.sourceforge.net or http://www.sf.net/projects/sssh for more information on sssh/sscp.
4.2 Todo
---------
- exclude hosts
- farm sections (subgroups of farms)
4.3 Screenshots
---------