Skip to end of metadata
Go to start of metadata

Contents

Introduction

Because RUSS services are called with string-based arguments and name=value attributes, perform fd-based I/O, and return exit values, they are ideally suited for use by both shell programs and lower-level programming languages.

The standard distribution of RUSS comes with a number of command line tools.

rudial and Helpers

Usage

RUDIAL(1)                                                    RUDIAL(1)
NAME
       rudial,  ruexec, ruhelp, ruls - Client-side tools for accessing
       russ servers

SYNOPSIS
       rudial [<option>] <op> <spath> [<arg> ...]
       ruexec [<option>] <spath> [<arg> ...]
       ruhelp [<option>] <spath> [<arg> ...]
       ruls [<option>] <spath> [<arg> ...]

DESCRIPTION
       These client-side tools are used to dial (connect  to)  a  russ
       serivce. When connected to a russ service, file descriptors are
       returned, corresponding to stdin, stdout, stderr  of  the  ser‐
       vice, and can be used as usual. (Note that the file descriptors
       returned depends on the service.)

       The standard exit code mechanism functions  as  usual  and,  in
       most cases, is returned by the service. Common exit codes are 0
       for success, 1 for error. When there is a problem with the dial
       step, and exit code of 126 or 127 may be returned.

       Options:
       -a|--attr <name=value>
              Pass a "name=value" string to the service.

       -b <bufsize>
              Set the buffer size for reading and writing operations.

       -t|--timeout <seconds>
              Allow  given  amount of time to dial before aborting and
              returning an error exit code.

       rudial is the generic form and takes a russ operation (<op>):
       execute
              Execute the service <spath>  on  behalf  of  the  client
              user.

       help   Return  help  for  the server or service associated with
              the <spath>.

       list   Return a list of services at the <spath>.

       The service path <spath> identifies a service as found  in  the
       service hierarchy of a russ server.

   Helper Programs
       To  reduce  verbosity  of the rudial call, some helper programs
       are provided.  All but ruls are direct replacements.

       ruexec is equivalent to "rudial execute".

       ruhelp is equivalent to "rudial help".

       ruls is equivalent to "rudial list" except when the <spath>  is
       a  local filesystem object (e.g., directory). In such a case, a
       modified directory listing is output. This is helpful when nav‐
       igating the filesystem and russ services.

SEE ALSO
       russ(7)

AUTHOR
       Written by John Marshall.

REPORTING BUGS
       Report bugs to: <...>.

COPYRIGHT
       Copyright © 2014 John Marshall.
       Unless  otherwise  indicated,  this software is available under
       the terms of the ls Apache License version 2.
russ 5.x                                                     RUDIAL(1)

rurun

Environment Variables

NameReq/OptDescription
RURUN_ENVoptionalComma-separated list of environment variable names to pass to the target.
RURUN_EXEC_METHODoptionalOne of simple, shell, login. Default is shell.
RURUN_PNET_ADDRrequired  pnet server address used to identify targets.
RURUN_RELAYoptionalRelay service to use to connect to targets when RURUN_PNET_ADDR points to a directory or file. Default is ssh.
RURUN_TIMEOUToptionalTimeout for connecting to the target.

Usage

usage: rurun [options] <target> <arg> ...
       rurun [--pnet <addr>] --count


Launch a program on a pnet target. If a pnet server specified
(command line or environment variable), the local host will be used.
If --count is specified, then the number of pnet targets is printed.


Options:
-a|--attr <name>=<value>
	Provide attribute/environment variable settings. A
	comma-separated list of environment variable names in
	$RURUN_ENV are also passed.
--debug
	Enable debugging. Or set RURUN_DEBUG=1.
--exec simple|shell|login
	Environment to launch with:
	simple - without shell
	shell - shell with basic environment
	login - shell with login environment
	Defaults to $RURUN_EXEC_METHOD or "shell".
--pnet <addr>
	Use a given pnet address. Defaults to $RURUN_PNET_ADDR.
--relay <name>
	Use a given relay service. Defaults to ${RURUN_RELAY} or
	"ssh".

rumpirun

rumpirun is a RUSS-specific wrapper for the underlying mpirun program as provided by OpenMPI or MPICH and typically passes all arguments without change.

Environment Variables

NameReq/OptDescription
RUMPIRUN_HOSTFILErequiredHost file containing index values of targets.
RUMPIRUN_LAUNCHERoptionalLauncher used to start tasks on targets. Default is rurun-mpi.
RUMPIRUN_MPIRUNoptionalPath of mpirun program. Default is the mpirun.
RUMPIRUN_ENVoptionalComma-separated list of environment variable names to be passed to targets.
RURUN_PNET_ADDR
RURUN_PNET_DIR
RURUN_PNET_FILE 
requiredAddress of pnet server or path to targets as given in a directory or file.
RURUN_EXEC_METHODoptional

See rurun.

Usage

See respective MPI implementations for usage.

MPICH

The following environment variables are set by rumpirun:

  • HYDRA_BOOTSTRAP
  • HYDRA_BOOTSTRAP_EXE
  • HYDRA_LAUNCHER
  • HYDRA_LAUNCHER_EXEC
  • HYDRA_HOST_FILE
  • HYDRA_LAUNCHER_AUTOFORK

and the following options:

  • -disable-hostname-propagation - forces hostname determinated to be done at the target

OpenMPI

The following environment variables are set by rumpirun:

  • OMPI_MCA_orte_default_hostfile
  • OMPI_MCA_orte_rsh_agent
  • OMPI_plm_rsh_disable_qrsh

ruservice

Usage

usage: ruservice <confname> {start|stop|restart|status|list}
       ruservice list|status
       ruservice -h|--help|help

Manage system configured RUSS servers. Configurations must be in
/etc/russ/conf.

Where:
<confname>	Configuration name which may be a directory or file
		(not including .conf). confname of "." means all
		configuration names.

Examples

Restart all services:

ruservice . restart

Get status of all service:

ruservice . status

Restart ssh service:

ruservice ssh restart

Notes:

  • assumes configuration file is at /etc/russ/conf/ssh.conf

Restart collection of services under fspc:

ruservice fspc restart

Notes:

  • assumes the collection of .conf files is at /etc/russ/conf/fspc
  • the name of the actual .conf file is not required unless it needs to be managed specifically
  • No labels