[Pacemaker] ANNOUNCE: First release of the Pacemaker cluster resource manager, formerly part of Heartbeat

Andrew Beekhof abeekhof at suse.de
Thu Jan 17 02:42:51 EST 2008

I am proud to announce the first independent release of Pacemaker.
Most of you will know Pacemaker as the Heartbeat CRM however, in  
addition to being a separate project, it now also supports the OpenAIS  
cluster stack!

Packages for Pacemaker and it's immediate dependancies can be  
downloaded from the usual location:

and the source can be obtained from:

For a breakdown of the available packages and what parts are optional,  
please refer to

This release also marks the start of our first (feature frozen) stable  
series for which we will provide bug-fix-only updates until at least  

More information regarding Pacemaker (including the name, choice of  
version number and how to install) is available at:


Begin lazy paste from the changelog...

   * Update source tarball to revision: c94b92d550cf
   * Statistics:
       Changesets:      347
       Diff^:                    2272 files changed, 132508  
insertions(+), 305991 deletions(-)

       ^ The deceptively large numbers here are due to the amount of  
non-CRM code that was removed and the new internal project layout

   * Test hardware:
     + 6-node vmware cluster (sles10-sp1/256Mb/vmware stonith) on a  
single host (opensuse10.3/2Gb/2.66Ghz Quad Core2)
     + 7-node EMC Centera cluster (sles10/512Mb/2Ghz Xeon/ssh stonith)

   * Notes: Heartbeat Stack
     + All testing was performed with STONITH enabled
     + The CRM was enabled using the "crm respawn" directive
     + Testing
       2-nodes ::= 1000 CTS iterations (passed)
       4-nodes ::= 1000 CTS iterations (passed)
       6-nodes ::= 2000 CTS iterations (passed)
     + Total estimated cluster transitions: 18000

   * Notes: OpenAIS Stack
     + This release contains a preview of support for the OpenAIS  
cluster stack
     + The current release of the OpenAIS project is missing two  
       patches that we require.  OpenAIS packages containing these  
patches are
       available for most major distributions at:
     + The OpenAIS stack is not currently recommended for use in  
clusters that
       have shared data as STONITH support is not yet implimented
     + pingd is not yet available for use with the OpenAIS stack
     + 3 significant OpenAIS issues were found during testing of 4 and  
6 node
       clusters.  We are activly working together with the OpenAIS  
project to
       get these resolved.
     + Testing
       2-nodes ::= 1000 CTS iterations (passed)
       4-nodes ::= 1000 CTS iterations (sporadic problems - see  
pending bugs)
       6-nodes ::= 1000 CTS iterations (significant problems - see  
pending bugs)
     + Total estimated cluster transitions: 12000

   * Pending bugs encountered during testing:
     + OpenAIS   #1736 - Openais membership took 20s to stabilize
     + Heartbeat #1750 - ipc_bufpool_update: magic number in head does  
not match
     + OpenAIS   #1793 - Assertion failure in memb_state_gather_enter()
     + OpenAIS   #1796 - Cluster message corruption

   * Changes since Heartbeat-2.1.2-24
   + High: Add OpenAIS support
   + High: Admin: crm_uuid - Look in the right place for Heartbeat  
UUID files
   + High: admin: Exit and indicate a problem if the crmd exits while  
crmadmin is performing a query
   + High: cib: Fix CIB_OP_UPDATE calls that modify the whole CIB
   + High: cib: Fix compilation when supporting the heartbeat stack
   + High: cib: Fix memory leaks caused by the switch to  
   + High: cib: HA_VALGRIND_ENABLED needs to be set _and_ set to 1|yes| 
   + High: cib: Use get_message_xml() in preference to cl_get_struct()
   + High: cib: Use the return value from call to write() in  
   + High: Core: ccm nodes can legitimately have a node id of 0
   + High: Core: Fix peer-process tracking for the Heartbeat stack
   + High: Core: Heartbeat doesn't send status notifications for nodes  
that were already part of the cluster.  Fake them instead
   + High: CRM: Add children to HA_Messages such that the field name  
   + High: crm: Adopt a more flexible appraoch to enabling Valgrind
   + High: crm: Fix compilation when bzip2 is not installed
   + High: CRM: Future-proof get_message_xml()
   + High: crmd: Filter election responses based on time not FSA state
   + High: crmd: Handle all possible peer states in  
   + High: crmd: Make sure the current date/time is set - prevents use- 
of-NULL when evaluating rules
   + High: crmd: Relax an assertion regrading  ccm membership instances
   + High: crmd: Use (node->processes&crm_proc_ais) to accurately  
update the CIB after replace operations
   + High: crmd: Heartbeat: Accurately record peer client status
   + High: PE: Bug 1777 - Allow colocation with a resource in the  
Stopped state
   + High: PE: Bug 1822 - Prevent use-of-NULL in PromoteRsc()
   + High: PE: Implement three recovery policies based on op_status  
and op_rc
   + High: PE: Parse fail-count correctly (it may be set to ININFITY)
   + High: PE: Prevent graph-loop when stonith agents need to be moved  
around before a STONITH op
   + High: PE: Prevent graph-loops when two operations have the same  
   + High: te: Cancel active timers when destroying graphs
   + High: TE: Ensure failcount is set correctly for failed stops/starts
   + High: TE: Update failcount for oeprations that time out
   + Medium: admin: Prevent hang in crm_mon -1 when there is no cib  
connection - Patch from Junko IKEDA
   + Medium: cib: Require --force|-f when performing potentially  
dangerous commands with cibadmin
   + Medium: cib: Tweak the shutdown code
   + Medium: Common: Only count peer processes of active nodes
   + Medium: Core: Create generic cluster sign-in method
   + Medium: core: Fix compilation when Heartbeat support is disabled
   + Medium: Core: General cleanup for supporting two stacks
   + Medium: Core: iso6601 - Support parsing of time-only strings
   + Medium: core: Isolate more code that's only needed when  
   + Medium: crm: Improved logging of errors in the XML parser
   + Medium: crmd: Fix potential use-of-NULL in string comparison
   + Medium: crmd: Reimpliment syncronizing of CIB queries and updates  
when invoking the PE
   + Medium: crm_mon: Indicate when a node is both in standby mode and  
   + Medium: PE: Bug 1822 - Don't try an promote groups if not all of  
it is active
   + Medium: PE: on_fail=nothing is an alias for 'ignore' not 'restart'
   + Medium: PE: Prevent a potential use-of-NULL in  
   + snmp subagent: fix a problem on displaying an unmanaged group
   + snmp subagent: use the syslog setting
   + snmp: v2 support (thanks to Keisuke MORI)
   + snmp_subagent - made it not complain about some things if  
shutting down

More information about the Pacemaker mailing list