summaryrefslogtreecommitdiffstats
path: root/agents/manual
diff options
context:
space:
mode:
Diffstat (limited to 'agents/manual')
-rw-r--r--agents/manual/fence_ack_manual.839
-rw-r--r--agents/manual/fence_ack_manual.in37
2 files changed, 76 insertions, 0 deletions
diff --git a/agents/manual/fence_ack_manual.8 b/agents/manual/fence_ack_manual.8
new file mode 100644
index 0000000..6b4cd14
--- /dev/null
+++ b/agents/manual/fence_ack_manual.8
@@ -0,0 +1,39 @@
+.TH FENCE_ACK_MANUAL 8 2009-12-21 cluster cluster
+
+.SH NAME
+fence_ack_manual \- a program to override fenced fencing operations
+
+.SH SYNOPSIS
+.B fence_ack_manual
+[OPTIONS]
+.I nodename
+
+.SH DESCRIPTION
+When
+.BR fenced (8)
+fails to fence a node, it retries indefinately.
+.BR fence_ack_manual (8)
+tells fenced to stop retrying and consider the node fenced.
+
+.P
+It is important that this only be done after the node has been manually
+turned off or prevented from writing to shared storage.
+Without this manual action and verification, the storage that fencing
+protects may become corrupted.
+
+.P
+When fenced fences a node that has no fence devices defined in the cluster
+configuration, the fencing operation fails. This failure will be repeated
+indefinately until fence_ack_manual is run by an operator to indicate
+the node is in a safe state to proceed.
+(Defining no fencing devices for node is the equivalent of using the
+fence_manual agent in previous versions.)
+
+.SH OPTIONS
+.TP
+.B \-h
+Print a help message describing available options, then exit.
+
+.SH SEE ALSO
+.BR fenced (8)
+
diff --git a/agents/manual/fence_ack_manual.in b/agents/manual/fence_ack_manual.in
new file mode 100644
index 0000000..e8b4998
--- /dev/null
+++ b/agents/manual/fence_ack_manual.in
@@ -0,0 +1,37 @@
+#!/bin/bash
+#
+# Manual override after fencing has failed.
+#
+
+if [ "$1" = "-n" ]; then
+ shift
+fi
+
+if [ -z "$1" ] || [ "${1:0:1}" = "-" ]; then
+ echo "usage:"
+ echo " $0 <nodename>"
+ echo " $0 -n <nodename>"
+ echo
+ echo "The -n flag exists to preserve compatibility with previous "
+ echo "releases of $0, and is no longer required."
+ exit 1
+fi
+
+declare answer
+
+echo "About to override fencing for $1."
+echo "Improper use of this command can cause severe file system damage."
+echo
+read -p "Continue [NO/absolutely]? " answer
+
+if [ "$answer" != "absolutely" ]; then
+ echo "Aborted."
+ exit 1
+fi
+
+while ! [ -e @clustervarrun@/fenced_override ]; do
+ sleep 1
+done
+
+echo $1>@clustervarrun@/fenced_override
+echo Done