Learn R Programming

nws (version 1.7.0.1)

sshcmd: Sleigh Auxiliary Function

Description

This function is used by the sleigh constructor when starting workers on remote nodes using the ssh command. Note that it doesn't actually start any workers directly: it simply returns the program name and arguments to start a worker on the specified node.

Usage

sshcmd(host, options) sshforwardcmd(host, options)

Arguments

host
Name of the worker machine to be started.
options
An environment or list that contains information used to construct the command. See defaultSleighOptions for more information.

Value

A character vector, whose first element is the command that will be executed to start the worker, and whose subsequent elements are the arguments to the command.

Details

sshcmd currently uses the following options: user, wrapperDir, workerWrapper, and python. The user option is the most useful.

sshforward works like sshcmd, but it makes use of the ssh -R argument to tunnel the NWS server connection back to the master machine. It uses the options nwsHostRemote and nwsPortRemote to determine what bind address and port should be forwarded back to the master machine.

Note that when using sshforwardcmd, you must specify a different value of nwsHostRemote, usually 'localhost'.

See Also

sleigh, defaultSleighOptions

Examples

Run this code
## Not run: 
# # Create a sleigh with workers on nodes n1 and n2 started via ssh:
# s <- sleigh(launch=sshcmd, nodeList=c('n1', 'n2'))
# 
# # Same as previous, but as user 'frank':
# s <- sleigh(launch=sshcmd, nodeList=c('n1', 'n2'), user='frank')
# 
# # Create two tunnels from workers n1 and n2 back the nws server
# # on the local machine:
# s <- sleigh(launch=sshforwardcmd, nodeList=c('n1', 'n2'),
#             nwsHostRemote='localhost')
# 
# # Same as the previous example, but use port 9876 in case either
# # worker machine already has an nws server bound to port 8765:
# s <- sleigh(launch=sshforwardcmd, nodeList=c('n1', 'n2'),
#             nwsHostRemote='localhost', nwsPortRemote=9876)
# ## End(Not run)

Run the code above in your browser using DataLab