Manual for nodeshell
- nodeshell(8)
- nodeshell(8)
NAME
nodeshell - Execute command on many nodes in a noderange through ssh
SYNOPSIS
nodeshell [options] <noderange> <command to execute on each node>
DESCRIPTION
Allows execution of a command on many nodes in parallel. Like noderun(8), it
accepts and interpolates confluent attribute expressions as documented in
nodeattribexpressions(5). nodeshell provides stdout as stdout and stderr
as stderr, unlike psh which combines all stdout and stderr into stdout.
OPTIONS
-
-c COUNT,-f COUNT,--count=COUNTSpecify the maximum number of instances to run concurrently -
-l LOGINNAME,--loginname=LOGINNAMEUsername to use when connecting, defaults to current user. -
-m MAXNODES,--maxnodes=MAXNODESSpecify a maximum number of nodes to run remote ssh command to, prompting if over the threshold -
-n,--nonodeprefixDo not prefix output with node names -
-p PORT,--port=PORTSpecify a custom port for ssh -
-s SUBSTITUTION,--substitutename=SUBSTITITUTIONSpecify a substitution name instead of the nodename. If no {} are in the substitution, it is considered to be an append. For example, '-s -ib' would produce 'node1-ib' from 'node1'. Full expression syntax is supported, in which case the substitution is considered to be the entire new name. {node}-ib would be equivalent to -ib. For example, nodeshell -s {bmc} node1 would ssh to the BMC instead of the node.
EXAMPLES
- Running
echo hion for nodes -
# nodeshell n1-n4 echo hi
n1: hi
n2: hi
n3: hi
n4: hi - Setting a new static ip address temporarily on secondary interface of four nodes
# nodeshell n1-n4 ifconfig eth1 172.30.93.{n1}- If wanting to use literal {} in the command, they must be escaped by doubling
# nodeshell n1-n4 "ps | awk ''"
SEE ALSO
- November 2024
- nodeshell(8)