This directory contains the design documentation and eventually the code
for the Cluster Resource Manager framework for heartbeat.

We might eventually have several policy engines and other modular
components (as outlined in the crm.txt), but hopefully only one
framework they all plug into.


###################


Installation:
===============================
run ConfigureMe or bootstrap with the --enable-crm option
make ; make install

Pids, sockets and the CIB configuration will be in: $HA_VARLIBDIR/heartbeat/crm
Executables will be in /usr/lib/heartbeat/ or wherever the heartbeat 
  executable is normally found
Logs will be in: /var/log
A couple of developmental trace files will also turn up in /tmp.  
  In particular live.dot can be used with the dot program to trace the state changes.


Startup:
===============================
- Add a respawn entry for ccm to ha.cf
- Add a respawn entry for lrmd to ha.cf
- Add the appropriate "apiauth" entries to ha.cf
- Remove entries from haresources
- Remove any stonith devices from ha.cf
- Start heartbeat using the -M switch
- start the crmd ($your_bin_dir/crmd)


Testing & Configuration:
===============================
See 1node.sh and 2node.sh in the testing sub-dir for detailed startup and configuration examples.

helper.sh contains argument processing for both of these scripts.


Logging:
===============================
By default the CRMd filters out LOG_DEBUG messages and anything more verbose.
This can be altered by invoking it with multiple -V options to increase this level.
Alternativly, sending SIGUSR1 and SIGUSR2 will increase and decrease the log level.
If the log level is more verbose than LOG_INFO, debug info will also be logged to stdout. 


Admin Tools:
===============================

There are two admin tools: crmadmin and cibadmin.  Run both with -? or no arguments to see up-to-date help information.

The crmadmin tool is primarily for controling the cluster and running some common queries.

The cibadmin tool is for configuring the cluster (maintaining the CIB) and running more detailed and custom queries of the CIB.
