diff --git a/corosync.spec.in b/corosync.spec.in index c06675d0..8ac37579 100644 --- a/corosync.spec.in +++ b/corosync.spec.in @@ -1,301 +1,301 @@ @ALPHATAG@ @NUMCOMM@ @DIRTY@ # Conditionals # Invoke "rpmbuild --without " or "rpmbuild --with " # to disable or enable specific features %bcond_with watchdog %bcond_with monitoring %bcond_with snmp %bcond_with dbus %bcond_with systemd %bcond_with xmlconf %bcond_with nozzle %bcond_with vqsim %bcond_with runautogen %bcond_with userflags %global gitver %{?numcomm:.%{numcomm}}%{?alphatag:.%{alphatag}}%{?dirty:.%{dirty}} %global gittarver %{?numcomm:.%{numcomm}}%{?alphatag:-%{alphatag}}%{?dirty:-%{dirty}} Name: corosync Summary: The Corosync Cluster Engine and Application Programming Interfaces Version: @version@ Release: 1%{?gitver}%{?dist} License: BSD URL: http://corosync.github.io/corosync/ Source0: http://build.clusterlabs.org/corosync/releases/%{name}-%{version}%{?gittarver}.tar.gz # Runtime bits # The automatic dependency overridden in favor of explicit version lock Requires: corosynclib%{?_isa} = %{version}-%{release} # Build bits BuildRequires: gcc %if 0%{?suse_version} BuildRequires: groff-full %else BuildRequires: groff %endif BuildRequires: libqb-devel BuildRequires: libknet1-devel BuildRequires: zlib-devel %if %{with runautogen} BuildRequires: autoconf automake libtool %endif %if %{with monitoring} BuildRequires: libstatgrab-devel %endif %if %{with snmp} BuildRequires: net-snmp-devel %endif %if %{with dbus} %if 0%{?suse_version} BuildRequires: dbus-1-devel %else BuildRequires: dbus-devel %endif %endif %if %{with nozzle} BuildRequires: libnozzle1-devel %endif %if %{with systemd} %{?systemd_requires} BuildRequires: systemd BuildRequires: systemd-devel %else Requires(post): /sbin/chkconfig Requires(preun): /sbin/chkconfig %endif %if %{with xmlconf} Requires: libxslt %endif %if %{with vqsim} BuildRequires: readline-devel %endif %prep %setup -q -n %{name}-%{version}%{?gittarver} %build %if %{with runautogen} ./autogen.sh %endif %{configure} \ %if %{with watchdog} --enable-watchdog \ %endif %if %{with monitoring} --enable-monitoring \ %endif %if %{with snmp} --enable-snmp \ %endif %if %{with dbus} --enable-dbus \ %endif %if %{with systemd} --enable-systemd \ %endif %if %{with xmlconf} --enable-xmlconf \ %endif %if %{with nozzle} --enable-nozzle \ %endif %if %{with vqsim} --enable-vqsim \ %endif %if %{with userflags} --enable-user-flags \ %endif --with-initddir=%{_initrddir} \ --with-systemddir=%{_unitdir} \ --docdir=%{_docdir} make %{_smp_mflags} %install make install DESTDIR=%{buildroot} %if %{with dbus} mkdir -p -m 0700 %{buildroot}/%{_sysconfdir}/dbus-1/system.d install -m 644 %{_builddir}/%{name}-%{version}%{?gittarver}/conf/corosync-signals.conf %{buildroot}/%{_sysconfdir}/dbus-1/system.d/corosync-signals.conf %endif ## tree fixup # drop static libs rm -f %{buildroot}%{_libdir}/*.a rm -f %{buildroot}%{_libdir}/*.la # drop docs and html docs for now rm -rf %{buildroot}%{_docdir}/* # /etc/sysconfig/corosync-notifyd mkdir -p %{buildroot}%{_sysconfdir}/sysconfig install -m 644 tools/corosync-notifyd.sysconfig.example \ %{buildroot}%{_sysconfdir}/sysconfig/corosync-notifyd # /etc/sysconfig/corosync install -m 644 init/corosync.sysconfig.example \ %{buildroot}%{_sysconfdir}/sysconfig/corosync %description This package contains the Corosync Cluster Engine Executive, several default APIs and libraries, default configuration files, and an init script. %post %if %{with systemd} && 0%{?systemd_post:1} %systemd_post corosync.service %else if [ $1 -eq 1 ]; then /sbin/chkconfig --add corosync || : fi %endif %preun %if %{with systemd} && 0%{?systemd_preun:1} %systemd_preun corosync.service %else if [ $1 -eq 0 ]; then /sbin/service corosync stop &>/dev/null || : /sbin/chkconfig --del corosync || : fi %endif %postun %if %{with systemd} && 0%{?systemd_postun:1} %systemd_postun corosync.service %endif %files %doc LICENSE %{_sbindir}/corosync %{_sbindir}/corosync-keygen %{_sbindir}/corosync-cmapctl %{_sbindir}/corosync-cfgtool %{_sbindir}/corosync-cpgtool %{_sbindir}/corosync-quorumtool %{_sbindir}/corosync-notifyd %{_bindir}/corosync-blackbox %if %{with xmlconf} %{_bindir}/corosync-xmlproc %dir %{_datadir}/corosync %{_datadir}/corosync/xml2conf.xsl %{_mandir}/man8/corosync-xmlproc.8* %{_mandir}/man5/corosync.xml.5* %endif %dir %{_sysconfdir}/corosync %dir %{_sysconfdir}/corosync/uidgid.d %config(noreplace) %{_sysconfdir}/corosync/corosync.conf.example %config(noreplace) %{_sysconfdir}/sysconfig/corosync-notifyd %config(noreplace) %{_sysconfdir}/sysconfig/corosync %config(noreplace) %{_sysconfdir}/logrotate.d/corosync %if %{with dbus} %{_sysconfdir}/dbus-1/system.d/corosync-signals.conf %endif %if %{with snmp} %{_datadir}/snmp/mibs/COROSYNC-MIB.txt %endif %if %{with systemd} %{_unitdir}/corosync.service %{_unitdir}/corosync-notifyd.service %else %{_initrddir}/corosync %{_initrddir}/corosync-notifyd %endif %dir %{_localstatedir}/lib/corosync %dir %{_localstatedir}/log/cluster %{_mandir}/man7/corosync_overview.7* %{_mandir}/man8/corosync.8* %{_mandir}/man8/corosync-blackbox.8* %{_mandir}/man8/corosync-cmapctl.8* %{_mandir}/man8/corosync-keygen.8* %{_mandir}/man8/corosync-cfgtool.8* %{_mandir}/man8/corosync-cpgtool.8* %{_mandir}/man8/corosync-notifyd.8* %{_mandir}/man8/corosync-quorumtool.8* %{_mandir}/man5/corosync.conf.5* %{_mandir}/man5/votequorum.5* -%{_mandir}/man8/cmap_keys.8* +%{_mandir}/man7/cmap_keys.7* # library # %package -n corosynclib Summary: The Corosync Cluster Engine Libraries %description -n corosynclib This package contains corosync libraries. %files -n corosynclib %doc LICENSE %{_libdir}/libcfg.so.* %{_libdir}/libcpg.so.* %{_libdir}/libcmap.so.* %{_libdir}/libquorum.so.* %{_libdir}/libvotequorum.so.* %{_libdir}/libsam.so.* %{_libdir}/libcorosync_common.so.* %post -n corosynclib -p /sbin/ldconfig %postun -n corosynclib -p /sbin/ldconfig %package -n corosynclib-devel Summary: The Corosync Cluster Engine Development Kit Requires: corosynclib%{?_isa} = %{version}-%{release} Requires: pkgconfig Provides: corosync-devel = %{version} %description -n corosynclib-devel This package contains include files and man pages used to develop using The Corosync Cluster Engine APIs. %files -n corosynclib-devel %doc LICENSE %dir %{_includedir}/corosync/ %{_includedir}/corosync/corodefs.h %{_includedir}/corosync/cfg.h %{_includedir}/corosync/cmap.h %{_includedir}/corosync/corotypes.h %{_includedir}/corosync/cpg.h %{_includedir}/corosync/hdb.h %{_includedir}/corosync/sam.h %{_includedir}/corosync/quorum.h %{_includedir}/corosync/votequorum.h %{_libdir}/libcfg.so %{_libdir}/libcpg.so %{_libdir}/libcmap.so %{_libdir}/libquorum.so %{_libdir}/libvotequorum.so %{_libdir}/libsam.so %{_libdir}/libcorosync_common.so %{_libdir}/pkgconfig/*.pc %{_mandir}/man3/cpg_*3* %{_mandir}/man3/quorum_*3* %{_mandir}/man3/votequorum_*3* %{_mandir}/man3/sam_*3* %{_mandir}/man3/cmap_*3* %if %{with vqsim} %package -n corosync-vqsim Summary: The Corosync Cluster Engine - Votequorum Simulator Requires: corosynclib%{?_isa} = %{version}-%{release} Requires: pkgconfig %description -n corosync-vqsim A command-line simulator for the corosync votequorum subsystem. It uses the same code as the corosync quorum system but forks them into subprocesses to simulate nodes. Nodes can be added and removed as well as partitioned (to simulate network splits) %files -n corosync-vqsim %doc LICENSE %{_bindir}/corosync-vqsim %{_mandir}/man8/corosync-vqsim.8* %endif %changelog * @date@ Autotools generated version - @version@-1-@numcomm@.@alphatag@.@dirty@ - Autotools generated version diff --git a/man/Makefile.am b/man/Makefile.am index 2ef5dcd1..92a76eda 100644 --- a/man/Makefile.am +++ b/man/Makefile.am @@ -1,188 +1,188 @@ # Copyright (c) 2004 MontaVista Software, Inc. # Copyright (c) 2009, 2012, 2014 Red Hat, Inc. # # Authors: Steven Dake (sdake@redhat.com) # Fabio M. Di Nitto (fdinitto@redhat.com) # # All rights reserved. # # This software licensed under BSD license, the text of which follows: # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions are met: # # - Redistributions of source code must retain the above copyright notice, # this list of conditions and the following disclaimer. # - Redistributions in binary form must reproduce the above copyright notice, # this list of conditions and the following disclaimer in the documentation # and/or other materials provided with the distribution. # - Neither the name of the MontaVista Software, Inc. nor the names of its # contributors may be used to endorse or promote products derived from this # software without specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE # ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE # LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN # CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF # THE POSSIBILITY OF SUCH DAMAGE. MAINTAINERCLEANFILES = Makefile.in xml_man = corosync-xmlproc.8 \ corosync.xml.5 corosync_vqsim_man = corosync-vqsim.8 INDEX_HTML = index.html autogen_man = cpg_context_get.3 \ cpg_context_set.3 \ cpg_dispatch.3 \ cpg_fd_get.3 \ cpg_finalize.3 \ cpg_initialize.3 \ cpg_join.3 \ cpg_leave.3 \ cpg_local_get.3 \ cpg_mcast_joined.3 \ cpg_model_initialize.3 \ cpg_zcb_mcast_joined.3 \ cpg_zcb_alloc.3 \ cpg_zcb_free.3 \ cpg_membership_get.3 \ cpg_iteration_finalize.3 \ cpg_iteration_initialize.3 \ cpg_iteration_next.3 \ quorum_initialize.3 \ quorum_finalize.3 \ quorum_fd_get.3 \ quorum_dispatch.3 \ quorum_context_get.3 \ quorum_context_set.3 \ quorum_getquorate.3 \ quorum_trackstart.3 \ quorum_trackstop.3 \ votequorum_dispatch.3 \ votequorum_fd_get.3 \ votequorum_context_get.3 \ votequorum_context_set.3 \ votequorum_finalize.3 \ votequorum_getinfo.3 \ votequorum_initialize.3 \ votequorum_setexpected.3 \ votequorum_setvotes.3 \ votequorum_trackstart.3 \ votequorum_trackstop.3 \ votequorum_qdevice_register.3 \ votequorum_qdevice_unregister.3 \ votequorum_qdevice_update.3 \ votequorum_qdevice_master_wins.3 \ votequorum_qdevice_poll.3 \ sam_data_getsize.3 \ sam_data_restore.3 \ sam_data_store.3 \ sam_finalize.3 \ sam_hc_callback_register.3 \ sam_hc_send.3 \ sam_initialize.3 \ sam_mark_failed.3 \ sam_register.3 \ sam_start.3 \ sam_stop.3 \ sam_warn_signal_set.3 \ cmap_context_get.3 \ cmap_dec.3 \ cmap_iter_init.3 \ cmap_get.3 \ cmap_inc.3 \ cmap_set.3 \ cmap_iter_next.3 \ cmap_delete.3 \ cmap_iter_finalize.3 \ cmap_finalize.3 \ cmap_dispatch.3 \ cmap_initialize.3 \ cmap_initialize_map.3 \ cmap_track_add.3 \ cmap_context_set.3 \ cmap_fd_get.3 \ cmap_track_delete.3 autogen_common = ipc_common.sh.errors EXTRA_DIST = $(INDEX_HTML) \ $(xml_man) \ $(corosync_vqsim_man) \ $(autogen_man:%=%.in) \ $(autogen_common) man_MANS = $(autogen_man) dist_man_MANS = corosync.conf.5 \ votequorum.5 \ corosync.8 \ corosync-cmapctl.8 \ corosync-blackbox.8 \ corosync-keygen.8 \ corosync-cfgtool.8 \ corosync-cpgtool.8 \ corosync-notifyd.8 \ corosync-quorumtool.8 \ corosync_overview.7 \ cpg_overview.3 \ quorum_overview.3 \ votequorum_overview.3 \ sam_overview.3 \ cmap_overview.3 \ - cmap_keys.8 + cmap_keys.7 if BUILD_VQSIM dist_man_MANS += $(corosync_vqsim_man) endif if INSTALL_XMLCONF dist_man_MANS += $(xml_man) endif HTML_DOCS = $(dist_man_MANS:%=%.html) $(man_MANS:%=%.html) # developer man page generation %.3: %.3.in $(autogen_common) @echo Generating $@ man page && \ rm -f $@-t-t $@-t $@ && \ DATE_FMT="%Y-%m-%d" && \ SOURCE_DATE_EPOCH="$${SOURCE_DATE_EPOCH:-$$(date +%s)}" && \ date="$$(date -u -d "@$$SOURCE_DATE_EPOCH" "+$$DATE_FMT" 2>/dev/null || date -u -r "$$SOURCE_DATE_EPOCH" "+$$DATE_FMT" 2>/dev/null || date -u "+$$DATE_FMT")" && \ $(AWK) "{print}(\$$1 ~ /@COMMONIPCERRORS@/){exit 0}" ${top_srcdir}/man/$@.in > $@-t-t && \ cat ${top_srcdir}/man/$(autogen_common) >> $@-t-t && \ $(AWK) -v p=0 "(\$$1 ~ /@COMMONIPCERRORS@/){p = 1} {if(p==1)print}" ${top_srcdir}/man/$@.in >> $@-t-t && \ cat $@-t-t | \ $(SED) -e 's#@BUILDDATE@#'$$date'#g' \ -e 's#@COMMONIPCERRORS@##g' \ > $@-t && \ rm -f $@-t-t && \ mv $@-t $@ clean-local: rm -rf $(HTML_DOCS) $(autogen_man) if BUILD_HTML_DOCS %.html: % $(GROFF) -mandoc -Thtml $^ > $@ install-data-local: $(INSTALL) -d $(DESTDIR)/${docdir}/html $(INSTALL) -m 644 ${srcdir}/$(INDEX_HTML) $(HTML_DOCS) $(DESTDIR)/${docdir}/html/ uninstall-local: cd $(DESTDIR)/${docdir}/html && rm -f $(INDEX_HTML) $(HTML_DOCS) rmdir $(DESTDIR)/${docdir}/html 2> /dev/null || : all-local: $(HTML_DOCS) endif diff --git a/man/cmap_keys.8 b/man/cmap_keys.7 similarity index 99% rename from man/cmap_keys.8 rename to man/cmap_keys.7 index e2ea1fbc..6bc04fe1 100644 --- a/man/cmap_keys.8 +++ b/man/cmap_keys.7 @@ -1,397 +1,397 @@ .\"/* .\" * Copyright (c) 2012-2018 Red Hat, Inc. .\" * .\" * All rights reserved. .\" * .\" * Author: Jan Friesse (jfriesse@redhat.com) .\" * .\" * This software licensed under BSD license, the text of which follows: .\" * .\" * Redistribution and use in source and binary forms, with or without .\" * modification, are permitted provided that the following conditions are met: .\" * .\" * - Redistributions of source code must retain the above copyright notice, .\" * this list of conditions and the following disclaimer. .\" * - Redistributions in binary form must reproduce the above copyright notice, .\" * this list of conditions and the following disclaimer in the documentation .\" * and/or other materials provided with the distribution. .\" * - Neither the name of the Red Hat, Inc. nor the names of its .\" * contributors may be used to endorse or promote products derived from this .\" * software without specific prior written permission. .\" * .\" * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" .\" * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE .\" * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR .\" * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF .\" * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS .\" * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN .\" * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) .\" * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF .\" * THE POSSIBILITY OF SUCH DAMAGE. .\" */ -.TH "CMAP_KEYS" 8 "2018-10-08" "corosync Man Page" "Corosync Cluster Engine Programmer's Manual" +.TH "CMAP_KEYS" 7 "2018-10-08" "corosync Man Page" "Corosync Cluster Engine Programmer's Manual" .SH NAME .P cmap_keys \- Overview of keys stored in the Configuration Map .SH OVERVIEW .P There are 3 main types of keys stored in CMAP: .PP * Mapping of values stored in the config file. .PP * Runtime statistics. .PP * Other user created values. In this man page, wild-cards have the usual meaning. .SH ICMAP KEYS These keys are in the icmap (default) map .TP internal_configuration.* Internal configuration data. All keys in this prefix are read only. It's only useful for getting a list of loaded services. .TP logging.* Values read from the configuration file. It's possible to change them at runtime. If subsystem specific configuration is needed, the key must be in the form logging.logger_subsys.SERVICE.key, where SERVICE is upper case name of the service and key is same as in the configuration file. All values are of string type. .TP nodelist.* Values are read from the configuration file only (dynamic updates are not allowed). Each node element in the configuration file gets assigned its position starting from zero. So the first node from the config file has nodelist.node.0. prefix. To be a valid entry, each node must have .B ring0_addr key. To change the .B nodeid key, use a u32 data type. Local node position is stored in .B local_node_pos key (RO), so it's easy to find out nodeid/ring addresses of the local node directly from cmap. .TP runtime.blackbox.* Trigger keys for storing fplay data. It's recommended that you use the corosync-blackbox command to change keys in this prefix. .TP runtime.force_gather Set to 'yes' to force the processor to move into the GATHER state. This operation is dangerous and is not recommended. .TP runtime.config.* Contains the values actually in use by the totem membership protocol. Values here are either taken from the Corosync configuration file, defaults or computed from entries in the config file. For information on individual keys please refer to the man page .BR corosync.conf (5). .TP runtime.services.* Prefix with statistics for service engines. Each service has its own .B service_id key in the prefix with the name runtime.services.SERVICE., where SERVICE is the lower case name of the service. Inside the service prefix is the number of messages received and sent by the corosync engine in the format runtime.services.SERVICE.EXEC_CALL.rx and runtime.services.SERVICE.EXEC_CALL.tx, where EXEC_CALL is the internal id of the service call (so for example 3 in cpg service is receive of multicast message from other nodes). .TP runtime.totem.members.* Prefix containing members of the totem single ring protocol. Each member keys has format runtime.totem.members.NODEID.KEY, where key is one of: .B config_version Config version of the member node. .TP resources.process.PID.* Prefix created by applications using SAM with CMAP integration. It contains the following keys: .B recovery Recovery policy of the process. Can be one of quit or restart. .B poll_period Value passed in sam_initialize as a time_interval. .B last_updated Last time SAM received a heartbeat from the client. .B state State of the client. Can be one of failed, stopped, running and waiting for quorum. .TP uidgid.* Information about users/groups which are allowed to make IPC connections to corosync. Entries loaded from configuration file are stored with uidgid.config.* prefix and are pruned on configuration file reload. Dynamic entries has uidgid.* prefix and a configuration file reload doesn't affect them. .TP quorum.cancel_wait_for_all Tells votequorum to cancel waiting for all nodes at cluster startup. Can be used to unblock quorum if notes are known to be down. For pcs use only. .TP config.reload_in_progress This value will be set to 1 (or created) when a corosync.conf reload is started, and set to 0 when the reload is completed. This allows interested subsystems to do atomic reconfiguration rather than changing each key. Note that individual add/change/delete notifications will still be sent during a reload. .TP config.totemconfig_reload_in_progress This key is similar to .B config.totemconfig_reload_in_progress but changed after the totem config trigger is processed. It is useful (mainly) for situations when .B nodelist.local_node_pos must be correctly reinstated before anything else. .SH STATS KEYS These keys are in the stats map. All keys in this map are read-only. Modification tracking of individual keys is supported in the stats map, but not prefixes. Add/Delete operations are supported on prefixes though so you can track for new ipc connections or knet interfaces. .TP stats.srp.* Prefix containing statistics about totem. Typical key prefixes: .B commit_entered Number of times the processor entered COMMIT state. .B commit_token_lost Number of times the processor lost token in COMMIT state. .B consensus_timeouts How many times the processor timed out forming a consensus about membership. .B continuous_gather How many times the processor was not able to reach consensus. .B firewall_enabled_or_nic_failure Set to 1 when processor was not able to reach consensus for long time. The usual reason is a badly configured firewall or connection failure. .B gather_entered Number of times the processor entered GATHER state. .B gather_token_lost Number of times the processor lost token in GATHER state. .B mcast_retx Number of retransmitted messages. .B mcast_rx Number of received multicast messages. .B mcast_tx Number of transmitted multicast messages. .B memb_commit_token_rx Number of received commit tokens. .B memb_commit_token_tx Number of transmitted commit tokens. .B memb_join_rx Number of received join messages. .B memb_join_tx Number of transmitted join messages. .B memb_merge_detect_rx Number of received member merge messages. .B memb_merge_detect_tx Number of transmitted member merge messages. .B orf_token_rx Number of received orf tokens. .B orf_token_tx Number of transmitted orf tokens. .B recovery_entered Number of times the processor entered recovery. .B recovery_token_lost Number of times the token was lost in recovery state. .B rx_msg_dropped Number of received messages which were dropped because they were not expected (as example multicast message in commit state). .B token_hold_cancel_rx Number of received token hold cancel messages. .B token_hold_cancel_tx Number of transmitted token hold cancel messages. .B mtt_rx_token Mean transit time of token in milliseconds. In other words, time between two consecutive token receives. .B avg_token_workload Average time in milliseconds of holding time of token on the current processor. .B avg_backlog_calc Average number of not yet sent messages on the current processor. .TP stats.knet.nodeX.linkY.* Statistics about the network traffic to and from each node and link when using tke kronosnet transport .B connected Whether the link is connected or not .B up_count Number of times this link has changed state to UP .B down_count Number of times this link has changed state to DOWN .B latency_ave / latency_max / latency_max Calculated latencies of this link. Note that if there has been no traffic on the link then latency_min will show a very large number. .B latency_samples The number of samples used to calculate the latency figures, so you have some idea of their precision. .B rx_data_packets / tx_data_packets The number of packets sent/received on this link .B rx_data_bytes / tx_data_bytes The number of bytes sent/received on this link .B rx_pmtu_packets / tx_pmtu_packets The number of packets sent/received by the PMTUd subsystem .B rx_pmtu_bytes / tx_pmtu_bytes The number of bytes sent/received by the PMTUd subsystem .B rx_ping_packets / tx_ping_packets The number of packets sent/received as pings .B rx_ping_bytes / tx_ping_bytes The number of bytes sent/received as pings .B rx_pong_packets / tx_pong_packets The number of packets sent/received as pongs .B rx_pong_bytes / tx_pong_bytes The number of bytes sent/received as pongs .B rx_total_packets / tx_total_packets The total number of packets sent/received. The aggregate of all of the above packet stats .B rx_total_bytes / tx_total_bytes The total number of bytes sent/received. The aggregate of all of the above bytes stats .B tx_data_retries / tx_pmtu_retries / tx_ping_retries / tx_pong_retries / tx_total_retries Number of times a transmit operation had to be retried due to the socket returning EAGAIN .TP stats.ipcs.* There is information about total number of active connections from client programs at the time the request was made. .B active number of closed connections during whole runtime of corosync .B closed Total number of connections that have been made since corosync was started .TP stats.ipcs.ID.* Each IPC connection has a unique ID. This is in the form [[serviceX:][PID:]internal_id. Typical keys in this prefix are: .B proc_name process name of connected process (unavailable on some platforms) .B dispatched number of dispatched messages. .B invalid_request number of requests made by IPC which are invalid (calling non-existing call, ...). .B name contains short name of the IPC connection (unavailable on some platforms). .B overload is number of requests which were not processed because of overload. .B queue_size contains the number of messages in the queue waiting for send. .B recv_retries is the total number of interrupted receives. .B requests contains the number of requests made by IPC. .B responses is the number of responses sent to the IPC client. .B send_retries contains the total number of interrupted sends. .B service_id contains the ID of service which the IPC is connected to. .TP stats.clear.* These are write-only keys used to clear the stats for various subsystems .B totem Clears the pg & srp totem stats. .B knet Clears the knet stats .B ipc Clears the ipc stats .B all Clears all of the above stats .SH DYNAMIC CHANGE USER/GROUP PERMISSION TO USE COROSYNC IPC Is the same as in the configuration file. eg: to add UID 500 use .br # corosync-cmapctl -s uidgid.uid.500 u8 1 GID is similar, so to add a GID use .br # corosync-cmapctl -s uidgid.gid.500 u8 1 For removal of permissions, simply delete the key .br # corosync-cmapctl -d uidgid.gid.500 .SH "SEE ALSO" .BR corosync_overview (7), .BR corosync.conf (5), .BR corosync-cmapctl (8) diff --git a/man/cmap_overview.3 b/man/cmap_overview.3 index cf4cabb9..0aa3c144 100644 --- a/man/cmap_overview.3 +++ b/man/cmap_overview.3 @@ -1,78 +1,78 @@ .\"/* .\" * Copyright (c) 2012 Red Hat, Inc. .\" * .\" * All rights reserved. .\" * .\" * Author: Jan Friesse (jfriesse@redhat.com) .\" * .\" * This software licensed under BSD license, the text of which follows: .\" * .\" * Redistribution and use in source and binary forms, with or without .\" * modification, are permitted provided that the following conditions are met: .\" * .\" * - Redistributions of source code must retain the above copyright notice, .\" * this list of conditions and the following disclaimer. .\" * - Redistributions in binary form must reproduce the above copyright notice, .\" * this list of conditions and the following disclaimer in the documentation .\" * and/or other materials provided with the distribution. .\" * - Neither the name of the Red Hat, Inc. nor the names of its .\" * contributors may be used to endorse or promote products derived from this .\" * software without specific prior written permission. .\" * .\" * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" .\" * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE .\" * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR .\" * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF .\" * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS .\" * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN .\" * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) .\" * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF .\" * THE POSSIBILITY OF SUCH DAMAGE. .\" */ .TH "CMAP_OVERVIEW" 3 "03/02/2012" "corosync Man Page" "Corosync Cluster Engine Programmer's Manual" .SH NAME .P cmap_overview \- Overview of the Configuration Map .SH OVERVIEW .P The CMAP library is used to interact with the configuration & statistics databases used by corosync. .PP The library provides a mechanism to: .PP * Create of new keys .PP * Change existing keys .PP * Remove keys .PP * Iterate keys with given prefix .PP * Track changes on keys -Description of most keys created by corosync itself can be found in cmap_keys (8). +Description of most keys created by corosync itself can be found in cmap_keys (7). .SH BUGS .SH "SEE ALSO" .BR cmap_initialize (3), .BR cmap_initialize_map (3), .BR cmap_finalize (3), .BR cmap_get (3), .BR cmap_set (3), .BR cmap_delete (3), .BR cmap_inc (3), .BR cmap_dec (3), .BR cmap_fd_get (3), .BR cmap_dispatch (3), .BR cmap_context_set (3), .BR cmap_context_get (3), .BR cmap_iter_init (3), .BR cmap_iter_next (3), .BR cmap_iter_finalize (3), .BR cmap_track_add (3), .BR cmap_track_delete (3), -.BR cmap_keys (8) +.BR cmap_keys (7) diff --git a/man/corosync-cmapctl.8 b/man/corosync-cmapctl.8 index 637e597f..8826503e 100644 --- a/man/corosync-cmapctl.8 +++ b/man/corosync-cmapctl.8 @@ -1,99 +1,99 @@ .\"/* .\" * Copyright (C) 2010 Red Hat, Inc. .\" * .\" * All rights reserved. .\" * .\" * Author: Angus Salkeld .\" * .\" * This software licensed under BSD license, the text of which follows: .\" * .\" * Redistribution and use in source and binary forms, with or without .\" * modification, are permitted provided that the following conditions are met: .\" * .\" * - Redistributions of source code must retain the above copyright notice, .\" * this list of conditions and the following disclaimer. .\" * - Redistributions in binary form must reproduce the above copyright notice, .\" * this list of conditions and the following disclaimer in the documentation .\" * and/or other materials provided with the distribution. .\" * - Neither the name of the MontaVista Software, Inc. nor the names of its .\" * contributors may be used to endorse or promote products derived from this .\" * software without specific prior written permission. .\" * .\" * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" .\" * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE .\" * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR .\" * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF .\" * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS .\" * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN .\" * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) .\" * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF .\" * THE POSSIBILITY OF SUCH DAMAGE. .\" */ .TH COROSYNC-CMAP 8 2012-01-23 .SH NAME corosync-cmapctl: \- A tool for accessing the object database. .SH DESCRIPTION usage: corosync\-cmapctl [\-b] [\-DdghsTt] [\-m map] [\-p filename] [params...] .HP \fB\-b\fR show binary values .HP \fB\-m\fR select map to use .IP The default map is 'icmap' which contains configuration information and some runtime variables used by corosync. A 'stats' map is also available which displays network statistics - in great detail when knet is used as the transport. Tracking of individual keys (but not prefixes) works on the stats map but notifications are sent on a timer, and not every time a value changes. .SS "Set key:" .IP corosync\-cmapctl \fB\-s\fR key_name type value .IP where type is one of ([i|u][8|16|32|64] | flt | dbl | str | bin) for bin, value is file name (or \- for stdin) .SS "Load settings from a file:" .IP corosync\-cmapctl \fB\-p\fR filename .IP the format of the file is: [^[^]][ ] .IP Keys prefixed with single caret ('^') are deleted (see \fB\-d\fR). .IP Keys (actually prefixes) prefixed with double caret ('^^') are deleted by prefix (see \fB\-D\fR). .IP and are optional (not checked) in above cases. .IP Other keys are set (see \fB\-s\fR) so both and are required. .SS "Delete key:" .IP corosync\-cmapctl \fB\-d\fR key_name... .SS "Delete multiple keys with prefix:" .IP corosync\-cmapctl \fB\-D\fR key_prefix... .SS "Get key:" .IP corosync\-cmapctl [\-b] \fB\-g\fR key_name... .SS "Quiet output:" .IP corosync\-cmapctl [\-b] \fB\-q\fR \fB\-g\fR key_name... .SS "Display all keys:" .IP corosync\-cmapctl [\-b] .SS "Display keys with prefix key_name:" .IP corosync\-cmapctl [\-b] key_name... .SS "Track changes on keys with key_name:" .IP corosync\-cmapctl [\-b] \fB\-t\fR key_name .SS "Track changes on keys with key prefix:" .IP corosync\-cmapctl [\-b] \fB\-T\fR key_prefix .SS "Clear statistics (-mstats is implied)" .IP corosync\-cmapctl \fB\-C\fR [ipc|totem|knet|all] .SH "SEE ALSO" .BR cmap_overview (3), -.BR cmap_keys (8) +.BR cmap_keys (7) diff --git a/man/index.html b/man/index.html index f4819e55..21326dc3 100644 --- a/man/index.html +++ b/man/index.html @@ -1,400 +1,400 @@ Corosync Documentation

Welcome to the corosync project's manual pages.

Daemon, tools and configuration

corosync_overview(7): Overview of the corosync system.
corosync.conf(5): Description of configuration options for corosync.
corosync.xml(5): Description of configuration options for corosync xml config format.
votequorum(5): Description of configuration options for votequorum module in corosync.conf
corosync(8): Description of corosync daemon.
corosync-blackbox(8): Description of corosync-blackbox tool.
corosync-cfgtool(8): Description of corosync-cfgtool tool.
corosync-cpgtool(8): Description of corosync-cpgtool tool.
corosync-keygen(8): Description of corosync-keygen tool.
corosync-notifyd(8): Description of corosync-notifyd tool.
corosync-cmapctl(8): Description of corosync-cmapctl tool.
- cmap_keys(8): + cmap_keys(7): Overview of keys stored in the Configuration Map.
corosync-quorumtool(8): Description of corosync-quorumtool tool.
corosync-xmlproc(8): Description of corosync-xmlproc tool.

Developers API references

CPG service

cpg_overview(3): Overview of the cpg extended virtual synchrony group communication toolkit.
cpg_initialize(3): Description of the cpg_initialize interface.
cpg_finalize(3): Description of the cpg_finalize interface.
cpg_dispatch(3): Description of the cpg_dispatch interface.
cpg_fd_get(3): Description of the cpg_fd_get interface.
cpg_join(3): Description of the cpg_join interface.
cpg_leave(3): Description of the cpg_leave interface.
cpg_mcast_joined(3): Description of the cpg_mcast_joined interface.
cpg_membership_get(3): Description of the cpg_membership_get interface.
cpg_local_get(3): Description of the cpg_local_get interface.
cpg_iteration_initialize(3): Description of the cpg_iteration_initialize interface.
cpg_iteration_next(3): Description of the cpg_iteration_next interface.
cpg_iteration_finalize(3): Description of the cpg_iteration_finalize interface.
cpg_context_get(3): Gets the context variable for a CPG instance.
cpg_context_set(3): Sets the context variable for a CPG instance.
cpg_model_initialize(3): Create a new connection to the CPG service
cpg_zcb_alloc(3): Allocates a zero copy buffer.
cpg_zcb_free(3): Frees a zero copy buffer.
cpg_zcb_mcast_joined(3): Multicasts a zero copy buffer to all groups joined to a handle.

SAM service

sam_overview(3): Description of sam_overview interface.
sam_data_getsize(3): Description of sam_data_getsize interface.
sam_data_restore(3): Description of sam_data_restore interface.
sam_data_store(3): Description of sam_data_store interface.
sam_finalize(3): Description of sam_finalize interface.
sam_hc_callback_register(3): Description of sam_hc_callback_register interface.
sam_hc_send(3): Description of sam_hc_send interface.
sam_initialize(3): Description of sam_initialize interface.
sam_mark_failed(3): Description of sam_mark_failed interface.
sam_register(3): Description of sam_register interface.
sam_start(3): Description of sam_start interface.
sam_stop(3): Description of sam_stop interface.
sam_warn_signal_set(3): Description of sam_warn_signal_set interface.

QUORUM service

quorum_overview(3): An overview of the quorum service
quorum_initialize(3): Description of quorum_initialize interface.
quorum_finalize(3): Description of quorum_finalize interface.
quorum_getquorate(3): Description of quorum_getquorate interface.
quorum_trackstart(3): Description of quorum_trackstart interface.
quorum_trackstop(3): Description of quorum_trackstop interface.
quorum_fd_get(3): Description of quorum_fd_get interface.
quorum_dispatch(3): Description of quorum_dispatch interface.
quorum_context_set(3): Description of quorum_context_set interface.
quorum_context_get(3): Description of quorum_context_get interface.

VOTEQUORUM service

votequorum_overview(3): An overview of the vote-based quorum service
votequorum_initialize(3): Description of the votequorum_initialize interface.
votequorum_finalize(3): Description of the votequorum_finalize interface.
votequorum_getinfo(3): Description of the votequorum_getinfo interface.
votequorum_trackstart(3): Description of the votequorum_trackstart interface.
votequorum_trackstop(3): Description of the votequorum_trackstop interface.
votequorum_fd_get(3): Description of the votequorum_fd_get interface.
votequorum_dispatch(3): Description of the votequorum_dispatch interface.
votequorum_context_set(3): Description of the votequorum_context_set interface.
votequorum_context_get(3): Description of the votequorum_context_get interface.
votequorum_setexpected(3): Description of the votequorum interface.
votequorum_setvotes(3): Description of the votequorum interface.
votequorum_qdevice_master_wins(3): Sets or clears quorum device master_wins flag.
votequorum_qdevice_poll(3): Tells votequorum the result of the quorum device poll.
votequorum_qdevice_register(3): Registers a new quorum device.
votequorum_qdevice_unregister(3): Unregisters a new quorum device.
votequorum_qdevice_update(3): Updates quorum device name.

CMAP service

cmap_overview(3): An overview of the configuration map service.
cmap_context_get(3): Description of the cmap_context_get interface.
cmap_context_set(3): Description of the cmap_context_set interface.
cmap_dec(3): Description of the cmap_dec interface.
cmap_delete(3): Description of the cmap_delete interface.
cmap_dispatch(3): Description of the cmap_dispatch interface.
cmap_fd_get(3): Description of the cmap_fd_get interface.
cmap_finalize(3): Description of the cmap_finalize interface.
cmap_get(3): Description of the cmap_get interface.
cmap_inc(3): Description of the cmap_inc interface.
cmap_initialize(3): Description of the cmap_initialize interface.
cmap_iter_finalize(3): Description of the cmap_iter_finalize interface.
cmap_iter_init(3): Description of the cmap_iter_init interface.
cmap_iter_next(3): Description of the cmap_iter_next interface.
cmap_set(3): Description of the cmap_set interface.
cmap_track_add(3): Description of the cmap_track_add interface.
cmap_track_delete(3): Description of the cmap_track_delete interface.