The powerman.conf file typically includes one or more of the remote power controller (RPC) device files provided in the /etc/powerman directory; sets a few global options; instantiates RPC devices with unique names, hostnames, and ports; and maps node names to RPC's and plug numbers.

Network-attached RPC's are instantiated with device lines of the form:

  • device "name" "type" "host:port"

Serial-attached RPC's are instantiated with device lines of the form:

  • device "name" "type" "special file" "flags"

where special file is the full path to a tty device, and flags is a serial parameter specification in a form similar to that used by lilo, e.g. "9600,8n1". RPC's that are accessed via coprocesses are instantiated as follows:

  • device "name" "type" "process |&"

where process is the full path to a process whose standard output and input will be controlled by powerman, e.g. "/usr/bin/conman -Q -j rpc0 |&".


The following example is a 16-node cluster that uses two 8-plug Baytech RPC-3 remote power controllers.

include "/etc/powerman/"  # include def for "baytech" RPC

tcpwrappers yes                      # enable TCP wrappers

# listen ""             # uncomment to listen on all interfaces

# Alias example - alias can be used in target specifications
alias "pengra_service" "pengra[0-1]"
alias "pengra_compute" "pengra[2-15]"

# Power controller: device <name> <type> <hostname:port> [<flags>]
device "pow0" "baytech" "pow0:23"  # instantiate pow0
device "pow1" "baytech" "pow1:23"  # instantiate pow1

# Plugs: node <name> <device> [<plug>]
node "pengra[0-7]" "pow0" "[1-8]"  # map pengra0...pengra7 to pow0 plug 1-8
node "pengra[8-15]" "pow1" "[1-8]" # map pengra8...pengra15 to pow1 plug 1-8





PowerMan was originally developed by Andrew Uselton on LLNL's Linux clusters. This software is open source and distributed under the terms of the GNU GPL.

RELATED TO powerman.conf…