STONITH(8)

NAME
stonith - extensible interface for remotely powering down a node in the cluster

SYNOPSIS

stonith -h

stonith [-s] [-h] -L

stonith [-s] [-h] -t stonith-device-type -n

stonith [-s] [-h] -t stonith-device-type {name=value... | -p stonith-device-parameters | -E | -F stonith-device-parameters-file} [-c count] [-l] [-S]

stonith [-s] [-h] -t stonith-device-type {name=value... | -p stonith-device-parameters | -E | -F stonith-device-parameters-file} [-c count] [-T {reset | on | off}] [nodename]

DESCRIPTION

The STONITH module provides an extensible interface for remotely powering down a node in the cluster (STONITH = Shoot The Other Node In The Head). The idea is quite simple: when the software running on one machine wants to make sure another machine in the cluster is not using a resource, pull the plug on the other machine. It's simple and reliable, albeit admittedly brutal.

OPTIONS

The following options are supported:

-c count
    Perform any actions identified by the -l, -S and -T options count times.

-F stonith-device-parameters-file
    Path of file specifying parameters for a stonith device. To determine the syntax of the parameters file for a given device type run:

        # stonith -t stonith-device-type -n

    All of the listed parameters need to appear in order on a single line in the parameters file and be delimited by whitespace.

-E
    Read the configuration from the environment. The environment variable names are the same as the parameter names.

-h
    Display detailed information about a stonith device including description, configuration information, parameters and any other related information. When specified without a stonith-device-type, detailed information on all stonith devices is displayed.

    If you don't yet own a stonith device and want to know more about the ones we support, this information is likely to be helpful.

-L
    List the valid stonith device types, suitable for passing as an argument to the -t option.

-l
    List the hosts controlled by the stonith device.

-n
    Output the parameter names of the stonith device.

name=value
    Parameter, in the form of a name/value pair, to pass directly to the stonith device. To determine the syntax of the parameters for a given device type run:

        # stonith -t stonith-device-type -n

    All of the listed parameter names need to be passed with their corresponding values.

-p stonith-device-parameters
    Parameters to pass directly to the stonith device. To determine the syntax of the parameters for a given device type run:

        # stonith -t stonith-device-type -n

    All of the listed parameter names need to appear in order and be delimited by whitespace.

-S
    Show the status of the stonith device.

-s
    Silent operation. Suppress logging of error messages to standard error.

-T action
    The stonith action to perform on the node identified by nodename. Chosen from reset, on, and off.

        Note
        If a nodename is specified without the -T option, the stonith action defaults to reset.

-t stonith-device-type
    The type of the stonith device to be used to effect stonith. A list of supported devices for an installation may be obtained using the -L option.

-v
    Ignored.

EXAMPLES

To determine which stonith devices are available on your installation, use the -L option:

    # stonith -L

All of the supported devices will be displayed one per line. Choose one from this list that is best for your environment - let's use wti_nps for the rest of this example. To get detailed information about this device, use the -h option:

    # stonith -t wti_nps -h

Included in the output is the list of valid parameter names for wti_nps. To get just the list of valid parameter names, use the -n option instead:

    # stonith -t wti_nps -n

All of the required parameter names will be displayed one per line. For wti_nps the output is:

    ipaddr
    password

There are three ways to pass these parameters to the device. The first (and preferred) way is by passing name/value pairs on the stonith command line:

    # stonith -t wti_nps ipaddr=my-dev-ip password=my-dev-pw ...

The second way, which is maintained only for backward compatibility with legacy clusters, is passing the values in order on the stonith command line with the -p option:

    # stonith -t wti_nps -p "my-dev-ip my-dev-pw" ...

The third way, which is also maintained only for backward compatibility with legacy clusters, is placing the values in order on a single line in a config file:

    my-dev-ip my-dev-pw

... and passing the name of the file on the stonith command line with the -F option:

    # stonith -t wti_nps -F ~/my-wtinps-config ...

To make sure you have the configuration set up correctly and that the device is available for stonith operations, use the -S option:

    # stonith -t wti_nps ipaddr=my-dev-ip password=my-dev-pw -S

If all is well at this point, you should see something similar to:

    stonith: wti_nps device OK.

If you don't, some debugging may be necessary to determine if the config info is correct, the device is powered on, etc. The -d option can come in handy here - you can add it to any stonith command to cause it to generate debug output.

To get the list of hosts controlled by the device, use the -l option:

    # stonith -t wti_nps ipaddr=my-dev-ip password=my-dev-pw -l

All of the hosts controlled by the device will be displayed one per line. For wti_nps the output could be:

    node1
        node2
        node3

To power off one of these hosts, use the -T option:

    # stonith -t wti_nps ipaddr=my-dev-ip password=my-dev-pw -T off node

SEE ALSO

heartbeat(8), meatclient(8)

AUTHORS

Alan Robertson <alanr@unix.sh>
    stonith

Simon Horman <horms@vergenet.net>
    man page

Florian Haas <florian.haas@linbit.com>
    man page