Useful Corosync and Pacemaker Commands
List of useful commands for Corosync and Pacemaker clusters.
- View the real-time status of nodes and resources:
crm_mon
- View one-off status of nodes and resources:
crm status
- View cluster configuration:
crm configure show
- Set a node to standby mode (can also be used to simulate a node becoming unavailable):
crm node standby <node name>
- Set a node's status from standby to online:
crm node online <node name>
- Start a resource or a resource group:
crm resource start <resource name>
- Stop a resource or a resource group:
crm resource stop <resource name>
- Restart a resource or a resource group (if the resource is in a resource group then the whole group will be restarted):
crm resource restart <resource name>
- Edit a resource, which allows its reconfiguration:
crm configure edit <resource name>
- Delete a resource (must be stopped before it is deleted):
crm configure delete <resource name>
- Migrate the enswitch resource group to another node (avoid migrating specific resources separately, migrate the whole enswitch group instead):
crm resource migrate enswitch <node name>
- Configuring a cluster to not manage a resource:
crm_resource --resource <resource name> --set-parameter is-managed --meta --parameter-value false
- Clear a resource that is stuck in "(unmanaged) FAILED" state, e.g. due to a failed stop action:
crm_resource -P crm resource cleanup <resource name>
- List resource agents by type:
crm ra list lsb crm ra list systemd crm ra list ocf heartbeat crm ra list ocf pacemaker
- Remove a resource from a group without disturbing the remaining resources:
crm configure property maintenance-mode=true crm resource stop <resource> # it won't stop as it's in maintenance-mode crm configure delete <resource> crm configure show # verify that all references to <resource> are gone crm resource reprobe # the cluster double checks the status of declared resources and verifies that everything is in order and <resource> doesn't exist anymore crm_mon -Arf1 # double check that everything is "started (unmanaged)" and <resource> is gone crm_simulate -S -L -VVV # optional, to check what would happen when leaving maintenance-mode crm configure property maintenance-mode=false
If something goes wrong while in maintenance-mode then
crm resource cleanup <resource>
might be handy.
- Edit the cluster configuration with the cibadmin cluster tool:
cibadmin --query > /tmp/old_cluster_configuration.xml cp /tmp/old_cluster_configuration.xml /tmp/new_cluster_configuration.xml # with any editor, e.g vim, apply any needed changes to the cluster configuration vim /tmp/new_cluster_configuration.xml cibadmin --replace --xml-file /tmp/new_cluster_configuration.xml
That sequence of commands needs to be executed in only one cluster node. After that, all the other nodes will receive and apply the updated configuration.
- Set custom values for the monitoring interval and stop timeout for a systemd resource:
In the following example a cluster resource of systemd type will be created, setting a monitoring interval of 30 seconds and a stop timeout of 40 seconds.
crm configure primitive <resource name> \ systemd:<sytemd name that corresponds to the cluster resource> \ op monitor interval="30s" \ op stop timeout="40s"
If the cluster resource already exists, it could be edited to set those custom values, as illustrated in the previous examples.