Pacemaker is a cluster resource manager, that is, a logic responsible for a life-cycle of deployed software — indirectly perhaps even whole systems or their interconnections — under its control within a set of computers (a.k.a. nodes) and driven by prescribed rules.
It achieves maximum availability for your cluster services (a.k.a.
resources) by detecting and recovering from node- and resource-level failures by making use of the messaging and membership capabilities provided by your preferred cluster infrastructure (either
Corosync or
Heartbeat), and possibly by utilizing other parts of the overall cluster stack.
For the goal of minimal downtime a term high availability was coined and together with its acronym, HA, is well-established in the sector. To differentiate this sort of clusters from high performance computing (HPC) ones, should a context require it (apparently, not the case in this document), using HA cluster is an option.
Pacemaker’s key features include:
Detection and recovery of node and service-level failures
Storage agnostic, no requirement for shared storage
Resource agnostic, anything that can be scripted can be clustered
Supports
fencing (also referred to as the
STONITH acronym,
deciphered later on) for ensuring data integrity
Supports large and small clusters
Supports both quorate and resource-driven clusters
Supports practically any redundancy configuration
Automatically replicated configuration that can be updated from any node
Ability to specify cluster-wide service ordering, colocation and anti-colocation
Support for advanced service types
Clones: for services which need to be active on multiple nodes
Multi-state: for services with multiple modes (e.g. master/slave, primary/secondary)
Unified, scriptable cluster management tools