2. Host-Local Configuration

Note

Directory and file paths below may differ on your system depending on your Pacemaker build settings. Check your Pacemaker configuration file to find the correct paths.

Pacemaker supports several host-local configuration options. These options can be configured on each node in the main Pacemaker configuration file (/etc/sysconfig/pacemaker) in the format <NAME>="<VALUE>". They work by setting environment variables when Pacemaker daemons start up.

Local Options
Name Type Default Description

PCMK_logfacility

enumeration daemon

Enable logging via the system log or journal, using the specified log facility. Messages sent here are of value to all Pacemaker administrators. This can be disabled using none, but that is not recommended. Allowed values:

  • none
  • daemon
  • user
  • local0
  • local1
  • local2
  • local3
  • local4
  • local5
  • local6
  • local7

PCMK_logpriority

enumeration notice

Unless system logging is disabled using PCMK_logfacility=none, messages of the specified log severity and higher will be sent to the system log. The default is appropriate for most installations. Allowed values:

  • emerg
  • alert
  • crit
  • error
  • warning
  • notice
  • info
  • debug

PCMK_logfile

text /var/log/pacemaker/pacemaker.log Unless set to none, more detailed log messages will be sent to the specified file (in addition to the system log, if enabled). These messages may have extended information, and will include messages of info severity. This log is of more use to developers and advanced system administrators, and when reporting problems.

PCMK_logfile_mode

text 0660 Pacemaker will set the permissions on the detail log to this value (see chmod(1)).

PCMK_debug

enumeration no

Whether to send debug severity messages to the detail log. This may be set for all subsystems (yes or no) or for specific (comma- separated) subsystems. Allowed subsystems are:

  • pacemakerd
  • pacemaker-attrd
  • pacemaker-based
  • pacemaker-controld
  • pacemaker-execd
  • pacemaker-fenced
  • pacemaker-schedulerd

Example: PCMK_debug="pacemakerd,pacemaker-execd"

PCMK_stderr

boolean no

Advanced Use Only: Whether to send daemon log messages to stderr. This would be useful only during troubleshooting, when starting Pacemaker manually on the command line.

Setting this option in the configuration file is pointless, since the file is not read when starting Pacemaker manually. However, it can be set directly as an environment variable on the command line.

PCMK_trace_functions

text  

Advanced Use Only: Send debug and trace severity messages from these (comma-separated) source code functions to the detail log.

Example: PCMK_trace_functions="func1,func2"

PCMK_trace_files

text  

Advanced Use Only: Send debug and trace severity messages from all functions in these (comma-separated) source file names to the detail log.

Example: PCMK_trace_files="file1.c,file2.c"

PCMK_trace_formats

text  

Advanced Use Only: Send trace severity messages that are generated by these (comma-separated) format strings in the source code to the detail log.

Example: PCMK_trace_formats="Error: %s (%d)"

PCMK_trace_tags

text  

Advanced Use Only: Send debug and trace severity messages related to these (comma-separated) resource IDs to the detail log.

Example: PCMK_trace_tags="client-ip,dbfs"

PCMK_blackbox

enumeration no

Advanced Use Only: Enable blackbox logging globally (yes or no) or by subsystem. A blackbox contains a rolling buffer of all logs (of all severities). Blackboxes are stored under /var/lib/pacemaker/blackbox by default, by default, and their contents can be viewed using the qb-blackbox(8) command.

The blackbox recorder can be enabled at start using this variable, or at runtime by sending a Pacemaker subsystem daemon process a SIGUSR1 or SIGTRAP signal, and disabled by sending SIGUSR2 (see kill(1)). The blackbox will be written after a crash, assertion failure, or SIGTRAP signal.

See PCMK_debug for allowed subsystems.

Example: PCMK_blackbox="pacemakerd,pacemaker-execd"

PCMK_trace_blackbox

enumeration  

Advanced Use Only: Write a blackbox whenever the message at the specified function and line is logged. Multiple entries may be comma- separated.

Example: PCMK_trace_blackbox="remote.c:144,remote.c:149"

PCMK_node_start_state

enumeration default By default, the local host will join the cluster in an online or standby state when Pacemaker first starts depending on whether it was previously put into standby mode. If this variable is set to standby or online, it will force the local host to join in the specified state.

PCMK_node_action_limit

nonnegative integer   Specify the maximum number of jobs that can be scheduled on this node. If set, this overrides the node-action-limit cluster property for this node.

PCMK_shutdown_delay

timeout   Specify a delay before shutting down pacemakerd after shutting down all other Pacemaker daemons.

PCMK_fail_fast

boolean no By default, if a Pacemaker subsystem crashes, the main pacemakerd process will attempt to restart it. If this variable is set to yes, pacemakerd will panic the local host instead.

PCMK_panic_action

enumeration reboot Pacemaker will panic the local host under certain conditions. By default, this means rebooting the host. This variable can change that behavior: if crash, trigger a kernel crash (useful if you want a kernel dump to investigate); if sync-reboot or sync-crash, synchronize filesystems before rebooting the host or triggering a kernel crash. The sync values are more likely to preserve log messages, but with the risk that the host may be left active if the synchronization hangs.

PCMK_authkey_location

text /etc/pacemaker/authkey Use the contents of this file as the authorization key to use with Pacemaker Remote connections. This file must be readable by Pacemaker daemons (that is, it must allow read permissions to either the hacluster user or the haclient group), and its contents must be identical on all nodes.

PCMK_remote_address

text  

By default, if the Pacemaker Remote service is run on the local node, it will listen for connections on all IP addresses. This may be set to one address to listen on instead, as a resolvable hostname or as a numeric IPv4 or IPv6 address. When resolving names or listening on all addresses, IPv6 will be preferred if available. When listening on an IPv6 address, IPv4 clients will be supported via IPv4-mapped IPv6 addresses.

Example: PCMK_remote_address="192.0.2.1"

PCMK_remote_port

port 3121 Use this TCP port number for Pacemaker Remote node connections. This value must be the same on all nodes.

PCMK_remote_pid1

enumeration default

Advanced Use Only: When a bundle resource’s run-command option is left to default, Pacemaker Remote runs as PID 1 in the bundle’s containers. When it does so, it loads environment variables from the container’s /etc/pacemaker/pcmk-init.env and performs the PID 1 responsibility of reaping dead subprocesses.

This option controls whether those actions are performed when Pacemaker Remote is not running as PID 1. It is intended primarily for developer testing but can be useful when run-command is set to a separate, custom PID 1 process that launches Pacemaker Remote.

  • full: Pacemaker Remote loads environment variables from /etc/pacemaker/pcmk-init.env and reaps dead subprocesses.
  • vars: Pacemaker Remote loads environment variables from /etc/pacemaker/pcmk-init.env but does not reap dead subprocesses.
  • default: Pacemaker Remote performs neither action.

If Pacemaker Remote is running as PID 1, this option is ignored, and the behavior is the same as for full.

PCMK_tls_priorities

text NORMAL

Advanced Use Only: These GnuTLS cipher priorities will be used for TLS connections (whether for Pacemaker Remote connections or remote CIB access, when enabled). See:

Pacemaker will append ":+ANON-DH" for remote CIB access and ":+DHE-PSK:+PSK" for Pacemaker Remote connections, as they are required for the respective functionality.

Example: PCMK_tls_priorities="SECURE128:+SECURE192"

PCMK_dh_min_bits

nonnegative integer 0 (no minimum)

Advanced Use Only: Set a lower bound on the bit length of the prime number generated for Diffie-Hellman parameters needed by TLS connections. The default is no minimum.

The server (Pacemaker Remote daemon, or CIB manager configured to accept remote clients) will use this value to provide a floor for the value recommended by the GnuTLS library. The library will only accept a limited number of specific values, which vary by library version, so setting these is recommended only when required for compatibility with specific client versions.

Clients (connecting cluster nodes or remote CIB commands) will require that the server use a prime of at least this size. This is recommended only when the value must be lowered in order for the client’s GnuTLS library to accept a connection to an older server.

PCMK_dh_max_bits

nonnegative integer 0 (no maximum)

Advanced Use Only: Set an upper bound on the bit length of the prime number generated for Diffie-Hellman parameters needed by TLS connections. The default is no maximum.

The server (Pacemaker Remote daemon, or CIB manager configured to accept remote clients) will use this value to provide a ceiling for the value recommended by the GnuTLS library. The library will only accept a limited number of specific values, which vary by library version, so setting these is recommended only when required for compatibility with specific client versions.

Clients do not use PCMK_dh_max_bits.

PCMK_ipc_type

enumeration shared-mem

Advanced Use Only: Force use of a particular IPC method. Allowed values:

  • shared-mem
  • socket
  • posix
  • sysv

PCMK_ipc_buffer

nonnegative integer 131072 Advanced Use Only: Specify an IPC buffer size in bytes. This can be useful when connecting to large clusters that result in messages exceeding the default size (which will also result in log messages referencing this variable).

PCMK_cluster_type

enumeration corosync Advanced Use Only: Specify the cluster layer to be used. If unset, Pacemaker will detect and use a supported cluster layer, if available. Currently, "corosync" is the only supported cluster layer. If multiple layers are supported in the future, this will allow overriding Pacemaker’s automatic detection to select a specific one.

PCMK_schema_directory

text /usr/share/pacemaker Advanced Use Only: Specify an alternate location for RNG schemas and XSL transforms.

PCMK_valgrind_enabled

enumeration no Advanced Use Only: Whether subsystem daemons should be run under valgrind. Allowed values are the same as for PCMK_debug.

PCMK_callgrind_enabled

enumeration no Advanced Use Only: Whether subsystem daemons should be run under valgrind with the callgrind tool enabled. Allowed values are the same as for PCMK_debug.

VALGRIND_OPTS

text   Advanced Use Only: Pass these options to valgrind, when enabled (see valgrind(1)). "--vgdb=no" should usually be specified because pacemaker-execd can lower privileges when executing commands, which would otherwise leave a bunch of unremovable files in /tmp.