NAME

seq - run a command on a cluster in sequence

SYNOPSIS

seq [-aeiq] [-g rungroup1,...,rungroupN] [-l username] [-w node1,...,nodeN] [-x node1,...,nodeN] [command ...]

DESCRIPTION

The seq utility can be used to run a command, or group of commands on a cluster of machines. The command or commands are run on a single node in the cluster, which is incremented in sequence on each invocation of seq The following options are available:

-a
The -a option modifies the behavior of seq when dealing with stdin. Normally all commands from stdin are run on the same machine. Specifying the -a option causes each command to be run on the next node in the seqence.

-e
Unless the -e option is specified, stderr from remote commands will not be reported to the user.

-i
The -i option will list information about the current cluster, and command groupings. It will also show you which command you are about to run, and your username if specified with the -l option.

-q
The -q option does not issue any commands, but displays information about the cluster.

-g
If the -g option is specified, followed by a comma separated list of group names, the command will only be run on that group of nodes. A node may be a part of more than one group if desired, however running without the -g option will run the command on the same node as many times as it appears in the file specified by the CLUSTER environment variable. This option is silently ignored if used with the -w option.

-l
If the -l option is specified, followed by a username, the commands will be run under that userid on the remote machines. Consideration must be taken for proper authentication, for this to work.

-w
If the -w option is specified, followed by a comma delimited list of machine names, the command will be run on each node in the list. Without this option, seq runs on the nodes listed in the file pointed to by the CLUSTER environment variable.

-x
The -x option can be used to exclude specific nodes from the cluster. The format is the same as the -w option, a comma delimited list of machine names. This option is silently ignored if used with the -w option.

ENVIRONMENT

seq utilizes the following environment variables.

CLUSTER
Contains a filename, which is a newline separated list of nodes in the cluster.

RCMD_CMD
Command to use to connect to remote machines. The command chosen must be able to connect with no password to the remote host. Defaults to rsh

RCMD_USER
The username to connect to remote machines as by default.

SEQ_FILE
Specifies a specific sequence file. This is a temporary file, which saves the number of the last node run on. It defaults to `/tmp/pid[.blm Pp.seq'.] Where [pid] is the pid of the parent process of seq. It may be useful to wire the SEQ_FILE to a particular file, in order to keep proper sequence when invoking seq from subshells or scripts.

DIAGNOSTICS

Exit status is 0 on success, 1 if an error occurs.

SEE ALSO

dsh(1), rsh(1), kerberos(3), hosts.equiv(5), rhosts(5)

HISTORY

The seq command appeared in clusterit 1.1.

AUTHOR

Seq was written by Tim Rightnour.

BUGS

The seq command works fine when used with the -w and -x flags. However the user may find that if the arguments are changed, or the flags are omitted on a subsequent run, the next node picked may not be predictable. The sequence is calculated on each invocation of seq and the sequence numbers recorded in the temporary file may not match up to a new sequence placed on the command line.