ironic-python-agent/releasenotes/notes/multipath-handling-00a5b412d2cf2e4e.yaml
Julia Kreger 014d37743a Multipath Hardware path handling
Removes multipath base devices from consideration by
default, and instead allows the device-mapper device
managed by multipath to be picked up and utilized
instead.

In effect, allowing us to ignore standby paths *and*
leverage multiple concurrent IO paths if so offered
via ALUA.

In reality, anyone who has previously built IPA with
multipath tooling might not have encountered issues
previously because they used Active/Active SAN storage
environments. They would have worked because the IO lock
would have been exchanged between controllers and paths.
However, Active/Passive environments will block passive
paths from access, ultimately preventing new locks from
being established without proper negotiation. Ultimately
requiring multipathing *and* the agent to be smart enough
to know to disqualify underlying paths to backend storage
volumes.

An additional benefit of this is active/active MPIO devices
will, as long as ``multipath`` is present inside the ramdisk,
no longer possibly result in duplicate IO wipes occuring
accross numerous devices.

Story: #2010003
Task: #45108
Resolves: rhbz#2076622
Resolves: rhbz#2070519
Change-Id: I0fd6356f036d5ff17510fb838eaf418164cdfc92
2022-05-18 20:26:39 -03:00

19 lines
892 B
YAML

---
fixes:
- |
Fixes failures with handling of Multipath IO devices where Active/Passive
storage arrays are in use. Previously, "standby" paths could result in
IO errors causing cleaning to terminate. The agent now explicitly attempts
to handle and account for multipaths based upon the MPIO data available.
This requires the ``multipath`` and ``multipathd`` utility to be present
in the ramdisk. These are supplied by the ``device-mapper-multipath`` or
``multipath-tools`` packages, and are not requried for the agent's use.
- |
Fixes non-ideal behavior when performing cleaning where Active/Active
MPIO devices would ultimately be cleaned once per IO path, instead of
once per backend device.
other:
- |
The agent will now attempt to collect any multipath path information
and upload it to the agent ramdisk, if the tooling is present.