FAQ

From ClusterLabs

Table of contents

Technical

How Do I Install Pacemaker?

Installation from source and from pre-built packages is described on the Install page.

How Do I Upgrade from Heartbeat?

If you plan to continue using the Heartbeat stack (as opposed to OpenAIS), simply stop Heartbeat on a node and follow the directions on the Install page.

There are no configuration changes to make and you can even do a rolling upgrade of the cluster since the over-the-wire formats are fully compatible (ie. didn't change at all ;-)

Pacemaker 0.6.x packages essentially contain (just) the 2.1.3 Heartbeat CRM with some additional bug-fixes and support for OpenAIS.

What Messaging Layers are Supported?

Is OpenAIS Suitable for Production?

Red Hat certainly believes so... they include and support it in RHEL.

Which Messaging Layer Should I Choose?

Ultimately the decision is yours. Pacemaker will work equally well with either stack.

However:

  • SUSE/Novell, Red Hat and Oracle are all putting their collective weight behind the OpenAIS cluster stack.
  • OpenAIS is an OSI Certified implementation of an industry standard (the Service Availability Forum Application Interface Specification).
  • Using OpenAIS gives your applications access to the following additional cluster services
    • checkpoint service
    • distributed locking service
    • extended virtual synchrony service
    • cluster closed process group service
  • It is likely that Pacemaker, at some point in the future, will make use of some of these additional services not provided by Heartbeat

To be fair, it is also very true that Pacemaker has received less real-world testing on OpenAIS.

Can I Choose which Messaging Layer to use at Run Time?

Yes. The CRM will automatically detect who started it and behave accordingly.

Can I Have a Mixed Heartbeat-OpenAIS Cluster?

No.

Will I be Able to do a Rolling Upgrade from Heartbeat?

Only if you still use the Heartbeat communications/membership layer.

How Do I Enable the GUI?

First you need to install the pacemaker-pygui package. Then you need to add the following lines to ha.cf

 apiauth	mgmtd	uid=root
 respawn	root	/usr/lib/heartbeat/mgmtd -v

These used to be implied when crm yes was present but only when heartbeat is built with the built-in mgmtd (which it no longer is).

NOTE: People on 64-bit platforms will probably need to replace lib with lib64

What Do the Strange Validation Errors Mean?

Check out the Validation FAQ

How Do I Test My Cluster?

Pacemaker comes with a Cluster Test Suite (CTS for short) which is an integral part of our release testing. Traditionally this had been hard to set up and use however a new tool has been written to simplify the process.

It can be found at:

 http://hg.clusterlabs.org/pacemaker/dev/file/tip/cts/cluster_test

Please give it a try and send feedback via the mailing list.

What Do the Prefixes in Commit Messages Mean?

  • High, Med, Low: These all indicate how much the end-user/admin should care about the change.
  • Dev: These are changes that fix bugs that don't exist in any released version of the project

Examples:

  • High - Preventing a segfault, implementing an important new feature or major changes to the behavior of a feature
  • Med - Hard to trigger bugs, bugs with workarounds, minor functional changes
  • Low - Non-functional changes, formatting or logging changes, changes to test code

Administrivia

Why is the Project Called Pacemaker?

First of all, the reason its not called the CRM is because of the abundance of terms (http://en.wikipedia.org/wiki/CRM) that are commonly abbreviated to those three letters.

The Pacemaker name came from Kham (http://khamsouk.souvanlasy.com/), a good friend of mine, and was originally used by a Java GUI that I was prototyping in early 2007. Alas other commitments have prevented the GUI from progressing much and, when it came time to choose a name for this project, Lars suggested it was an even better fit for an independent CRM.


The idea stems from the analogy between the role of this software and that of the little device that keeps the human heart pumping.

Pacemaker monitors the cluster and intervenes when necessary to ensure the smooth operation of the services it provides.


There were a number of other names (and acronyms) tossed around, but suffice to say "Pacemaker" was the best of the lot :-)

Why is the First Release 0.6.0?

Although the Pacemaker code has been around for over 4 years now, and used in many production clusters, we will wait until both cluster stacks achieve feature parity before we claim 1.0 status.

There are also a number of things that we'd like to revisit before 1.0.

  • Fix the configuration DTD
    • Stricter enforcement to prevent bad configurations
    • More intuitive attribute naming
    • Make common use-cases intuiiive
    • Remove 'development mistakes'
      • Increase consistency
      • Reduce duplication
  • Use libxml2 for XML handling
    • Adds support for XPath in Pacemaker and any 3rd party apps
    • Can be done whilst maintaining over-the-wire compatibility
  • Simplify migration due to resource failure (failcount)
  • Rewrite pingd to be stack independant
  • Rewrite attrd to perform atomic updates
  • ... a bunch of stuff that I can't recall right now

If there is something you think needs to be fixed in Pacemaker, add your request to bugzilla (http://bugs.clusterlabs.org) or vote for an existing entry.

When Do You Expect to Reach 1.0?

Current target is November 2008

Where Can I Get the Source Code?

 hg clone http://hg.clusterlabs.org/pacemaker/dev pacemaker

Where Can I Get Pre-built Packages?

Official packages for most major .rpm and .deb based distributions are available from:

 http://download.opensuse.org/repositories/server:/ha-clustering/

For more information, we have a description of the available packages.

What Versions of Pacemaker Are Supported?

Please refer to the Releases page for a list of versions supported directly by the project.

When seeking assistance, please try to ensure you have one of these versions.

Organizational

Are you Forking Heartbeat?

No. Only the CRM code (code that I am the sole author and maintainer of) is part of the new project (and no longer part of Heartbeat).

Why was the Pacemaker Project Created?

The decision was made to spin-off the CRM into its own project after the 2.1.3 Heartbeat release in order to

  • support both the OpenAIS and Heartbeat cluster stacks equally
  • decouple the release cycles of two projects at very different stages of their life-cycles
  • foster the clearer package boundaries, thus leading to
  • better and more stable interfaces

What About the GUI, TSA agent, CIM and SNMP?

All of these components require Pacemaker libraries to build and therefor cannot be included Heartbeat any longer.

These high-level management components have been bundled together as part of the (badly named) pyGUI project which is ready and waiting for someone out there to pick up and maintain.

Until someone volunteers, I'll apply patches and update the packages but I wont be doing any active development myself.

Links:

Why Can't I Create a Wiki Account?

At the moment I've not sorted out the site security so I've disabled the creation of new users. If you'd like an account, just email us at pacemaker@clusterlabs.org and we can create one manually for you.