LLMpediaThe first transparent, open encyclopedia generated by LLMs

Pacemaker (software)

Generated by GPT-5-mini
Note: This article was automatically generated by a large language model (LLM) from purely parametric knowledge (no retrieval). It may contain inaccuracies or hallucinations. This encyclopedia is part of a research project currently under review.
Article Genealogy
Parent: SUSE Hop 4
Expansion Funnel Raw 67 → Dedup 17 → NER 14 → Enqueued 12
1. Extracted67
2. After dedup17 (None)
3. After NER14 (None)
Rejected: 3 (not NE: 3)
4. Enqueued12 (None)
Pacemaker (software)
Pacemaker (software)
NamePacemaker
DeveloperClusterLabs; contributors: Red Hat, SUSE, Canonical, Ubuntu community
Released2006
Operating systemLinux
GenreHigh-availability cluster resource manager
LicenseGPL

Pacemaker (software) is an open-source, high-availability cluster resource manager designed to coordinate services, resources, and failover across multiple nodes in a clustered environment. It integrates with cluster communication stacks such as Corosync and Heartbeat and is used by distributions and vendors including Red Hat Enterprise Linux, SUSE Linux Enterprise Server, and Debian. Pacemaker provides policy-driven resource placement, fencing coordination with STONITH, and extensive monitoring suitable for enterprise deployments and cloud platforms like OpenStack.

Overview

Pacemaker began as a project within the ClusterLabs community to replace earlier resource managers and has been adopted by vendors such as Red Hat, SUSE, and Canonical. It works atop cluster messaging systems including Corosync and previously Heartbeat to provide resource orchestration for services such as Apache, MySQL, PostgreSQL, NFS, and DRBD. Pacemaker implements widely used HA patterns such as fencing with STONITH devices, quorum management influenced by protocols from IEEE standards, and resource constraints similar to policies found in Linux Virtual Server and Kubernetes scheduling.

Architecture and Components

The architecture separates cluster messaging, membership, and quorum services (provided by Corosync or legacy Heartbeat) from the resource manager itself, which is Pacemaker. Core components include the Resource Agent framework using OCF scripts, the Policy Engine implementing constraints similar to those in DRBD and Pacemaker’s peers, and the Distributed Lock Manager concepts used in systems like GFS2. Pacemaker interacts with fencing subsystems via STONITH agents, integrates with service agents used by systemd, and provides cluster information via tools such as crmsh and GUIs from vendors like SUSE Manager and Red Hat Cluster Suite teams. Internal primitives borrow ideas from DLM research and quorum algorithms described by academics at institutions like Carnegie Mellon University and MIT.

Features and Functionality

Pacemaker supports resources types exemplified by OCF and LSB wrappers, allowing orchestration of applications such as PostgreSQL, MariaDB, MongoDB, and Redis. It offers constraint-based placement (colocation, order, and location constraints) with policy semantics similar to schedulers used by OpenStack Nova and Kubernetes, supports failover and migration patterns akin to those in VMware HA, and performs health checks with configurable monitoring intervals. Fencing integration uses STONITH agents compatible with hardware vendors like Dell EMC, Hewlett Packard Enterprise, and IBM power controllers; cluster quorum handling parallels algorithms from Paxos and Raft literature. Pacemaker’s history and feature roadmap have been influenced by contributions from companies such as Red Hat and research projects at University of New Hampshire.

Configuration and Administration

Administration is performed via command-line tools like crmsh, pcs from Red Hat, and vendor GUIs such as SUSE Manager and Red Hat Satellite. Configuration files use XML-based formats and encapsulate constraints, resource definitions, and location policies similar in purpose to manifests in Puppet or playbooks in Ansible. Pacemaker integrates with init systems including systemd and legacy SysVinit scripts; resource agents follow the OCF Resource Agent conventions maintained by ClusterLabs. Operators commonly combine Pacemaker with orchestration tools such as Puppet, Ansible, and SaltStack for reproducible deployments and with monitoring stacks like Prometheus and Nagios for alerting.

Use Cases and Deployments

Common use cases include active/passive clustering for databases such as MySQL and PostgreSQL, active/active configurations with DRBD block replication, and service redundancy for Apache and NFS exports. Pacemaker is deployed in enterprise environments including cloud providers using OpenStack, telecommunications platforms adhering to ETSI profiles, and critical infrastructure managed by vendors like Red Hat and SUSE. Operators use Pacemaker for on-premises high-availability, hybrid cloud failover strategies involving AWS and Microsoft Azure, and edge computing scenarios influenced by projects at Linux Foundation initiatives.

Development, Licensing, and Community

Development is coordinated by ClusterLabs with significant contributions from Red Hat, SUSE, and community maintainers. The codebase is written primarily in C and licensed under the GPL, with examples and resource agents distributed under compatible licenses maintained by projects such as OpenSUSE Build Service and Debian. The community engages through mailing lists, issue trackers on platforms historically used by GitHub and GitLab, and events including LinuxCon and FOSDEM. Commercial support and integration are available from vendors like Red Hat and SUSE and training is offered by third-party consultancies and organizations such as Linux Foundation training partnerships.

Category:High-availability clusters Category:Free software programmed in C