This site best when viewed with a modern standards-compliant browser. We recommend Firefox Get Firefox!.

Linux-HA project logo
Providing Open Source High-Availability Software for Linux and other OSes since 1999.

USA Flag UK Flag

Japanese Flag

Homepage

About Us

Contact Us

Legal Info

How To Contribute

Security Issues

This web page is no longer maintained. Information presented here exists only to avoid breaking historical links.
The Project stays maintained, and lives on: see the Linux-HA Reference Documentation.
To get rid of this notice, you may want to browse the old wiki instead.

1 February 2010 Hearbeat 3.0.2 released see the Release Notes

18 January 2009 Pacemaker 1.0.7 released see the Release Notes

16 November 2009 LINBIT new Heartbeat Steward see the Announcement

Last site update:
2014-09-20 10:08:42

Shoot The Other Node In The Head (STONITH)

STONITH is a technique for NodeFencing, where the errant node which might have run amok with cluster resources is simply shot in the head. Normally, when an HA system declares a node as dead, it is merely speculating that it is dead. STONITH takes that speculation and makes it reality. "Make it so, Number One".

Reluctantly setting whimsy and humor aside...

There are a few properties a STONITH plugin must have for it to be usable in Heartbeat:

  1. It must never report false positives for reset. If a STONITH plugin reports that the node is down, it had better be down.
  2. It must support the RESET command (on and off are optional)
  3. When given a RESET or OFF command it must not return control to its caller until the node is no longer running. Waiting until it comes up again for RESET is optional.
  4. All commands should work in all circumstances:
    1. RESET when node is ON or OFF should succeed and bring the node up (or at least attempt to bring it up - it may not boot for other reasons).
    2. OFF when node is OFF should succeed.
    3. ON when node is ON should succeed.

If you don't follow these rules, BadThingsWillHappen - if not sooner, then later.


Etymological note: STONITH started out as a misspelling of another acronym (STOMITH), where the M stood for machine. At one point, AlanRobertson realized he had been misspelling it, but he decided he preferred his misspelled version, because it appealed to his sense of whimsy. It seems he liked the sort of Biblical feel to the the sound of STONITH, which to his ear is similar to the pseudo-King-Jamesean verb "stoneth" - as in "I stoneth thou". This appeal was enhanced by the parallels between a cluster fatally casting out one of its members for disobeying cluster rules, to the Biblical use of stoning as a fatal method of casting a human out of the community for their transgressions against God.


See Also

STONITH Agents, stonith directive (ha.cf), stonith_host directive (ha.cf), STONITH Daemon, Dunn's Law of Information, Node Fencing, External Stonith Plugins, Configuring STONITH plugins