[Ocfs2-tools-devel] [PATCH 08/10] o2cb: Add manpage for o2cb

Sunil Mushran sunil.mushran at oracle.com
Tue Jul 22 14:44:16 PDT 2008


This patch adds a manpage for o2cb cluster stack that provides details for the
two configuration files.

Signed-off-by: Sunil Mushran <sunil.mushran at oracle.com>
---
 configure.in                              |    1 +
 debian/ocfs2-tools.install                |    1 +
 debian/ocfs2-tools.manpages               |    1 +
 debugfs.ocfs2/debugfs.ocfs2.8.in          |    3 +-
 fsck.ocfs2/fsck.ocfs2.8.in                |    3 +-
 fsck.ocfs2/fsck.ocfs2.checks.8.in         |    2 +-
 libo2cb/.gitignore                        |    1 +
 libo2cb/Makefile                          |    4 +-
 libo2cb/o2cb.7.in                         |  143 +++++++++++++++++++++++++++++
 mkfs.ocfs2/mkfs.ocfs2.8.in                |    3 +-
 mount.ocfs2/mount.ocfs2.8.in              |    3 +-
 mounted.ocfs2/mounted.ocfs2.8.in          |    3 +-
 o2cb_ctl/o2cb_ctl.8.in                    |    3 +-
 o2image/o2image.8.in                      |    2 +-
 ocfs2console/ocfs2console.8.in            |    3 +-
 tunefs.ocfs2/tunefs.ocfs2.8.in            |    3 +-
 vendor/common/ocfs2-tools.spec-generic.in |    1 +
 17 files changed, 169 insertions(+), 11 deletions(-)
 create mode 100644 libo2cb/o2cb.7.in

diff --git a/configure.in b/configure.in
index 800e68e..3118c5f 100644
--- a/configure.in
+++ b/configure.in
@@ -334,6 +334,7 @@ ocfs2cdsl/ocfs2cdsl.8
 ocfs2console/ocfs2console.8
 tunefs.ocfs2/tunefs.ocfs2.8
 o2image/o2image.8
+libo2cb/o2cb.7
 vendor/common/ocfs2-tools.spec-generic
 ])
 
diff --git a/debian/ocfs2-tools.install b/debian/ocfs2-tools.install
index 8ce0e4c..62c2e29 100644
--- a/debian/ocfs2-tools.install
+++ b/debian/ocfs2-tools.install
@@ -13,6 +13,7 @@ usr/share/man/man8/fsck.ocfs2.checks.8
 usr/share/man/man8/mkfs.ocfs2.8
 usr/share/man/man8/mount.ocfs2.8
 usr/share/man/man8/mounted.ocfs2.8
+usr/share/man/man7/o2cb.7
 usr/share/man/man8/o2cb_ctl.8
 usr/share/man/man8/ocfs2_hb_ctl.8
 usr/share/man/man8/ocfs2cdsl.8
diff --git a/debian/ocfs2-tools.manpages b/debian/ocfs2-tools.manpages
index 8e46efc..605b8c4 100644
--- a/debian/ocfs2-tools.manpages
+++ b/debian/ocfs2-tools.manpages
@@ -8,3 +8,4 @@ debian/tmp/usr/share/man/man8/o2cb_ctl.8
 debian/tmp/usr/share/man/man8/ocfs2_hb_ctl.8
 debian/tmp/usr/share/man/man8/ocfs2cdsl.8
 debian/tmp/usr/share/man/man8/o2image.8
+debian/tmp/usr/share/man/man7/o2cb.7
diff --git a/debugfs.ocfs2/debugfs.ocfs2.8.in b/debugfs.ocfs2/debugfs.ocfs2.8.in
index 603ce63..7438125 100644
--- a/debugfs.ocfs2/debugfs.ocfs2.8.in
+++ b/debugfs.ocfs2/debugfs.ocfs2.8.in
@@ -1,4 +1,4 @@
-.TH "debugfs.ocfs2" "8" "March 2008" "Version @VERSION@" "OCFS2 Manual Pages"
+.TH "debugfs.ocfs2" "8" "July 2008" "Version @VERSION@" "OCFS2 Manual Pages"
 .SH "NAME"
 debugfs.ocfs2 \- OCFS2 file system debugger.
 .SH "SYNOPSIS"
@@ -227,6 +227,7 @@ This tool has been modelled after \fBdebugfs\fR, a debugging tool for ext2.
 .BR ocfs2console(8)
 .BR ocfs2cdsl(8)
 .BR o2image(8)
+.BR o2cb(7)
 
 .SH "AUTHOR"
 Oracle Corporation
diff --git a/fsck.ocfs2/fsck.ocfs2.8.in b/fsck.ocfs2/fsck.ocfs2.8.in
index 17ee59e..b16a709 100644
--- a/fsck.ocfs2/fsck.ocfs2.8.in
+++ b/fsck.ocfs2/fsck.ocfs2.8.in
@@ -1,4 +1,4 @@
-.TH "fsck.ocfs2" "8" "March 2008" "Version @VERSION@" "OCFS2 Manual Pages"
+.TH "fsck.ocfs2" "8" "July 2008" "Version @VERSION@" "OCFS2 Manual Pages"
 .SH "NAME"
 fsck.ocfs2 \- Check an \fIOCFS2\fR file system.
 .SH "SYNOPSIS"
@@ -97,6 +97,7 @@ The exit code returned by \fBfsck.ocfs2\fR is the sum of the following condition
 .BR mounted.ocfs2(8)
 .BR ocfs2console(8)
 .BR ocfs2cdsl(8)
+.BR o2cb(7)
 
 
 .SH "AUTHORS"
diff --git a/fsck.ocfs2/fsck.ocfs2.checks.8.in b/fsck.ocfs2/fsck.ocfs2.checks.8.in
index 3d3246a..2266083 100644
--- a/fsck.ocfs2/fsck.ocfs2.checks.8.in
+++ b/fsck.ocfs2/fsck.ocfs2.checks.8.in
@@ -1,4 +1,4 @@
-.TH "fsck.ocfs2.checks" "8" "March 2008" "Version @VERSION@" "OCFS2 Manual Pages"
+.TH "fsck.ocfs2.checks" "8" "July 2008" "Version @VERSION@" "OCFS2 Manual Pages"
 .SH "NAME"
 fsck.ocfs2.checks \- Consistency checks that 
 .BR fsck.ocfs2(8)
diff --git a/libo2cb/.gitignore b/libo2cb/.gitignore
index 57f37ad..7e22576 100644
--- a/libo2cb/.gitignore
+++ b/libo2cb/.gitignore
@@ -5,3 +5,4 @@ o2cb_err.c
 o2cb_err.h
 cscope*
 libo2cb.a
+o2cb.7
diff --git a/libo2cb/Makefile b/libo2cb/Makefile
index 76799b7..7728bb3 100644
--- a/libo2cb/Makefile
+++ b/libo2cb/Makefile
@@ -57,7 +57,9 @@ libo2cb.a: $(OBJS)
 	$(AR) r $@ $^
 	$(RANLIB) $@
 
-DIST_FILES = $(CFILES) $(HFILES) o2cb_err.et
+MANS = o2cb.7
+
+DIST_FILES = $(CFILES) $(HFILES) o2cb_err.et o2cb.7.in
 
 CLEAN_RULES = clean-err
 
diff --git a/libo2cb/o2cb.7.in b/libo2cb/o2cb.7.in
new file mode 100644
index 0000000..d122935
--- /dev/null
+++ b/libo2cb/o2cb.7.in
@@ -0,0 +1,143 @@
+.TH "o2cb" "7" "July 2008" "Version @VERSION@" "OCFS2 Manual Pages"
+.SH "NAME"
+o2cb \- Default cluster stack for the \fIOCFS2\fR file system.
+.SH "DESCRIPTION"
+.PP 
+\fBo2cb\fR is the default cluster stack for the \fIOCFS2\fR file system. It
+includes a node manager (o2nm) to keep track of the nodes in the cluster,
+a heartbeat agent (o2hb) to detect live nodes, a network agent (o2net) for
+intra-cluster node communication and a distributed lock manager (o2dlm)
+to keep track of lock resources. All these components are in-kernel. It also
+includes an in-memory file system, dlmfs, to allow userspace to access the
+in-kernel dlm.
+
+This cluster stack has two configuration files, namely, \fI/etc/ocfs2/cluster.conf\fR
+and \fI/etc/sysconfig/o2cb\fR. Whereas the former keeps track of the cluster layout,
+the latter keeps track of the cluster timeouts. Both files are only read when the
+cluster is brought online. Values inuse by the online cluster can be perused in the
+/sys/kernel/config/cluster directory structure.
+
+.SH "CONFIGURATION"
+.PP
+The cluster layout is specified in \fB/etc/ocfs2/cluster.conf\fR. While it is easier
+to populate and propagate this configuration file using \fBocfs2console(8)\fR, one can
+also do it by manually as long as care is taken to format the file correctly.
+
+While the console utility is intuitive to use, there are few points to keep in mind.
+.TP
+	1. The node name needs to match the hostname. It does not need to include the domain name. For example, for appserver.oracle.com can be appserver.
+.TP
+	2. The IP address need not be the one associated with that hostname. As in, any valid IP address on that node can be used. O2CB will not attempt to match the node name (hostname) with the specified IP address.
+.PP
+For best performance, use of a private interconnect (lower latency) is recommended.
+
+The cluster.conf file is in a stanza format with two types of stanzas, namely, cluster
+and node. A typical cluster.conf will have one cluster stanza and multiple node stanzas.
+
+The \fIcluster stanza\fR has two parameters:
+.TP
+\fBnode_count\fR
+Total number of nodes in the cluster
+.TP
+\fBname\fR
+Name of the cluster
+
+.PP
+The \fInode stanza\fR has five parameters:
+.TP
+\fBip_port\fR
+IP port
+.TP
+\fBip_address\fR
+IP address
+.TP
+\fBnumber\fR
+Unique node number from 0-254
+.TP
+\fBname\fR
+Hostname
+.TP
+\fBcluster\fR
+Name of the cluster
+.PP
+Users populating cluster.conf manually should follow the format strictly. As in,
+stanza header should start at the first column and end with a colon, stanza parameters
+should start after a tab, a blank line should demarcate each stanza and care taken to
+avoid stray whitespaces.
+
+The O2CB cluster timeouts are specified in \fB/etc/sysconfig/o2cb\fR and can be
+configured using the \fIo2cb\fR init script.
+
+These timeouts are used by the O2CB clusterstack to determine whether a node is dead
+or alive. While the use of default values is recommended, users can experiment with
+other values if the defaults are causing spurious fencing.
+
+The \fIcluster timeouts\fR are:
+.TP
+\fBHeartbeat Dead Threshold\fR
+The Disk Heartbeat timeout is the number of two second iterations before a node is
+considered dead. The exact formula used to convert the timeout in seconds to the
+number of iterations is as follows:
+
+O2CB_HEARTBEAT_THRESHOLD = (((timeout in seconds) / 2) + 1)
+
+For e.g., to specify a 60 sec timeout, set it to 31. For 120 secs, set it to 61. The default for this timeout is 60 secs (O2CB_HEARTBEAT_THRESHOLD = 31).
+
+.TP
+\fBNetwork Idle Timeout\fR
+The Network Idle timeout specifies the time in milliseconds before a network connection
+is considered dead. It defaults to 30000 ms.
+
+.TP
+\fBNetwork Keepalive Delay\fR
+The Network Keepalive specifies the maximum delay in milliseconds before a keepalive
+packet is sent to another node to check whether it is alive or not. If the node is alive,
+it will respond. Its defaults to 2000 ms.
+
+.TP
+\fBNetwork Reconnect Delay\fR
+The Network Reconnect specifies the minimum delay in milliseconds between connection
+attempts. It defaults to 2000 ms.
+.PP
+
+.SH "EXAMPLES"
+A sample /etc/ocfs2/cluster.conf.
+
+cluster:
+    node_count = 3
+    name = webcluster
+
+node:
+    ip_port = 7777
+    ip_address = 192.168.0.107
+    number = 7
+    name = node7
+    cluster = webcluster
+
+node:
+    ip_port = 7777
+    ip_address = 192.168.0.106
+    number = 6
+    name = node6
+    cluster = webcluster
+
+node:
+    ip_port = 7777
+    ip_address = 192.168.0.110
+    number = 10
+    name = node10
+    cluster = webcluster
+
+.SH "SEE ALSO"
+.BR mkfs.ocfs2(8)
+.BR fsck.ocfs2(8)
+.BR tunefs.ocfs2(8)
+.BR debugfs.ocfs2(8)
+.BR ocfs2console(8)
+.BR ocfs2cdsl(8)
+
+.SH "AUTHORS"
+Oracle Corporation
+
+.SH "COPYRIGHT"
+Copyright \(co 2004, 2008 Oracle. All rights reserved.
diff --git a/mkfs.ocfs2/mkfs.ocfs2.8.in b/mkfs.ocfs2/mkfs.ocfs2.8.in
index ff70f24..75110b1 100644
--- a/mkfs.ocfs2/mkfs.ocfs2.8.in
+++ b/mkfs.ocfs2/mkfs.ocfs2.8.in
@@ -1,4 +1,4 @@
-.TH "mkfs.ocfs2" "8" "March 2008" "Version @VERSION@" "OCFS2 Manual Pages"
+.TH "mkfs.ocfs2" "8" "July 2008" "Version @VERSION@" "OCFS2 Manual Pages"
 .SH "NAME"
 mkfs.ocfs2 \- Creates an \fIOCFS2\fR file system.
 .SH "SYNOPSIS"
@@ -160,6 +160,7 @@ consume the given number of file system blocks (see \fB-b\fR) on the device.
 .BR mounted.ocfs2(8)
 .BR ocfs2console(8)
 .BR ocfs2cdsl(8)
+.BR o2cb(7)
 
 .SH "AUTHORS"
 Oracle Corporation
diff --git a/mount.ocfs2/mount.ocfs2.8.in b/mount.ocfs2/mount.ocfs2.8.in
index 6ea901e..b8c5258 100644
--- a/mount.ocfs2/mount.ocfs2.8.in
+++ b/mount.ocfs2/mount.ocfs2.8.in
@@ -1,4 +1,4 @@
-.TH "mount.ocfs2" "8" "March 2008" "Version @VERSION@" "OCFS2 Manual Pages"
+.TH "mount.ocfs2" "8" "July 2008" "Version @VERSION@" "OCFS2 Manual Pages"
 .SH "NAME"
 mount.ocfs2 \-  mount an \fIOCFS2\fR filesystem
 .SH "SYNOPSIS"
@@ -84,6 +84,7 @@ Mount the file system read-write.
 .BR mounted.ocfs2(8)
 .BR debugfs.ocfs2(8)
 .BR ocfs2cdsl(8)
+.BR o2cb(7)
 
 .SH "AUTHORS"
 Oracle Corporation
diff --git a/mounted.ocfs2/mounted.ocfs2.8.in b/mounted.ocfs2/mounted.ocfs2.8.in
index 97a71ec..54360a5 100644
--- a/mounted.ocfs2/mounted.ocfs2.8.in
+++ b/mounted.ocfs2/mounted.ocfs2.8.in
@@ -1,4 +1,4 @@
-.TH "mounted.ocfs2" "8" "March 2008" "Version @VERSION@" "OCFS2 Manual Pages"
+.TH "mounted.ocfs2" "8" "July 2008" "Version @VERSION@" "OCFS2 Manual Pages"
 .SH "NAME"
 mounted.ocfs2 \- Detects all \fIOCFS2\fR volumes on a system.
 .SH "SYNOPSIS"
@@ -44,6 +44,7 @@ Device      FS     Nodes
 .BR debugfs.ocfs2(8)
 .BR ocfs2console(8)
 .BR ocfs2cdsl(8)
+.BR o2cb(7)
 
 .SH "AUTHORS"
 Oracle Corporation
diff --git a/o2cb_ctl/o2cb_ctl.8.in b/o2cb_ctl/o2cb_ctl.8.in
index 6caaedb..7a61d57 100644
--- a/o2cb_ctl/o2cb_ctl.8.in
+++ b/o2cb_ctl/o2cb_ctl.8.in
@@ -1,4 +1,4 @@
-.TH "o2cb_ctl" "8" "March 2008" "Version @VERSION@" "OCFS2 Manual Pages"
+.TH "o2cb_ctl" "8" "July 2008" "Version @VERSION@" "OCFS2 Manual Pages"
 .SH "NAME"
 o2cb_ctl \- Control program for the \fIO2CB\fR cluster service.
 .SH "SYNOPSIS"
@@ -136,6 +136,7 @@ $ o2cb_ctl -H -n node5 -a ip_address=192.168.1.5
 .BR mounted.ocfs2(8)
 .BR ocfs2console(8)
 .BR ocfs2cdsl(8)
+.BR o2cb(7)
 
 .SH "AUTHORS"
 Oracle Corporation
diff --git a/o2image/o2image.8.in b/o2image/o2image.8.in
index 06bdea3..db699b5 100644
--- a/o2image/o2image.8.in
+++ b/o2image/o2image.8.in
@@ -1,4 +1,4 @@
-.TH "o2image" "8" "December 2007" "Version @VERSION@" "OCFS2 Manual Pages"
+.TH "o2image" "8" "July 2008" "Version @VERSION@" "OCFS2 Manual Pages"
 .SH "NAME"
 o2image \- Save/Restore critical ocfs2 filesystem data to a file.
 .SH "SYNOPSIS"
diff --git a/ocfs2console/ocfs2console.8.in b/ocfs2console/ocfs2console.8.in
index e0e4010..2f94cc3 100644
--- a/ocfs2console/ocfs2console.8.in
+++ b/ocfs2console/ocfs2console.8.in
@@ -1,4 +1,4 @@
-.TH "ocfs2console" "8" "March 2008" "Version @VERSION@" "OCFS2 Manual Pages"
+.TH "ocfs2console" "8" "July 2008" "Version @VERSION@" "OCFS2 Manual Pages"
 .SH "NAME"
 ocfs2console - GUI console for \fIOCFS2\fR.
 .SH "SYNOPSIS"
@@ -17,6 +17,7 @@ One can also use this tool to format, tune, mount and umount \fIOCFS2\fR volumes
 .BR mounted.ocfs2(8)
 .BR debugfs.ocfs2(8)
 .BR ocfs2cdsl(8)
+.BR o2cb(7)
 
 .SH AUTHORS
 Oracle Corporation
diff --git a/tunefs.ocfs2/tunefs.ocfs2.8.in b/tunefs.ocfs2/tunefs.ocfs2.8.in
index 80488b6..ed59929 100644
--- a/tunefs.ocfs2/tunefs.ocfs2.8.in
+++ b/tunefs.ocfs2/tunefs.ocfs2.8.in
@@ -1,4 +1,4 @@
-.TH "tunefs.ocfs2" "8" "March 2008" "Version @VERSION@" "OCFS2 Manual Pages"
+.TH "tunefs.ocfs2" "8" "July 2008" "Version @VERSION@" "OCFS2 Manual Pages"
 .SH "NAME"
 tunefs.ocfs2 \- Change \fIOCFS2\fR file system parameters.
 .SH "SYNOPSIS"
@@ -141,6 +141,7 @@ UUID=80d1adf4-3fde-40dd-9b56-d370462ace17
 .BR mounted.ocfs2(8)
 .BR ocfs2console(8)
 .BR ocfs2cdsl(8)
+.BR o2cb(7)
 
 .SH "AUTHORS"
 Oracle Corporation
diff --git a/vendor/common/ocfs2-tools.spec-generic.in b/vendor/common/ocfs2-tools.spec-generic.in
index 3308279..04c5e39 100644
--- a/vendor/common/ocfs2-tools.spec-generic.in
+++ b/vendor/common/ocfs2-tools.spec-generic.in
@@ -134,6 +134,7 @@ fi
 /usr/share/man/man8/ocfs2_hb_ctl.8.gz
 /usr/share/man/man8/ocfs2cdsl.8.gz
 /usr/share/man/man8/o2image.8.gz
+/usr/share/man/man7/o2cb.7.gz
 
 
 %files -n ocfs2console
-- 
1.5.4.3




More information about the Ocfs2-tools-devel mailing list