Reference

pm(1)

power on/off nodes

NAME

powerman - power on/off nodes

SYNOPSIS

pm [OPTIONS] [ACTION [TARGETS ...]]

DESCRIPTION

powerman provides power management in a data center or compute cluster environment. It performs operations such as power on, power off, and power cycle via remote power controller devices. Target hostnames are mapped to plugs on devices in powerman.conf(5).

ACTIONS

-1, --on

Power ON targets.

-0, --off

Power OFF targets.

-c, --cycle

Power cycle targets.

-q, --query

Query plug status of targets, if specified, or all targets if not. Status is not cached; each time this option is used, powermand queries the appropriate devices. Targets connected to devices that could not be contacted (e.g. due to network failure) or had some other type of error or are reported as status "unknown". If possible, output will be compressed into host ranges.

-l, --list

List available targets. If possible, output will be compressed into a host range (see TARGET SPECIFICATION below).

-r, --reset

Assert hardware reset for targets.

-f, --flash

Turn beacon ON for targets.

-u, --unflash

Turn beacon OFF for targets.

-B, --beacon

Query beacon status of targets, if specified, or all targets if not.

-t, --temp

Query node temperature of targets, if specified, or all targets if not. Temperature information is not interpreted by powerman and is reported as received from the device on one line per target, prefixed by target name.

OPTIONS

-h, --server-host host[:port]

Connect to a powerman daemon on non-default host and optionally port.

-x, --exprange

Expand host ranges in query responses.

-V, --version

Display the powerman version number and exit.

-L, --license

Show powerman license information.

-H, --help

Show command usage.

-g, --genders

Interpret targets as genders attributes rather than node names. Each attribute is expanded to the list of nodes that have that attribute, then those lists are combined to make a list of target node names.

TEST/DEBUG OPTIONS

The following options may be helpful in the test environment or when debugging device scripts.

-T, --telemetry

Causes device telemetry information to be displayed as commands are processed. Useful for debugging device scripts.

-R, --retry-connect N

Retry connect to server up to N times with a 100ms delay after each failure.

-d, --device

Displays device status information for the device(s) that control the targets, if specified, or all devices if not.

TARGET SPECIFICATION

powerman target hostnames may be specified as comma separated or space separated hostnames or host ranges. Host ranges are of the general form: prefix[n-m,l-k,...], where n < m and l < k, etc., This form should not be confused with regular expression character classes (also denoted by ``[]''). For example, foo[19] does not represent foo1 or foo9, but rather represents a degenerate range: foo19.

This range syntax is meant only as a convenience on clusters with a prefixNN naming convention and specification of ranges should not be considered necessary -- the list foo1,foo9 could be specified as such, or by the range foo[1,9].

Some examples of powerman targets follows:

Power on hosts bar,baz,foo01,foo02,...,foo05
powerman --on bar baz foo[01-05]

Power on hosts bar,foo7,foo9,foo10
powerman --on bar,foo[7,9-10]

Power on foo0,foo4,foo5
powerman --on foo[0,4-5]

As a reminder to the reader, some shells will interpret brackets ([ and ]) for pattern matching. Depending on your shell, it may be necessary to enclose ranged lists within quotes. For example, in tcsh, the last example above should be executed as:

    powerman --on "foo[0,4-5]"

FILES

/usr/bin/powerman
/usr/bin/pm

ORIGIN

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.

SEE ALSO

powerman(1), powermand(8), httppower(8), plmpower(8), vpcd(8), powerman.conf(5), powerman.dev(5).

http://github.com/chaos/powerman

History

--device since Debian 6.0 (Squeeze); --exprange since Debian 6.0 (Squeeze); --genders since Debian 6.0 (Squeeze); --help since Debian 13 (Trixie); --license since Debian 6.0 (Squeeze); --retry-connect since Debian 13 (Trixie); --server-host since Debian 6.0 (Squeeze); --telemetry since Debian 6.0 (Squeeze); --version since Debian 6.0 (Squeeze); -H since Debian 13 (Trixie); -L since Debian 6.0 (Squeeze); -R since Debian 13 (Trixie); -T since Debian 6.0 (Squeeze); -V since Debian 6.0 (Squeeze); -d since Debian 13 (Trixie); -g since Debian 6.0 (Squeeze); -h since Debian 6.0 (Squeeze); -x since Debian 6.0 (Squeeze).

--beacon until Debian 12 (Bookworm); --beacon-all until Debian 12 (Bookworm); --cycle until Debian 12 (Bookworm); --flash until Debian 12 (Bookworm); --list until Debian 12 (Bookworm); --off until Debian 12 (Bookworm); --on until Debian 12 (Bookworm); --query until Debian 12 (Bookworm); --query-all until Debian 12 (Bookworm); --reset until Debian 12 (Bookworm); --soft until Debian 12 (Bookworm); --soft-all until Debian 12 (Bookworm); --temp until Debian 12 (Bookworm); --temp-all until Debian 12 (Bookworm); --unflash until Debian 12 (Bookworm); -0 until Debian 12 (Bookworm); -1 until Debian 12 (Bookworm); -B until Debian 12 (Bookworm); -D until Debian 12 (Bookworm); -N until Debian 12 (Bookworm); -P until Debian 12 (Bookworm); -Q until Debian 12 (Bookworm); -b until Debian 12 (Bookworm); -c until Debian 12 (Bookworm); -f until Debian 12 (Bookworm); -l until Debian 12 (Bookworm); -n until Debian 12 (Bookworm); -q until Debian 12 (Bookworm); -r until Debian 12 (Bookworm); -t until Debian 12 (Bookworm); -u until Debian 12 (Bookworm).