Useful Corosync and Pacemaker Commands: Difference between revisions

From Integrics Wiki
Jump to navigation Jump to search
Content deleted Content added
mNo edit summary
Show ways to set custom values for the monitoring interval and stop timeout of a cluster resource
Line 82: Line 82:
vim /tmp/new_cluster_configuration.xml
vim /tmp/new_cluster_configuration.xml
cibadmin --replace --xml-file /tmp/new_cluster_configuration.xml</pre>
cibadmin --replace --xml-file /tmp/new_cluster_configuration.xml</pre>

* 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.

<pre>crm configure primitive <resource name> \
systemd:<sytemd name that corresponds to the cluster resource> \
op monitor interval="30s" \
op stop timeout="40s"
</pre>

If the cluster resource already exists, it could be edited to set those custom values, as illustrated in the previous examples.

Revision as of 13:03, 4 January 2022

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 # very 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 command:
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
  • 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.