** Description changed:
[ Impact ]
When booting an affected Ubuntu Server installer ISO on a system where a
multipath device is used as a LVM PV, installing Ubuntu is not possible.
Such a situation happens when a previous *LVM* installation of any OS (i.e.,
not
necessarily Ubuntu) was done on a multipath disk, present on the system.
The symptoms typically include:
- * a crash of the Subiquity client
- * the following error in the journal:
+ * a crash of the Subiquity client
+ * the following error in the journal:
```
ubuntu-server multipathd[941]: mpatha: addmap [0 16777216 multipath 0 0 2 1
service-time 0 1 1 8:0 1 service-time 0 1 1 8:16 1]
ubuntu-server multipathd[941]: libdevmapper: ioctl/libdm-iface.c(1990):
device-mapper: reload ioctl on mpatha (252:1) failed: Device or resource busy
```
- * the VG device mapper node exists (e.g., ubuntu-vg) but the multipath one
does not (e.g., mpatha)
+ * the VG device mapper node exists (e.g., ubuntu-vg) but the multipath one
does not (e.g., mpatha)
Explanation
-----------
Although LVM support is included in the initramfs of the installer ISO,
multipath support is not. As a result, during the transition out of the
initramfs, LVM VGs are activated using an individual underlying path device
instead of the consolidated multipath device mapper node.
Example
-------
Let's assume /dev/sda and /dev/sdb refer to the same disk via different
paths. It is intended that sda and sdb are consolidated under a multipath
device node, which in turn should be used as a PV.
- Excepted result in the live environment
- ---------------------------------------
+ Excepted result in the live environment
+ ---------------------------------------
/dev/sda --> consolidated under mpatha
/dev/sdb --> consolidated under mpatha
/dev/mapper/mpatha --> used as the PV of ubuntu-vg
/dev/mapper/ubuntu-vg --> the VG that uses mpatha as the PV
- Actual result on affected ISO
- -----------------------------
+ Actual result on affected ISO
+ -----------------------------
/dev/sda --+
/dev/sdb ----> one of these is used as the PV for ubuntu-vg
/dev/mapper/mpatha <-- does not exist
/dev/mapper/ubuntu-vg (uses /dev/sda or /dev/sdb as the PV)
[ Proposed fix ]
- * Since 25.10, we added support to multipath in the initramfs of the Ubuntu
Server ISOs.
- * This would correspond to a livecd-rootfs SRU along with a multipath-tools
fix.
+ * Since 25.10, we added support to multipath in the initramfs of the Ubuntu
Server ISOs. I propose doing the same for 24.04.5.
+ * This would correspond to:
+ * a livecd-rootfs upload, ensuring multipath-tools-boot is installed when
building the installer's initramfs.
+ * a multipath-tools upload to fix:
+ * a bug making the multipathd process linger when executed in the
installer environment.
+ * a bug making multipathd refuse to start if no bindings file is
present (i.e., bug 2120444)
[ Test Plan ]
TODO
[ Where problems could occur? ]
- * Bringing multipath support in the initramfs could slightly slow down the
- boot process of the ISO. Nevertheless, 25.10 and 26.04 Ubuntu
- Server ISOs have had multipath-support in the initramfs, and no measurable
- slow down has been experienced.
-
+ * Bringing multipath support in the installer's initramfs could slightly
slow down the boot process of the ISO. Nevertheless, 25.10 and 26.04 Ubuntu
Server ISOs have had multipath-support in the initramfs, and no measurable slow
down has been experienced. The change is affecting ubuntu-server only.
+ * The multipath-tools fix is a bit more involved. It affects all systems, not
just ISOs.
[ Other Info ]
- * For existing affected ISOs, there is a workaround:
- 1. open a shell in the installer environment (one can hit F2 in the
- Subiquity TUI)
- 2. Delete the relevant VG using `dmsetup remove`:
- $ sudo dmremove /dev/mapper/<vg>
- 3. Restart multipathd using:
- $ sudo systemctl restart multipathd
- 4. Finally, restart Subiquity:
- $ sudo snap restart subiquity
- * Alternatively, users can wipe the affected disk and then restart he
installer (but this involves manually erasing data from the disk).
+ * For existing affected ISOs, there is a workaround but not a user-friendly
one:
+ 1. open a shell in the installer environment (one can hit F2 in the
+ Subiquity TUI)
+ 2. Delete the relevant VG using `dmsetup remove`:
+ $ sudo dmremove /dev/mapper/<vg>
+ 3. Restart multipathd using:
+ $ sudo systemctl restart multipathd
+ 4. Finally, restart Subiquity:
+ $ sudo snap restart subiquity
+ * Alternatively, users can wipe the affected disk and then restart he
installer (but this involves manually erasing data from the disk).
[ Original description ]
== Comment: - Anushree Mathur ==
OS: 24.04 LTS (Noble Numbat)
I started the Ubuntu installation for 24.04 LTS (Noble Numbat) on L1(HOST)
having SAN disk, it failed with the following error just after I chose the disk.
Ubuntu 24.04 LTS ubuntu-server hvc0
connecting...
waiting for cloud-init...
generating crash report
report saved to /var/crash/1724388235.797082424.ui.crash
Traceback (most recent call last):
File
"/snap/subiquity/5745/lib/python3.10/site-packages/subiquity/client/controllers/filesystem.py",
line 273, in _guided_choice
self.ui.set_body(FilesystemView(self.model, self))
File
"/snap/subiquity/5745/lib/python3.10/site-packages/subiquity/ui/views/filesystem/filesystem.py",
line 485, in __init__
self.refresh_model_inputs()
File
"/snap/subiquity/5745/lib/python3.10/site-packages/subiquity/ui/views/filesystem/filesystem.py",
line 540, in refresh_model_inputs
self.avail_list.refresh_model_inputs()
File
"/snap/subiquity/5745/lib/python3.10/site-packages/subiquity/ui/views/filesystem/filesystem.py",
line 417, in refresh_model_inputs
for obj, cells in summarize_device(device, filter):
File
"/snap/subiquity/5745/lib/python3.10/site-packages/subiquity/ui/views/filesystem/helpers.py",
line 32, in summarize_device
anns = labels.annotations(device) + labels.usage_labels(device)
File "/snap/subiquity/5745/usr/lib/python3.10/functools.py", line 889, in
wrapper
return dispatch(args[0].__class__)(*args, **kw)
File
"/snap/subiquity/5745/lib/python3.10/site-packages/subiquity/common/filesystem/labels.py",
line 100, in _annotations_vg
member = next(iter(vg.devices))
StopIteration
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/snap/subiquity/5745/usr/bin/subiquity", line 8, in <module>
sys.exit(main())
File
"/snap/subiquity/5745/lib/python3.10/site-packages/subiquity/cmd/tui.py", line
158, in main
asyncio.run(run_with_loop())
File "/snap/subiquity/5745/usr/lib/python3.10/asyncio/runners.py", line 44,
in run
return loop.run_until_complete(main)
File "/snap/subiquity/5745/usr/lib/python3.10/asyncio/base_events.py", line
649, in run_until_complete
return future.result()
File
"/snap/subiquity/5745/lib/python3.10/site-packages/subiquity/cmd/tui.py", line
156, in run_with_loop
await subiquity_interface.run()
File
"/snap/subiquity/5745/lib/python3.10/site-packages/subiquity/client/client.py",
line 403, in run
await super().run()
File
"/snap/subiquity/5745/lib/python3.10/site-packages/subiquitycore/tui.py", line
351, in run
await super().run()
File
"/snap/subiquity/5745/lib/python3.10/site-packages/subiquitycore/core.py", line
134, in run
raise exc
RuntimeError: coroutine raised StopIteration
Ubuntu 24.04 LTS ubuntu-server hvc0
connecting...
ProblemType: Bug
Architecture: ppc64el
CrashDB: {'impl': 'launchpad', 'project': 'subiquity'}
I tried following 2 installation methods, it is failing in both the ways:
1) kexec method
2) attaching vdvd and starting installer
NOTE: It is happening only when the system has SAN disks otherwise this
installation worked fine.
I will be attaching the crash report for this!
== Comment:- Hariharan T S ==
Verified the following cases.
Installation on Disk from VIOS - PASSED
Installatoin on Disk from VIOS and system had Disks from SAN - FAILED
Installation on Disk from SAN and system ahd Disk from VIOS - FAILED
== Comment:- Vaibhav Jain ==
Problem seems to happening when Subuquity enters the disk partition view. The
system has a SAN disk and an existing Mullti Path DM volume on it.
Mirroring to distro
** Changed in: multipath-tools (Ubuntu Noble)
Status: New => In Progress
** Changed in: multipath-tools (Ubuntu Noble)
Assignee: (unassigned) => Olivier Gayot (ogayot)
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2080474
Title:
[SRU] cannot install Ubuntu Server over a multipath disk used as an
LVM PV
To manage notifications about this bug go to:
https://bugs.launchpad.net/subiquity/+bug/2080474/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs