cluster: STABLE3 - man pages: groupd
by David Teigland
Gitweb: http://git.fedorahosted.org/git/cluster.git?p=cluster.git;a=commitdiff;h=...
Commit: 295fae90ef68a9e9d22e5e7f6fff1f72b23f8474
Parent: d46ace8212615dfad24c408eebb94e32b24fe729
Author: David Teigland <teigland(a)redhat.com>
AuthorDate: Tue Jan 19 11:54:33 2010 -0600
Committer: David Teigland <teigland(a)redhat.com>
CommitterDate: Tue Jan 19 14:42:49 2010 -0600
man pages: groupd
update for cluster3
Signed-off-by: David Teigland <teigland(a)redhat.com>
---
group/man/groupd.8 | 107 ++++++++++++++++++++--------------------------------
1 files changed, 41 insertions(+), 66 deletions(-)
diff --git a/group/man/groupd.8 b/group/man/groupd.8
index f21d1b9..5c83cd6 100644
--- a/group/man/groupd.8
+++ b/group/man/groupd.8
@@ -1,89 +1,64 @@
-.TH groupd 8
+.TH GROUPD 8 2009-01-19 cluster cluster
.SH NAME
-groupd - the group manager for fenced, dlm_controld and gfs_controld
+groupd \- compatibility daemon for fenced, dlm_controld and gfs_controld
.SH SYNOPSIS
-.B
-groupd
-[\fIOPTION\fR]...
+.B groupd
+[OPTIONS]
.SH DESCRIPTION
-The group daemon, groupd, provides a compatibility layer between the corosync
-closed process group (CPG) service and the fenced, dlm_controld and
-gfs_controld daemons. New versions of fenced/dlm_controld/gfs_controld no
-longer require this compat layer, and can run without groupd. They use libcpg
-directly, making them much more robust. This makes them incompatible with old
-(cluster2) versions. Explicitly enable the new incompatible mode with:
+The groupd daemon and libgroup library are used by the fenced,
+dlm_controld and gfs_controld daemons when they are operating in
+cluster2-compatible mode to perform a rolling cluster upgrade from
+cluster2 to cluster3.
- <group groupd_compat="0"/>
+See
+.BR cman (5)
+for more information on the
+.B upgrading
+configuration option needed to perform a rolling upgrade.
-This is the default if no groupd_compat setting exists. If compatibility with
-old (cluster2) nodes is necessary (mixing cluster2 and cluster3 nodes should
-be avoided), the daemons can be run in the old mode, using groupd as before.
-Enable this mode with:
+When the upgrading option is enabled, cman adds the following to the
+online configuration:
<group groupd_compat="1"/>
-To perform a rolling upgrade from cluster2 to cluster3, add the
-groupd_compat="1" setting to cluster.conf before upgrading any existing nodes
-or adding any new cluster3 nodes. The next time the entire cluster is shut
-down, after all nodes are upgraded, groupd_compat can be changed to 0 (or
-removed entirely). \fBWarning:\fP groupd_compat must not be changed from 1 to
-0 in a running cluster (or from 0 to 1). cluster2 nodes are equivalent to
-groupd_compat="1", so it is fine to add groupd_compat="1" to a running
-cluster2 cluster as described above to perform a rolling upgrade.
+This setting causes the cman init script to start the groupd daemon,
+and causes the groupd, fenced, dlm_controld and gfs_controld daemons to
+operate in the old cluster2 mode so they will be compatible with cluster2
+nodes in the cluster that have not yet been upgraded.
-A third option, groupd_compat="2", enables a special phase during startup
-where the daemons attempt to discover cluster2 nodes or cluster3 nodes running
-in mode 1. If any are found, they run in mode 1, otherwise mode 0. This mode
-will delay startup and makes cluster operation less predictable.
-
-The cman init script will not start the groupd daemon unless it is needed,
-i.e. groupd_compat=1 (or 2).
-
-.B Logging
-
-By default, log messages at INFO level and above are sent to both
-\fBsyslog\fP(3) and /var/log/cluster/groupd.log. For complete logging
-configuration options see \fBcluster.conf\fP(5).
+The upgrading setting, including the groupd_compat setting,
+.B cannot be changed in a running cluster.
+The entire cluster must be taken offline to change these because the new
+cluster3 default modes are not compatible with the old cluster2 modes.
+The upgrading/compat settings cause the new cluster3 daemons to run the
+old cluster2 code and protocols.
.SH OPTIONS
+Command line options override a corresponding setting in cluster.conf.
+
.TP
-\fB-D\fP
-Enable debugging to stderr and don't fork
-.TP
-\fB-L\fP
-Enable debugging to log file (see above)
-.TP
-\fB-g <num>\fP
-group compatibility mode, 0 off, 1 on, 2 detect
-.br
-0: use libcpg, no backward compat, best performance
-.br
-1: use libgroup for compat with cluster2/rhel5
-.br
-2: detect old, or mode 1, nodes that require compat
+.B \-D
+Enable debugging to stderr and don't fork.
.TP
-\fB-w <secs>\fP
-seconds to wait for a node's version message before
-assuming an old version requiring compat mode
+.B \-L
+Enable debugging to log file.
.TP
-\fB-d <secs>\fP
-seconds to delay the mode selection to give time
-for an old version to join and force compat mode
+.BI \-g " num"
+groupd compatibility mode, 0 off, 1 on. Default 0.
.TP
-\fB-V\fP
-Print the version information and exit.
+.B \-h
+Print a help message describing available options, then exit.
.TP
-\fB-h\fP
-Print out a help message describing available options, then exit.
-
-.SH DEBUGGING
-The groupd daemon keeps a circular buffer of debug messages that can be
-dumped with the 'group_tool dump' command.
+.B \-V
+Print program version information, then exit.
.SH SEE ALSO
-group_tool(8)
+.BR cman (5),
+.BR fenced (8),
+.BR dlm_controld (8),
+.BR gfs_controld (8)
14 years, 4 months
cluster: STABLE3 - cman: disable gfs plock_ownership when upgrading
by Christine Caulfield
Gitweb: http://git.fedorahosted.org/git/cluster.git?p=cluster.git;a=commitdiff;h=...
Commit: d46ace8212615dfad24c408eebb94e32b24fe729
Parent: 2752a15c30f0bc9cec55a5a8603269d9eecea1e3
Author: Christine Caulfield <ccaulfie(a)redhat.com>
AuthorDate: Tue Jan 19 07:45:12 2010 +0000
Committer: Christine Caulfield <ccaulfie(a)redhat.com>
CommitterDate: Tue Jan 19 07:45:12 2010 +0000
cman: disable gfs plock_ownership when upgrading
if <cman upgrading="yes"/> then also add
<gfs_controld plock_ownership="0"/>
rhbz#532808
Signed-off-by: Christine Caulfield <ccaulfie(a)redhat.com>
---
cman/daemon/cman-preconfig.c | 11 +++++++++++
1 files changed, 11 insertions(+), 0 deletions(-)
diff --git a/cman/daemon/cman-preconfig.c b/cman/daemon/cman-preconfig.c
index 5036a27..f27effa 100644
--- a/cman/daemon/cman-preconfig.c
+++ b/cman/daemon/cman-preconfig.c
@@ -1185,6 +1185,7 @@ static const char *groupd_compat="groupd_compat";
static const char *clvmd_interface="interface";
static const char *cman_disallowed="disallowed";
static const char *totem_crypto="crypto_accept";
+static const char *plock_ownership="plock_ownership";
/*
* Flags to set:
@@ -1199,6 +1200,7 @@ static void setup_old_compat(struct objdb_iface_ver0 *objdb, hdb_handle_t cluste
hdb_handle_t clvmd_handle;
hdb_handle_t cman_handle;
hdb_handle_t totem_handle;
+ hdb_handle_t gfs_handle;
char *value;
/* Set groupd to backwards compatibility mode */
@@ -1236,6 +1238,15 @@ static void setup_old_compat(struct objdb_iface_ver0 *objdb, hdb_handle_t cluste
objdb->object_key_create_typed(totem_handle, totem_crypto,
"old", 4, OBJDB_VALUETYPE_STRING);
}
+
+ /* Disable plock ownership */
+ gfs_handle = find_or_create_object(objdb, "gfs_controld", OBJECT_PARENT_HANDLE);
+ if (objdb->object_key_get(gfs_handle, plock_ownership, strlen(plock_ownership),
+ (void *)&value, NULL) ||
+ !value) {
+ objdb->object_key_create_typed(gfs_handle, plock_ownership,
+ "0", 2, OBJDB_VALUETYPE_STRING);
+ }
}
static int cmanpre_readconfig(struct objdb_iface_ver0 *objdb, const char **error_string)
14 years, 4 months
cluster: STABLE3 - cluster.rng: dlm updates
by David Teigland
Gitweb: http://git.fedorahosted.org/git/cluster.git?p=cluster.git;a=commitdiff;h=...
Commit: 2752a15c30f0bc9cec55a5a8603269d9eecea1e3
Parent: eb697c1614fb2aa31cff96d90340767f3c3ded01
Author: David Teigland <teigland(a)redhat.com>
AuthorDate: Mon Jan 18 15:50:28 2010 -0600
Committer: David Teigland <teigland(a)redhat.com>
CommitterDate: Mon Jan 18 15:53:05 2010 -0600
cluster.rng: dlm updates
new descriptions
Signed-off-by: David Teigland <teigland(a)redhat.com>
---
config/tools/xml/cluster.rng.in | 115 +++++++++++++++++++++------------------
1 files changed, 61 insertions(+), 54 deletions(-)
diff --git a/config/tools/xml/cluster.rng.in b/config/tools/xml/cluster.rng.in
index a0820cc..824a71d 100644
--- a/config/tools/xml/cluster.rng.in
+++ b/config/tools/xml/cluster.rng.in
@@ -30,7 +30,7 @@ To validate your cluster.conf against this schema, run:
<start>
<element name="cluster" rha:description="Defines cluster properties, and
- contains all other configuration. cluster.conf(5).">
+ contains all other configuration. cluster.conf(5)">
<attribute name="name" rha:description="Name of the cluster.
cluster.conf(5)"/>
<attribute name="config_version" rha:description="Revision level
@@ -415,96 +415,103 @@ To validate your cluster.conf against this schema, run:
<!-- dlm block -->
<optional>
- <element name="dlm" rha:description="">
+ <element name="dlm" rha:description="Configuration for dlm and
+ dlm_controld daemon. dlm_controld(8)">
+
<optional>
- <attribute name="log_debug" rha:description="Enable dlm
- kernel debug messages." rha:default="0" rha:sample="1"/>
+ <attribute name="log_debug" rha:description="Set to 1 to enable
+ dlm kernel debugging messages. dlm_controld(8)"/>
</optional>
+
<optional>
- <attribute name="timewarn" rha:description="The number of centiseconds
- a lock is blocked before a warning is sent to userland, for lockspaces
- created with TIMEWARN flag." rha:default="500" rha:sample="100"/>
+ <attribute name="timewarn" rha:description="Number of centiseconds
+ a lock is blocked before notifying dlm_controld deadlock code.
+ dlm_controld(8)"/>
</optional>
+
<optional>
- <attribute name="protocol" rha:description="The network protocol
- used by the dlm." rha:default="tcp" rha:sample="sctp"/>
+ <attribute name="protocol" rha:description="The dlm lowcomms protocol.
+ dlm_controld(8)"/>
</optional>
+
<optional>
- <attribute name="enable_fencing" rha:description="Enable fencing recovery
- dependency." rha:default="1" rha:sample="0"/>
+ <attribute name="enable_fencing" rha:description="Fencing recovery
+ dependency. dlm_controld(8)" />
</optional>
+
<optional>
- <attribute name="enable_quorum" rha:description="Enable quorum recovery
- dependency." rha:default="1" rha:sample="0"/>
+ <attribute name="enable_quorum" rha:description="Quorum recovery
+ dependency. dlm_controld(8)"/>
</optional>
+
<optional>
- <attribute name="enable_deadlk" rha:description="Enable deadlock detection
- code." rha:default="0" rha:sample="1"/>
+ <attribute name="enable_deadlk" rha:description="Deadlock detection
+ capability. dlm_controld(8)"/>
</optional>
+
<optional>
- <attribute name="enable_plock" rha:description="Enable posix lock code for
- cluster fs." rha:default="1" rha:sample="0"/>
+ <attribute name="enable_plock" rha:description="Cluster fs posix
+ lock capability. dlm_controld(8)"/>
</optional>
+
<optional>
- <attribute name="plock_debug" rha:description="Enable posix lock debugging."
- rha:default="0" rha:sample="1"/>
+ <attribute name="plock_debug" rha:description="Set to 1 to enable
+ posix lock debugging. dlm_controld(8)"/>
</optional>
+
<optional>
- <attribute name="plock_rate_limit" rha:description="The maximum
- number of plock operations that will be sent every second. This is
- used to prevent potentially excessive network load. For best
- performance it is recommended to disable this rate limiting by
- setting the value to 0." rha:sample="10000" rha:default="100"/>
+ <attribute name="plock_rate_limit" rha:description="Limit the rate of
+ plock operations. dlm_controld(8)"/>
</optional>
+
<optional>
- <attribute name="plock_ownership" rha:description="Enabling this
- option by setting to 1 optimizes plock performance for repeated
- locking of the same locks by processes on a single node.
- All dlm_controld daemons in the cluster must be stopped before
- changing this value." rha:sample="0" rha:default="1"/>
+ <attribute name="plock_ownership" rha:description="Set to 1/0 to
+ enable/disable plock ownership. dlm_controld(8)"/>
</optional>
+
<optional>
- <attribute name="drop_resources_time" rha:description="For tuning the
- plock_ownership resource caching. This is the frequence of
- attempts in milliseconds to drop unused resources from the
- cache." rha:sample="5000" rha:default="10000"/>
+ <attribute name="drop_resources_time" rha:description="Plock ownership
+ drop resources time. dlm_controld(8)"/>
</optional>
+
<optional>
- <attribute name="drop_resources_count" rha:description="For tuning
- the plock_ownership resource caching. This is the maximum number
- of resources to drop from the cache each time." rha:sample="100"
- rha:default="10"/>
+ <attribute name="drop_resources_count" rha:description="Plock ownership
+ drop resources count. dlm_controld(8)"/>
</optional>
+
<optional>
- <attribute name="drop_resources_age" rha:description="For tuning the
- plock_ownership resource caching. This is the time in milliseconds
- that a cached resource should be unused before consideration for
- dropping." rha:sample="5000" rha:default="10000"/>
+ <attribute name="drop_resources_age" rha:description="Plock ownership
+ drop resources age. dlm_controld(8)"/>
</optional>
+
<optional>
<zeroOrMore>
<element name="lockspace" rha:description="Individual lockspace
- configuration.">
- <attribute name="name" rha:description="The name of the lockspace."
- rha:sample="foo"/>
+ configuration. dlm_controld(8)">
+ <attribute name="name" rha:description="Name of the lockspace.
+ dlm_controld(8)"/>
+
<optional>
- <attribute name="nodir" rha:description="The lockspace will not use a
- resource directory when this is set to 1." rha:default="0"
- rha:sample="1"/>
+ <attribute name="nodir" rha:description="Set to 1 to disable the
+ internal resource directory. dlm_controld(8)"/>
</optional>
+
<optional>
<zeroOrMore>
- <element name="master" rha:description="Define a particular node to be
- responsible for a certain amount of lock mastering.">
- <attribute name="name" rha:description="The name of the node that
- should be mastering resources/locks. This needs to match one of
- the nodes defined in clusternodes." rha:sample="node01"/>
+ <element name="master" rha:description="Defines a master node.
+ dlm_controld(8)">
+
+ <attribute name="name" rha:description="The name of a node that
+ should be master resources/locks. dlm_controld(8)"/>
+
+ <optional>
<attribute name="weight" rha:description="The proportion of
- resources/locks this node should master." rha:default="1"
- rha:sample="2"/>
+ resources this node should master. dlm_controld(8)"/>
+ </optional>
</element>
</zeroOrMore>
</optional>
+
</element>
</zeroOrMore>
</optional>
14 years, 4 months
cluster: STABLE3 - man pages: dlm_controld
by David Teigland
Gitweb: http://git.fedorahosted.org/git/cluster.git?p=cluster.git;a=commitdiff;h=...
Commit: eb697c1614fb2aa31cff96d90340767f3c3ded01
Parent: f66111ea45a4f7cf46dd63866abff18c5bd46bf7
Author: David Teigland <teigland(a)redhat.com>
AuthorDate: Mon Jan 18 15:00:55 2010 -0600
Committer: David Teigland <teigland(a)redhat.com>
CommitterDate: Mon Jan 18 15:53:04 2010 -0600
man pages: dlm_controld
updates for cluster3
Signed-off-by: David Teigland <teigland(a)redhat.com>
---
group/man/dlm_controld.8 | 320 ++++++++++++++++++++++++++++++++++++----------
1 files changed, 255 insertions(+), 65 deletions(-)
diff --git a/group/man/dlm_controld.8 b/group/man/dlm_controld.8
index e8dc1c6..7100f0e 100644
--- a/group/man/dlm_controld.8
+++ b/group/man/dlm_controld.8
@@ -1,81 +1,282 @@
-.TH dlm_controld 8
+.TH DLM_CONTROLD 8 2009-01-18 cluster cluster
.SH NAME
-dlm_controld - daemon that configures dlm according to cluster events
+dlm_controld \- daemon that configures dlm according to cluster events
.SH SYNOPSIS
-.B
-dlm_controld
-[\fIOPTION\fR]...
+.B dlm_controld
+[OPTIONS]
.SH DESCRIPTION
-The dlm lives in the kernel, and the cluster infrastructure (cluster
+The dlm lives in the kernel, and the cluster infrastructure (corosync
membership and group management) lives in user space. The dlm in the
kernel needs to adjust/recover for certain cluster events. It's the job
of dlm_controld to receive these events and reconfigure the kernel dlm as
needed. dlm_controld controls and configures the dlm through sysfs and
-configfs files that are considered dlm-internal interfaces; not a general
-API/ABI.
+configfs files that are considered dlm-internal interfaces.
-The dlm also exports lock state through debugfs so that dlm_controld can
-implement deadlock detection in user space.
+The cman init script usually starts the dlm_controld daemon.
-.SH CONFIGURATION FILE
+.SH OPTIONS
+Command line options override a corresponding setting in cluster.conf.
+
+.TP
+.B \-D
+Enable debugging to stderr and don't fork.
+.br
+See also
+.B dlm_tool dump
+in
+.BR dlm_tool (8).
+
+.TP
+.B \-L
+Enable debugging to log file.
+.br
+See also
+.B logging
+in
+.BR cluster.conf (5).
+
+.TP
+.B \-K
+Enable kernel dlm debugging messages.
+.br
+See also
+.B log_debug
+below.
+
+.TP
+.BI \-r " num"
+dlm kernel lowcomms protocol, 0 tcp, 1 sctp, 2 detect.
+2 selects tcp if corosync rrp_mode is "none", otherwise sctp.
+.br
+Default 2.
+
+.TP
+.BI \-g " num"
+groupd compatibility mode, 0 off, 1 on.
+.br
+Default 0.
+
+.TP
+.BI \-f " num"
+Enable (1) or disable (0) fencing recovery dependency.
+.br
+Default 1.
-Optional cluster.conf settings are placed in the <dlm> section.
+.TP
+.BI \-q " num"
+Enable (1) or disable (0) quorum recovery dependency.
+.br
+Default 0.
+
+.TP
+.BI \-d " num"
+Enable (1) or disable (0) deadlock detection code.
+.br
+Default 0.
-.SS Global settings
+.TP
+.BI \-p " num"
+Enable (1) or disable (0) plock code for cluster fs.
+.br
+Default 1.
+
+.TP
+.BI \-l " num"
+Limit the rate of plock operations, 0 for no limit.
+.br
+Default 0.
+
+.TP
+.BI \-o " num"
+Enable (1) or disable (0) plock ownership.
+.br
+Default 1.
+
+.TP
+.BI \-t " ms"
+Plock ownership drop resources time (milliseconds).
+.br
+Default 10000.
+
+.TP
+.BI \-c " num"
+Plock ownership drop resources count.
+.br
+Default 10.
+
+.TP
+.BI \-a " ms"
+Plock ownership drop resources age (milliseconds).
+.br
+Default 10000.
+
+.TP
+.B \-P
+Enable plock debugging messages (can produce excessive output).
+
+.TP
+.B \-h
+Print a help message describing available options, then exit.
+
+.TP
+.B \-V
+Print program version information, then exit.
+
+
+.SH FILES
+.BR cluster.conf (5)
+is usually located at /etc/cluster/cluster.conf. It is not read directly.
+Other cluster components load the contents into memory, and the values are
+accessed through the libccs library.
+
+Configuration options for dlm (kernel) and dlm_controld are added to the
+<dlm /> section of cluster.conf, within the top level <cluster> section.
+
+.SS Kernel options
+
+.TP
+.B protocol
The network
-.I protocol
-can be set to "tcp" or "sctp". The default is tcp.
+.B protocol
+can be set to tcp, sctp or detect which selects tcp or sctp based on
+the corosync rrp_mode configuration (redundant ring protocol).
+The rrp_mode "none" results in tcp. Default detect.
- <dlm protocol="tcp"/>
+<dlm protocol="detect"/>
+.TP
+.B timewarn
After waiting
-.I timewarn
+.B timewarn
centiseconds, the dlm will emit a warning via netlink. This only applies
to lockspaces created with the DLM_LSFL_TIMEWARN flag, and is used for
-deadlock detection. The default is 500 (5 seconds).
+deadlock detection. Default 500 (5 seconds).
- <dlm timewarn="500"/>
+<dlm timewarn="500"/>
+.TP
+.B log_debug
DLM kernel debug messages can be enabled by setting
-.I log_debug
-to 1. The default is 0.
+.B log_debug
+to 1. Default 0.
+
+<dlm log_debug="0"/>
+
+.TP
+.B clusternode/weight
+The lock directory
+.B weight
+can be specified one the clusternode lines. Weights would usually be
+used in the lock server configurations shown below instead.
+
+<clusternode name="node01" nodeid="1" weight="1"/>
+
+.SS Daemon options
+
+.TP
+.B enable_fencing
+See command line description.
+
+<dlm enable_fencing="1"/>
+
+.TP
+.B enable_quorum
+See command line description.
+
+<dlm enable_quorum="0"/>
+
+.TP
+.B enable_deadlk
+See command line description.
+
+<dlm enable_deadlk="0"/>
+
+.TP
+.B enable_plock
+See command line description.
+
+<dlm enable_plock="1"/>
+
+.TP
+.B plock_rate_limit
+See command line description.
+
+<dlm plock_rate_limit="0"/>
+
+.TP
+.B plock_ownership
+See command line description.
+
+<dlm plock_ownership="1"/>
+
+.TP
+.B drop_resources_time
+See command line description.
+
+<dlm drop_resources_time="10000"/>
+
+.TP
+.B drop_resources_count
+See command line description.
+
+<dlm drop_resources_count="10"/>
+
+.TP
+.B drop_resources_age
+See command line description.
+
+<dlm drop_resources_age="10000"/>
+
+.TP
+.B plock_debug
+Enable (1) or disable (0) plock debugging messages (can produce excessive
+output). Default 0.
+
+<dlm plock_debug="0"/>
- <dlm log_debug="0"/>
.SS Disabling resource directory
Lockspaces usually use a resource directory to keep track of which node is
the master of each resource. The dlm can operate without the resource
directory, though, by statically assigning the master of a resource using
-a hash of the resource name.
+a hash of the resource name. To enable, set the per-lockspace
+.B nodir
+option to 1.
- <dlm>
- <lockspace name="foo" nodir="1">
- </dlm>
+.nf
+<dlm>
+ <lockspace name="foo" nodir="1">
+</dlm>
+.fi
.SS Lock-server configuration
The nodir setting can be combined with node weights to create a
configuration where select node(s) are the master of all resources/locks.
-These "master" nodes can be viewed as "lock servers" for the other nodes.
+These
+.B master
+nodes can be viewed as "lock servers" for the other nodes.
- <dlm>
- <lockspace name="foo" nodir="1">
- <master name="node01"/>
- </lockspace>
- </dlm>
+.nf
+<dlm>
+ <lockspace name="foo" nodir="1">
+ <master name="node01"/>
+ </lockspace>
+</dlm>
or,
- <dlm>
- <lockspace name="foo" nodir="1">
- <master name="node01"/>
- <master name="node02"/>
- </lockspace>
- </dlm>
+<dlm>
+ <lockspace name="foo" nodir="1">
+ <master name="node01"/>
+ <master name="node02"/>
+ </lockspace>
+</dlm>
+.fi
Lock management will be partitioned among the available masters. There
can be any number of masters defined. The designated master nodes will
@@ -87,37 +288,26 @@ disruption, when a non-master node joins/leaves.
There is no special mode in the dlm for this lock server configuration,
it's just a natural consequence of combining the "nodir" option with node
weights. When a lockspace has master nodes defined, the master has a
-default weight of 1 and all non-master nodes have weight of 0. Explicit
-non-zero weights can also be assigned to master nodes, e.g.
+default weight of 1 and all non-master nodes have weight of 0. An explicit
+non-zero
+.B weight
+can also be assigned to master nodes, e.g.
- <dlm>
- <lockspace name="foo" nodir="1">
- <master name="node01" weight="2"/>
- <master name="node02" weight="1"/>
- </lockspace>
- </dlm>
+.nf
+<dlm>
+ <lockspace name="foo" nodir="1">
+ <master name="node01" weight="2"/>
+ <master name="node02" weight="1"/>
+ </lockspace>
+</dlm>
+.fi
In which case node01 will master 2/3 of the total resources and node2 will
master the other 1/3.
-
-.SH OPTIONS
-.TP
-\fB-d\fP <num>
-Enable (1) or disable (0) the deadlock detection code.
-.TP
-\fB-D\fP
-Run the daemon in the foreground and print debug statements to stdout.
-.TP
-\fB-K\fP
-Enable kernel dlm debugging messages.
-.TP
-\fB-V\fP
-Print the version information and exit.
-.TP
-\fB-h\fP
-Print out a help message describing available options, then exit.
-
.SH SEE ALSO
-groupd(8)
+.BR dlm_tool (8),
+.BR fenced (8),
+.BR cman (5),
+.BR cluster.conf (5)
14 years, 4 months
cluster: STABLE3 - man pages: fence_node, fenced
by David Teigland
Gitweb: http://git.fedorahosted.org/git/cluster.git?p=cluster.git;a=commitdiff;h=...
Commit: f66111ea45a4f7cf46dd63866abff18c5bd46bf7
Parent: 8c2975e0abe6881b36f4d7114a83ebcfd701afde
Author: David Teigland <teigland(a)redhat.com>
AuthorDate: Mon Jan 18 12:54:21 2010 -0600
Committer: David Teigland <teigland(a)redhat.com>
CommitterDate: Mon Jan 18 15:53:04 2010 -0600
man pages: fence_node, fenced
make formatting consistent
Signed-off-by: David Teigland <teigland(a)redhat.com>
---
fence/man/fence_node.8 | 34 +++++-----
fence/man/fenced.8 | 186 +++++++++++++++++++++++++-----------------------
2 files changed, 114 insertions(+), 106 deletions(-)
diff --git a/fence/man/fence_node.8 b/fence/man/fence_node.8
index 2cf2d00..fe26198 100644
--- a/fence/man/fence_node.8
+++ b/fence/man/fence_node.8
@@ -93,12 +93,12 @@ Fencing/fence_node() configuration shown in
Unfencing is only performed for a node with an <unfence> section:
.nf
- <clusternode name="node1" nodeid="1">
- <fence>
- </fence>
- <unfence>
- </unfence>
- </clusternode>
+<clusternode name="node1" nodeid="1">
+ <fence>
+ </fence>
+ <unfence>
+ </unfence>
+</clusternode>
.fi
The <unfence> section does not contain <method> sections like the <fence>
@@ -109,17 +109,17 @@ referenced by both fence and unfence <device> lines, and the same per-node
args should be repeated.
.nf
- <clusternode name="node1" nodeid="1">
- <fence>
- <method name="1">
- <device name="myswitch" foo="x"/>
- </method>
- </fence>
-
- <unfence>
- <device name="myswitch" foo="x" action="on"/>
- </unfence>
- </clusternode>
+<clusternode name="node1" nodeid="1">
+ <fence>
+ <method name="1">
+ <device name="myswitch" foo="x"/>
+ </method>
+ </fence>
+
+ <unfence>
+ <device name="myswitch" foo="x" action="on"/>
+ </unfence>
+</clusternode>
.fi
.SH SEE ALSO
diff --git a/fence/man/fenced.8 b/fence/man/fenced.8
index 84c3a46..03a9bc6 100644
--- a/fence/man/fenced.8
+++ b/fence/man/fenced.8
@@ -119,7 +119,7 @@ Enable debugging to stderr and don't fork.
Enable debugging to log file.
.TP
.BI \-g " num"
-groupd compatibility mode, 0 off, 1 on. Default 0.
+groupd compatibility mode, 0 off, 1 on. Default 0.
.TP
.BI \-r " path"
Register a directory that needs to be empty for the daemon to start. Use
@@ -133,14 +133,14 @@ All nodes are in a clean state to start. Do no startup fencing.
Skip startup fencing of nodes with no defined fence methods.
.TP
.BI \-j " secs"
-Post-join fencing delay.
+Post-join fencing delay. Default 6.
.TP
.BI \-f " secs"
-Post-fail fencing delay.
+Post-fail fencing delay. Default 0.
.TP
-.BI \-R " path"
+.BI \-R " secs"
Number of seconds to wait for a manual override after a failed fencing
-attempt before the next attempt.
+attempt before the next attempt. Default 3.
.TP
.BI \-O " path"
Location of a FIFO used for communication between fenced and fence_ack_manual.
@@ -157,36 +157,44 @@ is usually located at /etc/cluster/cluster.conf. It is not read directly.
Other cluster components load the contents into memory, and the values are
accessed through the libccs library.
-Fencing daemon behavior can be controlled by setting options in the
-cluster.conf file under the section <fence_daemon />. See above for
-complete descriptions of these values. The delay values are in seconds;
--1 secs means an unlimited delay. The values shown are the defaults.
+Configuration options for fenced are added to the <fence_daemon /> section
+of cluster.conf, within the top level <cluster> section.
-Post-join delay is the number of seconds the daemon will wait before
-fencing any victims after a node joins the domain.
+.TP
+.B post_join_delay
+is the number of seconds the daemon will wait before fencing any victims
+after a node joins the domain. Default 6.
- <fence_daemon post_join_delay="6"/>
+<fence_daemon post_join_delay="6"/>
-Post-fail delay is the number of seconds the daemon will wait before
-fencing any victims after a domain member fails.
+.TP
+.B post_fail_delay
+is the number of seconds the daemon will wait before fencing any victims
+after a domain member fails. Default 0.
- <fence_daemon post_fail_delay="0"/>
+<fence_daemon post_fail_delay="0"/>
-Clean-start is used to prevent any startup fencing the daemon might do.
+.TP
+.B clean_start
+is used to prevent any startup fencing the daemon might do.
It indicates that the daemon should assume all nodes are in a clean state
-to start.
+to start. Default 0.
- <fence_daemon clean_start="0"/>
+<fence_daemon clean_start="0"/>
-Override-path is the location of a FIFO used for communication between
-fenced and fence_ack_manual.
+.TP
+.B override_path
+is the location of a FIFO used for communication between fenced and
+fence_ack_manual. Default shown.
- <fence_daemon override_path="/var/run/cluster/fenced_override"/>
+<fence_daemon override_path="/var/run/cluster/fenced_override"/>
-Override-time is the amount of time to wait for administrator intervention
-between fencing attempts following fence agent failures.
+.TP
+.B override_time
+is the number of seconds to wait for administrator intervention
+between fencing attempts following fence agent failures. Default 3.
- <fence_daemon override_time="3"/>
+<fence_daemon override_time="3"/>
.SS Per-node fencing settings
@@ -194,19 +202,19 @@ The per-node fencing configuration is partly dependant on the specific
agent/hardware being used. The general framework begins like this:
.nf
- <clusternodes>
+<clusternodes>
- <clusternode name="node1" nodeid="1">
- <fence>
- </fence>
- </clusternode>
+<clusternode name="node1" nodeid="1">
+ <fence>
+ </fence>
+</clusternode>
- <clusternode name="node2" nodeid="2">
- <fence>
- </fence>
- </clusternode>
+<clusternode name="node2" nodeid="2">
+ <fence>
+ </fence>
+</clusternode>
- </clusternodes>
+</clusternodes>
.fi
The simple fragment above is a valid configuration: there is no way to
@@ -221,25 +229,25 @@ listed in the separate <fencedevices> section, and then lists any
node-specific parameters related to using the device.
.nf
- <clusternodes>
-
- <clusternode name="node1" nodeid="1">
- <fence>
- <method name="1">
- <device name="myswitch" foo="x"/>
- </method>
- </fence>
- </clusternode>
-
- <clusternode name="node2" nodeid="2">
- <fence>
- <method name="1">
- <device name="myswitch" foo="y"/>
- </method>
- </fence>
- </clusternode>
-
- </clusternodes>
+<clusternodes>
+
+<clusternode name="node1" nodeid="1">
+ <fence>
+ <method name="1">
+ <device name="myswitch" foo="x"/>
+ </method>
+ </fence>
+</clusternode>
+
+<clusternode name="node2" nodeid="2">
+ <fence>
+ <method name="1">
+ <device name="myswitch" foo="y"/>
+ </method>
+ </fence>
+</clusternode>
+
+</clusternodes>
.fi
.SS Fence device settings
@@ -249,9 +257,9 @@ may be one or more devices listed. The per-node fencing sections above
reference one of these fence devices by name.
.nf
- <fencedevices>
- <fencedevice name="myswitch" agent="..." something="..."/>
- </fencedevices>
+<fencedevices>
+ <fencedevice name="myswitch" agent="..." something="..."/>
+</fencedevices>
.fi
.SS Multiple methods for a node
@@ -261,21 +269,21 @@ for a node. If fencing fails using the first method, fenced will try the
next method, and continue to cycle through methods until one succeeds.
.nf
- <clusternode name="node1" nodeid="1">
- <fence>
- <method name="1">
- <device name="myswitch" foo="x"/>
- </method>
- <method name="2">
- <device name="another" bar="123"/>
- </method>
- </fence>
- </clusternode>
-
- <fencedevices>
- <fencedevice name="myswitch" agent="..." something="..."/>
- <fencedevice name="another" agent="..."/>
- </fencedevices>
+<clusternode name="node1" nodeid="1">
+ <fence>
+ <method name="1">
+ <device name="myswitch" foo="x"/>
+ </method>
+ <method name="2">
+ <device name="another" bar="123"/>
+ </method>
+ </fence>
+</clusternode>
+
+<fencedevices>
+ <fencedevice name="myswitch" agent="..." something="..."/>
+ <fencedevice name="another" agent="..."/>
+</fencedevices>
.fi
.SS Dual path, redundant power
@@ -286,14 +294,14 @@ fenced will run the agent for the device twice, once for each device line,
and both must succeed for fencing to be considered successful.
.nf
- <clusternode name="node1" nodeid="1">
- <fence>
- <method name="1">
- <device name="sanswitch1" port="11"/>
- <device name="sanswitch2" port="11"/>
- </method>
- </fence>
- </clusternode>
+<clusternode name="node1" nodeid="1">
+ <fence>
+ <method name="1">
+ <device name="sanswitch1" port="11"/>
+ <device name="sanswitch2" port="11"/>
+ </method>
+ </fence>
+</clusternode>
.fi
When using power switches to fence nodes with dual power supplies, the
@@ -302,16 +310,16 @@ either port. The default off-on behavior of the agent could result in the
power never being fully disabled to the node.
.nf
- <clusternode name="node1" nodeid="1">
- <fence>
- <method name="1">
- <device name="nps1" port="11" action="off"/>
- <device name="nps2" port="11" action="off"/>
- <device name="nps1" port="11" action="on"/>
- <device name="nps2" port="11" action="on"/>
- </method>
- </fence>
- </clusternode>
+<clusternode name="node1" nodeid="1">
+ <fence>
+ <method name="1">
+ <device name="nps1" port="11" action="off"/>
+ <device name="nps2" port="11" action="off"/>
+ <device name="nps1" port="11" action="on"/>
+ <device name="nps2" port="11" action="on"/>
+ </method>
+ </fence>
+</clusternode>
.fi
.SS Hardware-specific settings
14 years, 4 months
cluster: STABLE3 - cman init: propagate errors from fence_tool operations
by Fabio M. Di Nitto
Gitweb: http://git.fedorahosted.org/git/cluster.git?p=cluster.git;a=commitdiff;h=...
Commit: 8c2975e0abe6881b36f4d7114a83ebcfd701afde
Parent: 3305a7b3c18ced65795954311449dda080959c09
Author: Fabio M. Di Nitto <fdinitto(a)redhat.com>
AuthorDate: Mon Jan 18 22:32:58 2010 +0100
Committer: Fabio M. Di Nitto <fdinitto(a)redhat.com>
CommitterDate: Mon Jan 18 22:32:58 2010 +0100
cman init: propagate errors from fence_tool operations
Resolves: rhbz#556603
Signed-off-by: Fabio M. Di Nitto <fdinitto(a)redhat.com>
---
cman/init.d/cman.in | 6 +++---
1 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/cman/init.d/cman.in b/cman/init.d/cman.in
index a35590a..e0281be 100644
--- a/cman/init.d/cman.in
+++ b/cman/init.d/cman.in
@@ -683,18 +683,18 @@ join_fence_domain()
if ! cman_tool status | grep Flags | grep 2node \
> /dev/null 2>&1; then
errmsg=$( fence_tool join -w $FENCE_JOIN_TIMEOUT \
- > /dev/null 2>&1 ) || return 1
+ 2>&1 ) || return 1
else
errmsg=$( fence_tool join -w $FENCE_JOIN_TIMEOUT \
-m $FENCED_MEMBER_DELAY join \
- > /dev/null 2>&1 ) || return 1
+ 2>&1 ) || return 1
fi
}
leave_fence_domain()
{
if status fenced > /dev/null 2>&1; then
- fence_tool leave -w 10 > /dev/null 2>&1
+ errmsg=$( fence_tool leave -w 10 2>&1 )
return $?
fi
}
14 years, 4 months
cluster: RHEL48 - rgmanager: Fix double-unlock in error path
by Lon Hohberger
Gitweb: http://git.fedorahosted.org/git/cluster.git?p=cluster.git;a=commitdiff;h=...
Commit: 4f83d6506976ea57f97eb776aa22e46af15edd9d
Parent: 928731d10c132abcc1f5567b3fbe2bbce23fd67e
Author: Lon Hohberger <lhh(a)redhat.com>
AuthorDate: Tue Jul 21 13:16:53 2009 -0400
Committer: Lon Hohberger <lhh(a)redhat.com>
CommitterDate: Mon Jan 18 16:17:39 2010 -0500
rgmanager: Fix double-unlock in error path
Resolves: rhbz#555925
Signed-off-by: Lon Hohberger <lhh(a)redhat.com>
---
rgmanager/src/daemons/rg_state.c | 1 -
1 files changed, 0 insertions(+), 1 deletions(-)
diff --git a/rgmanager/src/daemons/rg_state.c b/rgmanager/src/daemons/rg_state.c
index 386d569..7b4a991 100644
--- a/rgmanager/src/daemons/rg_state.c
+++ b/rgmanager/src/daemons/rg_state.c
@@ -803,7 +803,6 @@ svc_start(char *svcName, int req)
if (set_rg_state(svcName, &svcStatus) != 0) {
clulog(LOG_ERR,
"#47: Failed changing service status\n");
- rg_unlock(svcName, lockp);
goto out_unlock;
}
14 years, 4 months
cluster: RHEL48 - rgmanager: Fix stop/start race
by Lon Hohberger
Gitweb: http://git.fedorahosted.org/git/cluster.git?p=cluster.git;a=commitdiff;h=...
Commit: 928731d10c132abcc1f5567b3fbe2bbce23fd67e
Parent: e220cb0b3cef6279904967daabcbba6e3238d83f
Author: Lon Hohberger <lhh(a)redhat.com>
AuthorDate: Mon Jun 15 14:18:36 2009 -0400
Committer: Lon Hohberger <lhh(a)redhat.com>
CommitterDate: Mon Jan 18 16:16:46 2010 -0500
rgmanager: Fix stop/start race
If a thread exits right as rgmanager gets a request
to start a new thread, there's a chance that the
the starting thread will incorrectly have a reference
to the old thread and not retry, causing an infinite
loop.
Resolves: rhbz#502872 rhbz#555925
Signed-off-by: Lon Hohberger <lhh(a)redhat.com>
---
rgmanager/src/daemons/rg_thread.c | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/rgmanager/src/daemons/rg_thread.c b/rgmanager/src/daemons/rg_thread.c
index e96982b..c1d6140 100644
--- a/rgmanager/src/daemons/rg_thread.c
+++ b/rgmanager/src/daemons/rg_thread.c
@@ -500,6 +500,7 @@ spawn_if_needed(const char *resgroupname)
resthread_t *resgroup = NULL;
retry:
+ resgroup = NULL;
pthread_mutex_lock(&reslist_mutex);
while (resgroup == NULL) {
resgroup = find_resthread_byname(resgroupname);
14 years, 4 months
cluster: STABLE3 - fencing: Add vendor URL to man pages
by Marek Grác
Gitweb: http://git.fedorahosted.org/git/cluster.git?p=cluster.git;a=commitdiff;h=...
Commit: 3305a7b3c18ced65795954311449dda080959c09
Parent: b75bae233cbf845f85ed1c1b25b41f336d19beb4
Author: Marek 'marx' Grac <mgrac(a)redhat.com>
AuthorDate: Mon Jan 18 20:01:33 2010 +0100
Committer: Marek 'marx' Grac <mgrac(a)redhat.com>
CommitterDate: Mon Jan 18 20:01:33 2010 +0100
fencing: Add vendor URL to man pages
---
fence/agents/alom/fence_alom.py | 1 +
fence/agents/apc/fence_apc.py | 1 +
fence/agents/apc_snmp/fence_apc_snmp.py | 1 +
fence/agents/baytech/fence_baytech.8 | 2 ++
fence/agents/bladecenter/fence_bladecenter.py | 1 +
fence/agents/brocade/fence_brocade.8 | 2 ++
fence/agents/bullpap/fence_bullpap.8 | 2 ++
fence/agents/cisco_mds/fence_cisco_mds.py | 1 +
fence/agents/cpint/fence_cpint.8 | 2 ++
fence/agents/drac/fence_drac.8 | 2 ++
fence/agents/drac5/fence_drac5.py | 1 +
fence/agents/egenera/fence_egenera.8 | 2 ++
fence/agents/eps/fence_eps.py | 1 +
fence/agents/ibmblade/fence_ibmblade.py | 1 +
fence/agents/ifmib/fence_ifmib.py | 1 +
fence/agents/ilo/fence_ilo.py | 1 +
fence/agents/ilo_mp/fence_ilo_mp.py | 1 +
fence/agents/intelmodular/fence_intelmodular.py | 1 +
fence/agents/ldom/fence_ldom.py | 1 +
fence/agents/lib/fence2man.xsl | 3 +++
fence/agents/lib/fencing.py.py | 2 ++
fence/agents/mcdata/fence_mcdata.8 | 2 ++
fence/agents/rackswitch/fence_rackswitch.8 | 2 ++
fence/agents/rsa/fence_rsa.py | 1 +
fence/agents/rsb/fence_rsb.8 | 1 +
fence/agents/sanbox2/fence_sanbox2.py | 1 +
fence/agents/vixel/fence_vixel.8 | 2 ++
fence/agents/vmware/fence_vmware.py | 1 +
fence/agents/wti/fence_wti.py | 1 +
fence/agents/xcat/fence_xcat.8 | 2 ++
fence/agents/zvm/fence_zvm.8 | 2 ++
31 files changed, 45 insertions(+), 0 deletions(-)
diff --git a/fence/agents/alom/fence_alom.py b/fence/agents/alom/fence_alom.py
index 5dfe9e0..6223608 100644
--- a/fence/agents/alom/fence_alom.py
+++ b/fence/agents/alom/fence_alom.py
@@ -64,6 +64,7 @@ def main():
docs["shortdesc"] = "Fence agent for Sun ALOM"
docs["longdesc"] = "fence_alom is an I/O Fencing \
agent which can be used with ALOM connected machines."
+ docs["vendorurl"] = "http://www.sun.com"
show_docs(options, docs)
# Operate the fencing device
diff --git a/fence/agents/apc/fence_apc.py b/fence/agents/apc/fence_apc.py
index b70b220..12ddf2a 100755
--- a/fence/agents/apc/fence_apc.py
+++ b/fence/agents/apc/fence_apc.py
@@ -207,6 +207,7 @@ which can be used with the APC network power switch. It logs into device \
via telnet/ssh and reboots a specified outlet. Lengthy telnet/ssh connections \
should be avoided while a GFS cluster is running because the connection \
will block any necessary fencing actions."
+ docs["vendorurl"] = "http://www.apc.com"
show_docs(options, docs)
## Support for -n [switch]:[plug] notation that was used before
diff --git a/fence/agents/apc_snmp/fence_apc_snmp.py b/fence/agents/apc_snmp/fence_apc_snmp.py
index ea3a89f..71e978e 100644
--- a/fence/agents/apc_snmp/fence_apc_snmp.py
+++ b/fence/agents/apc_snmp/fence_apc_snmp.py
@@ -195,6 +195,7 @@ def main():
which can be used with the APC network power switch. It logs \
into a device via SNMP and reboots a specified outlet. It supports \
SNMP v1 and v3 with all combinations of authenticity/privacy settings."
+ docs["vendorurl"] = "http://www.apc.com"
show_docs(options, docs)
# Operate the fencing device
diff --git a/fence/agents/baytech/fence_baytech.8 b/fence/agents/baytech/fence_baytech.8
index e60175d..aa17955 100644
--- a/fence/agents/baytech/fence_baytech.8
+++ b/fence/agents/baytech/fence_baytech.8
@@ -25,6 +25,8 @@ fence_baytech accepts options on the command line as well as from stdin.
fenced sends parameters through stdin when it execs the agent. fence_baytech
can be run by itself with command line options which is useful for testing.
+Vendor URL: http://www.baytech.net
+
.SH OPTIONS
.TP
\fB-a\fP \fIhost\fP
diff --git a/fence/agents/bladecenter/fence_bladecenter.py b/fence/agents/bladecenter/fence_bladecenter.py
index 708fc84..8b890e4 100644
--- a/fence/agents/bladecenter/fence_bladecenter.py
+++ b/fence/agents/bladecenter/fence_bladecenter.py
@@ -110,6 +110,7 @@ def main():
which can be used with IBM Bladecenters with recent enough firmware that \
includes telnet support. It logs into a Brocade chasis via telnet or ssh \
and uses the command line interface to power on and off blades."
+ docs["vendorurl"] = "http://www.ibm.com"
show_docs(options, docs)
##
diff --git a/fence/agents/brocade/fence_brocade.8 b/fence/agents/brocade/fence_brocade.8
index 36fde82..812a3f9 100644
--- a/fence/agents/brocade/fence_brocade.8
+++ b/fence/agents/brocade/fence_brocade.8
@@ -26,6 +26,8 @@ into the GFS cluster (after reboot) the port on the Brocade FC switch needs to
be enabled. This can be done by running fence_brocade and specifying the
enable action.
+Vendor URL: http://www.brocade.com
+
.SH OPTIONS
.TP
\fB-a\fP \fIIPaddress\fP
diff --git a/fence/agents/bullpap/fence_bullpap.8 b/fence/agents/bullpap/fence_bullpap.8
index 876b406..1404c75 100644
--- a/fence/agents/bullpap/fence_bullpap.8
+++ b/fence/agents/bullpap/fence_bullpap.8
@@ -18,6 +18,8 @@ fence_bullpap accepts options on the command line as well as from stdin.
fenced sends the options through stdin when it execs the agent. fence_bullpap
can be run by itself with command line options which is useful for testing.
+Vendor URL: http://www.bull.com
+
.SH OPTIONS
.TP
\fB-a\fP \fIIPaddress\fP
diff --git a/fence/agents/cisco_mds/fence_cisco_mds.py b/fence/agents/cisco_mds/fence_cisco_mds.py
index c345c2e..d20efe4 100644
--- a/fence/agents/cisco_mds/fence_cisco_mds.py
+++ b/fence/agents/cisco_mds/fence_cisco_mds.py
@@ -111,6 +111,7 @@ def main():
docs["shortdesc"] = "Fence agent for Cisco MDS"
docs["longdesc"] = "fence_cisco_mds is an I/O Fencing agent \
which can be used with any Cisco MDS 9000 series with SNMP enabled device."
+ docs["vendorurl"] = "http://www.cisco.com"
show_docs(options, docs)
if (not (options["-o"] in ["list","monitor"])):
diff --git a/fence/agents/cpint/fence_cpint.8 b/fence/agents/cpint/fence_cpint.8
index efbaa7e..e9f1c5d 100644
--- a/fence/agents/cpint/fence_cpint.8
+++ b/fence/agents/cpint/fence_cpint.8
@@ -26,6 +26,8 @@ fence_node sends the options through stdin when it execs the agent.
fence_cpint can be run by itself with command line options which is useful for
testing.
+Vendor URL: http://www.ibm.com
+
.SH OPTIONS
.TP
\fB-h\fP
diff --git a/fence/agents/drac/fence_drac.8 b/fence/agents/drac/fence_drac.8
index 8dda184..3e302d9 100644
--- a/fence/agents/drac/fence_drac.8
+++ b/fence/agents/drac/fence_drac.8
@@ -25,6 +25,8 @@ Fenced sends parameters through stdin when it execs the agent. fence_drac
can be run by itself with command line options. This is useful for testing
and for turning outlets on or off from scripts.
+Vendor URL: http://www.dell.com
+
.SH OPTIONS
.TP
\fB-a\fP \fIIPaddress\fR
diff --git a/fence/agents/drac5/fence_drac5.py b/fence/agents/drac5/fence_drac5.py
index 900b547..256158a 100755
--- a/fence/agents/drac5/fence_drac5.py
+++ b/fence/agents/drac5/fence_drac5.py
@@ -104,6 +104,7 @@ which can be used with the Dell Remote Access Card v5 or CMC (DRAC). \
This device provides remote access to controlling power to a server. \
It logs into the DRAC through the telnet/ssh interface of the card. \
By default, the telnet interface is not enabled."
+ docs["vendorurl"] = "http://www.dell.com"
show_docs(options, docs)
##
diff --git a/fence/agents/egenera/fence_egenera.8 b/fence/agents/egenera/fence_egenera.8
index cfa839e..7e907cd 100644
--- a/fence/agents/egenera/fence_egenera.8
+++ b/fence/agents/egenera/fence_egenera.8
@@ -21,6 +21,8 @@ fence_egenera accepts options on the command line as well as from stdin.
Fenced sends parameters through stdin when it execs the agent. fence_egenera
can also be run by itself with command line options.
+Vendor URL: http://www.egenera.com
+
.SH OPTIONS
.TP
\fB-c\fP \fIcserver\fR
diff --git a/fence/agents/eps/fence_eps.py b/fence/agents/eps/fence_eps.py
index ffcb69b..049c01c 100644
--- a/fence/agents/eps/fence_eps.py
+++ b/fence/agents/eps/fence_eps.py
@@ -117,6 +117,7 @@ this is only one, which has support for hidden page feature. \
Agent basically works by connecting to hidden page and pass \
appropriate arguments to GET request. This means, that hidden \
page feature must be enabled and properly configured."
+ docs["vendorurl"] = "http://www.epowerswitch.com"
show_docs(options, docs)
#Run fence action. Conn is None, beacause we always need open new http connection
diff --git a/fence/agents/ibmblade/fence_ibmblade.py b/fence/agents/ibmblade/fence_ibmblade.py
index 3ad6acc..323a4ad 100644
--- a/fence/agents/ibmblade/fence_ibmblade.py
+++ b/fence/agents/ibmblade/fence_ibmblade.py
@@ -77,6 +77,7 @@ def main():
which can be used with IBM BladeCenter chassis. It issues SNMP Set \
request to BladeCenter chassis, rebooting, powering up or down \
the specified Blade Server."
+ docs["vendorurl"] = "http://www.ibm.com"
show_docs(options, docs)
# Operate the fencing device
diff --git a/fence/agents/ifmib/fence_ifmib.py b/fence/agents/ifmib/fence_ifmib.py
index 9f388d0..2914301 100644
--- a/fence/agents/ifmib/fence_ifmib.py
+++ b/fence/agents/ifmib/fence_ifmib.py
@@ -137,6 +137,7 @@ It was written with managed ethernet switches in mind, in order to \
fence iSCSI SAN connections. However, there are many devices that \
support the IF-MIB interface. The agent uses IF-MIB::ifAdminStatus \
to control the state of an interface."
+ docs["vendorurl"] = "http://www.ietf.org/wg/concluded/ifmib.html"
show_docs(options, docs)
# Operate the fencing device
diff --git a/fence/agents/ilo/fence_ilo.py b/fence/agents/ilo/fence_ilo.py
index 10d888c..b68f4e4 100755
--- a/fence/agents/ilo/fence_ilo.py
+++ b/fence/agents/ilo/fence_ilo.py
@@ -76,6 +76,7 @@ used for HP servers with the Integrated Light Out (iLO) PCI card.\
The agent opens an SSL connection to the iLO card. Once the SSL \
connection is established, the agent is able to communicate with \
the iLO card through an XML stream."
+ docs["vendorurl"] = "http://www.hp.com"
show_docs(options, docs)
##
diff --git a/fence/agents/ilo_mp/fence_ilo_mp.py b/fence/agents/ilo_mp/fence_ilo_mp.py
index b96c417..1f9363b 100644
--- a/fence/agents/ilo_mp/fence_ilo_mp.py
+++ b/fence/agents/ilo_mp/fence_ilo_mp.py
@@ -44,6 +44,7 @@ def main():
docs = { }
docs["shortdesc"] = "Fence agent for HP iLO MP"
docs["longdesc"] = ""
+ docs["vendorurl"] = "http://www.hp.com"
show_docs(options, docs)
conn = fence_login(options)
diff --git a/fence/agents/intelmodular/fence_intelmodular.py b/fence/agents/intelmodular/fence_intelmodular.py
index 1a313ae..11ff9bc 100644
--- a/fence/agents/intelmodular/fence_intelmodular.py
+++ b/fence/agents/intelmodular/fence_intelmodular.py
@@ -87,6 +87,7 @@ Note: Since firmware update version 2.7, SNMP v2 write support is \
removed, and replaced by SNMP v3 support. So agent now has default \
SNMP version 3. If you are using older firmware, please supply -d \
for command line and snmp_version option for your cluster.conf."
+ docs["vendorurl"] = "http://www.intel.com"
show_docs(options, docs)
# Operate the fencing device
diff --git a/fence/agents/ldom/fence_ldom.py b/fence/agents/ldom/fence_ldom.py
index d520fca..507a97a 100644
--- a/fence/agents/ldom/fence_ldom.py
+++ b/fence/agents/ldom/fence_ldom.py
@@ -113,6 +113,7 @@ for root in bash). But (for example) csh use ], so in that case you \
must use parameter -c with argument ]. Very similar situation is, \
if you use bash and login to host machine with other user than \
root. Than prompt is $, so again, you must use parameter -c."
+ docs["vendorurl"] = "http://www.sun.com"
show_docs(options, docs)
##
diff --git a/fence/agents/lib/fence2man.xsl b/fence/agents/lib/fence2man.xsl
index abf9d93..563b3a4 100644
--- a/fence/agents/lib/fence2man.xsl
+++ b/fence/agents/lib/fence2man.xsl
@@ -40,6 +40,9 @@ as from stdin. Fenced sends parameters through stdin when it execs the
agent. <xsl:value-of select="@name" /> can be run by itself with command
line options. This is useful for testing and for turning outlets on or off
from scripts.
+<xsl:if test="vendor-url">
+Vendor URL: <xsl:value-of select="vendor-url" />
+</xsl:if>
.SH PARAMETERS
<xsl:apply-templates select="parameters"><xsl:with-param name="show">getopt</xsl:with-param></xsl:apply-templates>
.SH ACTIONS
diff --git a/fence/agents/lib/fencing.py.py b/fence/agents/lib/fencing.py.py
index 2617492..831cdb1 100644
--- a/fence/agents/lib/fencing.py.py
+++ b/fence/agents/lib/fencing.py.py
@@ -421,6 +421,8 @@ def metadata(avail_opt, options, docs):
print "<?xml version=\"1.0\" ?>"
print "<resource-agent name=\"" + os.path.basename(sys.argv[0]) + "\" shortdesc=\"" + docs["shortdesc"] + "\" >"
print "<longdesc>" + docs["longdesc"] + "</longdesc>"
+ if docs.has_key("vendorurl"):
+ print "<vendor-url>" + docs["vendorurl"] + "</vendor-url>"
print "<parameters>"
for option, value in sorted_list:
if all_opt[option].has_key("shortdesc"):
diff --git a/fence/agents/mcdata/fence_mcdata.8 b/fence/agents/mcdata/fence_mcdata.8
index 2230a66..c52ffd6 100644
--- a/fence/agents/mcdata/fence_mcdata.8
+++ b/fence/agents/mcdata/fence_mcdata.8
@@ -26,6 +26,8 @@ into the GFS cluster (after reboot) the port on the McData FC switch needs to
be enabled. This can be done by running fence_mcdata and specifying the
enable action.
+Vendor URL: http://www.brocade.com
+
.SH OPTIONS
.TP
\fB-a\fP \fIIPaddress\fP
diff --git a/fence/agents/rackswitch/fence_rackswitch.8 b/fence/agents/rackswitch/fence_rackswitch.8
index 4f662c7..fc64a79 100644
--- a/fence/agents/rackswitch/fence_rackswitch.8
+++ b/fence/agents/rackswitch/fence_rackswitch.8
@@ -18,6 +18,8 @@ fence_rackswitch accepts options on the command line as well as from stdin.
fenced sends the options through stdin when it execs the agent. fence_rackswitch
can be run by itself with command line options which is useful for testing.
+Vendor URL: http://www.bladenetwork.net
+
.SH OPTIONS
.TP
\fB-a\fP \fIIPaddress\fP
diff --git a/fence/agents/rsa/fence_rsa.py b/fence/agents/rsa/fence_rsa.py
index f633cd6..58ab148 100644
--- a/fence/agents/rsa/fence_rsa.py
+++ b/fence/agents/rsa/fence_rsa.py
@@ -66,6 +66,7 @@ logs into an RSA II device via telnet and reboots the associated \
machine. Lengthy telnet connections to the RSA II device should \
be avoided while a GFS cluster is running because the connection \
will block any necessary fencing actions."
+ docs["vendorurl"] = "http://www.ibm.com"
show_docs(options, docs)
##
diff --git a/fence/agents/rsb/fence_rsb.8 b/fence/agents/rsb/fence_rsb.8
index 2bb7bf4..d278271 100644
--- a/fence/agents/rsb/fence_rsb.8
+++ b/fence/agents/rsb/fence_rsb.8
@@ -19,6 +19,7 @@ fence_rsb accepts options on the command line as well as from stdin.
Fenced sends parameters through stdin when it execs the agent. fence_rsb
can be run by itself with command line options. This is useful for testing.
+Vendor URL: http://www.fujitsu.com
.SH OPTIONS
.TP
\fB-a\fP \fIIPaddress\fR
diff --git a/fence/agents/sanbox2/fence_sanbox2.py b/fence/agents/sanbox2/fence_sanbox2.py
index 086fe32..47f3bc8 100644
--- a/fence/agents/sanbox2/fence_sanbox2.py
+++ b/fence/agents/sanbox2/fence_sanbox2.py
@@ -130,6 +130,7 @@ QLogic SANBox2 FC switches. It logs into a SANBox2 switch via telnet and disabl
port. Disabling the port which a machine is connected to effectively fences that machine. \
Lengthy telnet connections to the switch should be avoided while a GFS cluster is running \
because the connection will block any necessary fencing actions."
+ docs["vendorurl"] = "http://www.qlogic.com"
show_docs(options, docs)
##
diff --git a/fence/agents/vixel/fence_vixel.8 b/fence/agents/vixel/fence_vixel.8
index dc285c5..83db14f 100644
--- a/fence/agents/vixel/fence_vixel.8
+++ b/fence/agents/vixel/fence_vixel.8
@@ -29,6 +29,8 @@ Then apply
Consult the Vixel manual for details
+Vendor URL: http://www.emulex.com
+
.SH OPTIONS
.TP
\fB-a\fP \fIIPaddress\fP
diff --git a/fence/agents/vmware/fence_vmware.py b/fence/agents/vmware/fence_vmware.py
index ad51687..99e5ca9 100644
--- a/fence/agents/vmware/fence_vmware.py
+++ b/fence/agents/vmware/fence_vmware.py
@@ -322,6 +322,7 @@ command is used.\
After you have successfully installed VI Perl Toolkit or VIX API, you should \
be able to run fence_vmware_helper (part of this agent) or vmrun command. \
This agent supports only vmrun from version 2.0.0 (VIX API 1.6.0)."
+ docs["vendorurl"] = "http://www.vmware.com"
show_docs(options, docs)
# Check vmware type and set path
diff --git a/fence/agents/wti/fence_wti.py b/fence/agents/wti/fence_wti.py
index a45e3ec..92b362a 100644
--- a/fence/agents/wti/fence_wti.py
+++ b/fence/agents/wti/fence_wti.py
@@ -96,6 +96,7 @@ which can be used with the WTI Network Power Switch (NPS). It logs \
into an NPS via telnet or ssh and boots a specified plug. \
Lengthy telnet connections to the NPS should be avoided while a GFS cluster \
is running because the connection will block any necessary fencing actions."
+ docs["vendorurl"] = "http://www.wti.com"
show_docs(options, docs)
##
diff --git a/fence/agents/xcat/fence_xcat.8 b/fence/agents/xcat/fence_xcat.8
index 7da35d5..719f896 100644
--- a/fence/agents/xcat/fence_xcat.8
+++ b/fence/agents/xcat/fence_xcat.8
@@ -23,6 +23,8 @@ NOTE: It is recommended that fence_bladecenter(8) is used instead of fence_xcat
the bladecenter firmware supports telnet. This interface is much cleaner and
easier to setup.
+Vendor URL: http://www.xcat.org
+
.SH OPTIONS
.TP
\fB-h\fP
diff --git a/fence/agents/zvm/fence_zvm.8 b/fence/agents/zvm/fence_zvm.8
index b22f8e1..c58d8ae 100644
--- a/fence/agents/zvm/fence_zvm.8
+++ b/fence/agents/zvm/fence_zvm.8
@@ -18,6 +18,8 @@ fence_node sends the options through stdin when it execs the agent.
fence_zvm can be run by itself with command line options which is useful
for testing.
+Vendor URL: http://www.ibm.com
+
.SH OPTIONS
.TP
\fB-a\fP \fIIPaddress\fP
14 years, 4 months
cluster: STABLE3 - cman: don't set token_retransmits_before_loss_const
by Christine Caulfield
Gitweb: http://git.fedorahosted.org/git/cluster.git?p=cluster.git;a=commitdiff;h=...
Commit: b75bae233cbf845f85ed1c1b25b41f336d19beb4
Parent: 6552110fd20295d0f5244b7e2f87735545d2110e
Author: Christine Caulfield <ccaulfie(a)redhat.com>
AuthorDate: Mon Jan 18 13:12:52 2010 +0000
Committer: Christine Caulfield <ccaulfie(a)redhat.com>
CommitterDate: Mon Jan 18 13:12:52 2010 +0000
cman: don't set token_retransmits_before_loss_const
corosync has a better idea than us for what this value should be
so don't set it.
Things seem to run better this way :S
Signed-off-by: Christine Caulfield <ccaulfie(a)redhat.com>
---
cman/daemon/cman-preconfig.c | 4 ----
1 files changed, 0 insertions(+), 4 deletions(-)
diff --git a/cman/daemon/cman-preconfig.c b/cman/daemon/cman-preconfig.c
index 00a5330..5036a27 100644
--- a/cman/daemon/cman-preconfig.c
+++ b/cman/daemon/cman-preconfig.c
@@ -694,10 +694,6 @@ static void add_cman_overrides(struct objdb_iface_ver0 *objdb)
objdb->object_key_create_typed(object_handle, "token",
tmp, strlen(tmp)+1, OBJDB_VALUETYPE_STRING);
}
- if (objdb_get_string(objdb, object_handle, "token_retransmits_before_loss_const", &value)) {
- objdb->object_key_create_typed(object_handle, "token_retransmits_before_loss_const",
- "20", strlen("20")+1, OBJDB_VALUETYPE_STRING);
- }
/* Extend consensus & join timeouts per bz#214290 */
if (objdb_get_string(objdb, object_handle, "join", &value)) {
14 years, 4 months