Can I add or remove devices to a fence_scsi or fence_mpath device without restarting the cluster or all the resources?
Environment
- Red Hat Enterprise Linux 6, 7, or 8 (with the High Availability or Resilient Storage Add-on)
- Pacemaker
- A
fence_scsiorfence_mpathstonith device
Issue
- When I add or remove storage devices in a cluster that uses
fence_scsiorfence_mpathstonith devices, I have to restart the cluster or all the resources in order to update the SCSI persistent reservations. - Can I add or remove a
fence_scsiorfence_mpathfence-agent without causing a restart of resources?
Resolution
For fence_scsi:
Red Hat Enterprise Linux 6
There are no plans to add this feature in RHEL 6.
Red Hat Enterprise Linux 7
There are no plans to add this feature in RHEL 7.
Red Hat Enterprise Linux 8
- The issue (bugzilla bug: 2180706) has been resolved with the errata RHSA-2023:3082 with the following package(s):
pcs-0.10.15-4.el8_8.1,pcs-snmp-0.10.15-4.el8_8.1or later for RHEL 8.8.z. - The issue (bugzilla bug: 2179010) has been resolved with the errata RHBA-2023:6903 with the following package(s):
pcs-0.10.17-2.el8,pcs-snmp-0.10.17-2.el8or later.
Red Hat Enterprise Linux 9
- The issue (bugzilla bug: 2180704) has been resolved with the errata RHSA-2023:2652 with the following package(s):
pcs-snmp-0.11.4-7.el9_2,pcs-0.11.4-7.el9_2or later for RHEL 9.2.z. - The issue (bugzilla bug: 2177996) has been resolved with the errata RHSA-2023:6316 with the following package(s):
pcs-snmp-0.11.6-3.el9,pcs-0.11.6-3.el9or later.
With the above errata new scsi devices can be added to the devices attribute for fence_scsi without causing a restart of all resources running on the same node where the stonith resource was running. A new command was added to add new scsi storage devices to an existing fence_scsi stonith devices without causing restart of all other resources.
pcs stonith update-scsi-devices <stonith id> set <path to scsi device>
For fence_mpath:
Red Hat Enterprise Linux 8
- The issue tracked under bugzilla bug 2035332 for RHEL 8.4.z has been closed & deferred as the fix has been released & back-ported to RHEL 8.5.z or later.
- The issue (bugzilla bug: 1872378) has been resolved with the errata RHSA-2021:4142 with the following package(s):
pcs-0.10.10-4.el8,pcs-snmp-0.10.10-4.el8or later. - The issue (bugzilla bug: 2023845) has been resolved with the errata RHSA-2022:7447 with the following package(s):
pcs-0.10.14-5.el8,pcs-snmp-0.10.14-5.el8or later.
Red Hat Enterprise Linux 9
- The issue (bugzilla bug: 2024522) has been resolved with the errata RHSA-2022:7935 with the following package(s):
pcs-snmp-0.11.3-4.el9,pcs-0.11.3-4.el9or later.
With the above errata new multipath devices can be added to the devices attribute for fence_mpath without causing a restart of all resources running on the same node where the stonith resource was running. A new command was added to add new multipath storage devices to an existing fence_mpath stonith devices without causing restart of all other resources.
pcs stonith update-scsi-devices <stonith id> set <path to mpath device>
Note :
- There is a new bug with pacemaker component, where even after using above mentioned commands for updating respective stonith agent, the cluster resources gets restarted. The issue and the jira details has been documented in following article : Updating
devicesvalue for fence_scsi or fence_mpath results in a restart of the cluster resources
Workaround
These workarounds below can apply to `fence_scsi` or `fence_mpath`.
- If the
devicesattribute of the stonith device is left blank (and thus automatically populated with a list of the physical volumes composing the clustered volume groups), a cluster restart is required to regenerate the list. - If the
devicesattribute is specified, updating thedevicesattribute triggers a restart of all cluster resources, since they all depend on thefence_scsiorfence_mpathdevice. For example, updating the fence configuration using the following command will require a restart of whole cluster or all resources:
# pcs stonith update <stonith id> devices=<path to devices>
Root Cause
When new shared storage devices are added to a Pacemaker cluster, either the whole cluster or all resources must be restarted in order to have fence_scsi or fence_mpath manage SCSI persistent reservations on those devices.
This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.