mirror_corosync/cts
Fabio M. Di Nitto e34d509df7 quorum: change API to return quorum type at initialization time
corosync internal theory of operation is that without a quorum provider
the cluster is always quorate. This is fine for membership free clusters
but it does pose a problem for applications that need membership and
"real" quorum.

this change add quorum_type to quorum_initialize call to return QUORUM_FREE
or QUORUM_SET. Applications can then make their own decisions to error out
or continue operating.

The only other way to know if a quorum provider is enabled/configured is
to poke at confdb/objdb, but adds an unnecessary burden to applications
that really don't need to use an entire library for a boolean value.

Reviewed-by: Steven Dake <sdake@redhat.com>
Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
2012-01-10 15:47:24 +01:00
..
agents quorum: change API to return quorum type at initialization time 2012-01-10 15:47:24 +01:00
.gitignore Add dbus and snmp notifier 2011-02-04 09:47:35 -07:00
corolab.py CTS: add an audit to check for leaking shared memory 2011-08-09 10:37:16 +10:00
corosync.py Remove objdb and confdb 2011-12-15 09:19:18 +01:00
corotests.py Remove objdb and confdb 2011-12-15 09:19:18 +01:00
CTSvars.py.in Add a test harness to corosync that uses CTS from pacemaker. 2010-03-03 00:08:57 +00:00
Makefile.am Add a test harness to corosync that uses CTS from pacemaker. 2010-03-03 00:08:57 +00:00
README CTS: update the CTS README 2010-04-15 23:19:23 +00:00

Quick start guide.
==================

CTS: Cluster Test System
The CTS uses a test driver node(TDN) to drive the execution of the test
software.  The CTS also uses 2 or more test target nodes(TTN) to run the test
cases.  The CTS software requires atleast 3 nodes 1 of which acts as a TDN and
the remaining acting as TTNs.

The dependencies of the TDN include Pacemaker and Augeas.

On the single TDN, it is recommended at this time to install pacemaker from
source so that the CTS from Pacemaker remains compatible with the current
working version of the CTS components within Corosync (currently you will
the devel branch http://hg.clusterlabs.org/pacemaker/devel/).

2] ssh access
--------------------------------------------------------------------------------
CTS requires login-less root access to the CNs.
so if my CN is called "node32"
# ssh node32
should not ask for a password and result in a root shell.

To enable this behavior, create a ssh key with the command ssh-keygen.  When it
prompts for a password, enter an empty field.  It will create a file called
~/.ssh/id_dsa.pub.  Copy that file to the TTNs into /root/.ssh/authorized_keys.
Ensure permissions are 700 on /root/.ssh.

Test ssh into the machine works without a password from the TDN.

3] Install augeas on the TDN
--------------------------------------------------------------------------------
yum install augeas

4] Configuring corosync for CTSs testing
--------------------------------------------------------------------------------

./configure --enable-testagents --enable-augeas --enable-debug

and then install it on the TTN.

5] run CTS
--------------------------------------------------------------------------------
cd <your-corosync-src-dir>/cts
sudo ./corolab.py --nodes "n1 n2 n3"