Update corosync_overview.8 man page

Move forward 5 years on our main man page ;)

Signed-off-by: Steven Dake <sdake@redhat.com>
Reviewed-by: Angus Salkeld <asalkeld@redhat.com>
This commit is contained in:
Steven Dake 2012-02-13 14:06:26 -07:00
parent 415ef892ad
commit 7cba91fee1

View File

@ -32,19 +32,13 @@
.\" * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
.\" * THE POSSIBILITY OF SUCH DAMAGE.
.\" */
.TH COROSYNC_OVERVIEW 8 2006-05-10 "corosync Man Page" "Corosync Cluster Engine Programmer's Manual"
.TH COROSYNC_OVERVIEW 8 2012-02-13 "corosync Man Page" "Corosync Cluster Engine Programmer's Manual"
.SH NAME
corosync_overview \- Corosync overview
.SH OVERVIEW
The corosync project is a project to implement a production quality "Revised BSD"
licensed implementation of the most recent SA Forum's Application Interface
Specification. The Application Interface Specification is a software API and
policies which are used to develop applications that maintain service during
faults. The API consists of Availability Management Framework (AMF) which
provides application failover, Cluster Membership (CLM), Checkpointing (CKPT),
Eventing (EVT), Messaging (MSG), and Distributed Locking (DLOCK).
Currently Messaging is unimplemented.
The corosync project's purpose is to implement and support a production quality
Revised BSD licensed implementation of a high performance low overhead high
availability development toolkit.
Faults occur for various reasons:
.PP
@ -58,33 +52,18 @@ Faults occur for various reasons:
The major focus of high availability in the past has been to mask hardware
faults. Faults in other components of the system have gone unsolved until
AIS. AIS can mask many types of faults in applications, middleware,
operating systems, or even hardware by providing a simple framework
for allowing developers to create redundant applications. These redundant
applications can be distributed over multiple nodes such that if any one
node faults, another node can recover.
Corosync. Corosync is designed for applications to replicate their state to
up to 16 processors. The processors all contain a replica of the application
state.
Application programmers develop applications to periodically record their
state using the checkpointing service. When an active application fails,
a standby application recovers the state of the application. This
technique, called stateful application failover, provides the fundamental
difference between corosync and other systems that have come before it.
With stateful application failover, the end-application user doesn't
have to reload the application or redial a telephone. The full state
is recorded, so the end-application user sees no interruption in service.
The corosync project provides two group message APIs called CPG and EVS.
The project developers recommend CPG be used for most applications. The CPG
service implmeents a closed group messaging model presenting extended virtual
synchrony guarantees.
Because programmers can now distribute applications across multiple
processes or nodes, a mechanism must exist for them to communicate.
This mechanism is provided by two services. The event service provides
a publish/subscribe model for events. The messaging service provides
end to end messaging. Finally a mechanism to synchronize access is
provided by the distributed lock service.
The corosync project also provides a group messaging toolkit called EVS.
The EVS service implements a messaging model known as Extended Virtual
Synchrony. This model allows one sender to transmit to many receivers.
Certain guarantees are provided for message and membership delivery
which make virtual synchrony ideal for developing distributed applications.
To manage conditions where the process executing the CPG application exchange
fails, we provide the Simple Availability Manager (sam) to provide simple
application restart.
.SH QUICKSTART
The corosync executive must be configured. In the directory conf in the
@ -130,44 +109,13 @@ Finally run the corosync executive. If corosync is packaged from a distro, it
may be set to start on system start. It may also be turned off by default in
which case the init script for corosync must be enabled.
After running aisexec, a list of all processors IP addresses running the corosync
executive and configured on the same multicast address will appear. If they
don't appear, there may be a problem with multicast in the distro or hardware.
If this happens, participation in the corosync mailing list may help solve the
problem. The email address is openais@lists.osdl.org.
.SH USING LIBRARIES
The corosync AIS libraries have header files which must be included in the
The corosync libraries have header files which must be included in the
developer's application. Once the header file is included, the developer can
reference the AIS interfaces.
reference the corosync interfaces.
The corosync project recommends to distros to place include files in
/usr/include/corosync. The following include lines must be added to
the application to use each of the following services:
#include <corosync/saClm.h> For the Cluster Membership B.01.01 service.
.PP
#include <corosync/saCkpt.h> For the Checkpointing B.01.01 service.
.PP
#include <corosync/saEvt.h> For the Eventing B.01.01 service.
.PP
#include <corosync/ais_amf.h> For the AMF A.01.01 service.
.PP
The corosync project recommends to distros to place library files in
/usr/lib. The following link lines must be added to the LDFLAGS section
of the makefile.
-lsaClm For the Cluster Membership B.01.01 service
.PP
-lsaCkpt For the Checkpointing B.01.01 service
.PP
-lsaEvt For the Eventing B.01.01 service
.PP
-lsaAmf For the AMF A.01.01 service
.PP
-lais Specify this to get access to all AIS libraries without specifying
each library individually.
/usr/include/corosync.
.SH IPv6
The corosync project supports both IPv4 and IPv6 network addresses. The entire
@ -190,9 +138,9 @@ which will cause significant problems. Make sure a route is available for
IPv6 traffic.
.SH ARCHITECTURE
The AIS libraries are a thin IPC interface to the corosync executive. The
corosync executive provides services for the SA Forum AIS libraries as well
as the EVS and CPG libraries.
The corosync libraries are a thin IPC interface to the corosync executive. The
corosync executive implements the functionality of the corosync APIs for
distributed coming.
The corosync executive uses the Totem extended virtual synchrony protocol. The
advantage to the end user is excellent performance characteristics and a proven
@ -209,21 +157,6 @@ This specifies the fully qualified path to the corosync configuration file.
The default is /etc/corosync/corosync.conf.
.TP
COROSYNC_AMF_CONFIG_FILE
This specifies the fully qualified path to the corosync Availability Management
Framework configuration file.
The default is /etc/corosync/amf.conf.
.TP
COROSYNC_DEFAULT_CONFIG_IFACE
This specifies the LCRSO that is used to parse the configuration file. This
allows other configuration file parsers to be implemented within the system.
The default is to use the default corosync configuration file parser which
parses the format specified in corosync.conf (5).
.TP
COROSYNC_TOTEM_AUTHKEY_FILE
This specifies the fully qualified path to the shared key used to
@ -252,21 +185,13 @@ compromised to allow the long-term capture of transmitted data.
For security reasons, the corosync executive binary should NEVER
be setuid or setgid in the filesystem.
.PP
.SH SAFTEST COMPLIANCE
The corosync libraries are now nearly compliant with every aspect of the SA
Forum's AIS specification. The AMF service, however, is not compliant with the
B.01.01 specification. The remaining services pass most of the tests of the
saftest suite against the B.01.01 specification.
.SH BUGS
The messaging service is partially implemented and not suitable for deployment.
The distributed locking service is buggy and not suitable for deployment.
The Availability Management Framework is under development and not suitable for
deployment..
None that are known.
.SH "SEE ALSO"
.BR corosync.conf (5),
.BR corosync-keygen (8),
.BR evs_overview (8)
.BR evs_overview (8),
.BR cpg_overview (8),
.BR sam_overview (8)
.PP