Multipath devices don't show up as disks; member disks do.

rosmaniac

Member
Jun 7, 2021
5
3
8
56
So, I am running in a shared storage environment with a fairly old fibre-channel SAN. I have device mapper multipath installed, configured, and working. HOWEVER, when I want to add storage, I have to do it from the command line, because only the member disks show up in the 'disks' dialog for a host, instead of the multipath devices. Here's a cropped screenshot of the dialog:

Screenshot from 2023-05-18 11-57-20.png

and here is the lsblk output:

Code:
root@nessie:~# lsblk
NAME                                       MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINT
sda                                          8:0    0 893.8G  0 disk 
├─sda1                                       8:1    0  1007K  0 part 
├─sda2                                       8:2    0   512M  0 part  /boot/efi
└─sda3                                       8:3    0 893.2G  0 part 
  ├─pve-swap                               253:0    0     8G  0 lvm   [SWAP]
  ├─pve-root                               253:1    0    96G  0 lvm   /
  ├─pve-data_tmeta                         253:2    0   7.7G  0 lvm   
  │ └─pve-data-tpool                       253:4    0 757.8G  0 lvm   
  │   ├─pve-data                           253:5    0 757.8G  1 lvm   
  │   ├─pve-vm--111--disk--0               253:36   0    70G  0 lvm   
  │   ├─pve-vm--110--disk--0               253:37   0    80G  0 lvm   
  │   ├─pve-vm--114--disk--0               253:38   0   100G  0 lvm   
  │   ├─pve-vm--801--disk--0               253:39   0    40G  0 lvm   
  │   ├─pve-vm--115--disk--0               253:40   0    80G  0 lvm   
  │   └─pve-vm--102--disk--0               253:41   0    74G  0 lvm   
  └─pve-data_tdata                         253:3    0 757.8G  0 lvm   
    └─pve-data-tpool                       253:4    0 757.8G  0 lvm   
      ├─pve-data                           253:5    0 757.8G  1 lvm   
      ├─pve-vm--111--disk--0               253:36   0    70G  0 lvm   
      ├─pve-vm--110--disk--0               253:37   0    80G  0 lvm   
      ├─pve-vm--114--disk--0               253:38   0   100G  0 lvm   
      ├─pve-vm--801--disk--0               253:39   0    40G  0 lvm   
      ├─pve-vm--115--disk--0               253:40   0    80G  0 lvm   
      └─pve-vm--102--disk--0               253:41   0    74G  0 lvm   
sdb                                          8:16   0   1.7T  0 disk 
└─sdb1                                       8:17   0   1.7T  0 part 
  ├─nessie--pool--1-nessie--pool--1_tmeta  253:42   0  15.8G  0 lvm   
  │ └─nessie--pool--1-nessie--pool--1      253:44   0   1.7T  0 lvm   
  └─nessie--pool--1-nessie--pool--1_tdata  253:43   0   1.7T  0 lvm   
    └─nessie--pool--1-nessie--pool--1      253:44   0   1.7T  0 lvm   
sdc                                          8:32   0  1000G  0 disk 
└─mpathe                                   253:6    0  1000G  0 mpath
  └─mpathe-part1                           253:7    0  1000G  0 part 
sde                                          8:64   0   8.8T  0 disk 
└─mpathh                                   253:8    0   8.8T  0 mpath
  └─mpathh-part1                           253:9    0   8.8T  0 part 
    ├─proxmox--b1--mdc--vm--1-vm--101--disk--0
    │                                      253:11   0    50G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--101--disk--1
    │                                      253:12   0     2T  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--108--disk--0
    │                                      253:13   0    32G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--122--disk--0
    │                                      253:14   0   100G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--121--disk--0
    │                                      253:15   0    25G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--101--disk--2
    │                                      253:16   0    50G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--161--disk--0
    │                                      253:17   0    50G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--162--disk--0
    │                                      253:18   0    50G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--160--disk--0
    │                                      253:19   0    50G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--163--disk--0
    │                                      253:20   0   200G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--200--disk--0
    │                                      253:21   0    50G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--200--disk--1
    │                                      253:22   0   3.9T  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--909--disk--0
    │                                      253:23   0   150G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--902--disk--0
    │                                      253:24   0    32G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--127--disk--0
    │                                      253:25   0    80G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--127--disk--1
    │                                      253:26   0   200G  0 lvm   
    └─proxmox--b1--mdc--vm--1-vm--910--disk--0
                                           253:27   0   150G  0 lvm   
sdf                                          8:80   0   1.7T  0 disk 
└─mpathd                                   253:10   0   1.7T  0 mpath
  └─mpathd-part1                           253:28   0   1.7T  0 part 
    ├─proxmox--mdc--vm2-vm--103--disk--0   253:30   0   100G  0 lvm   
    ├─proxmox--mdc--vm2-vm--125--disk--0   253:31   0   300G  0 lvm   
    ├─proxmox--mdc--vm2-vm--125--disk--1   253:32   0   200G  0 lvm   
    └─proxmox--mdc--vm2-vm--112--disk--0   253:33   0  1000G  0 lvm   
sdg                                          8:96   0   3.1T  0 disk 
└─mpathi                                   253:29   0   3.1T  0 mpath
  └─mpathi-part1                           253:34   0   3.1T  0 part 
    └─nessie_mdc1-nessie_bak_mdc1          253:35   0   3.1T  0 lvm   /opt/nessi
sdi                                          8:128  0  1000G  0 disk 
└─mpathe                                   253:6    0  1000G  0 mpath
  └─mpathe-part1                           253:7    0  1000G  0 part 
sdj                                          8:144  0   8.8T  0 disk 
└─mpathh                                   253:8    0   8.8T  0 mpath
  └─mpathh-part1                           253:9    0   8.8T  0 part 
    ├─proxmox--b1--mdc--vm--1-vm--101--disk--0
    │                                      253:11   0    50G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--101--disk--1
    │                                      253:12   0     2T  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--108--disk--0
    │                                      253:13   0    32G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--122--disk--0
    │                                      253:14   0   100G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--121--disk--0
    │                                      253:15   0    25G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--101--disk--2
    │                                      253:16   0    50G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--161--disk--0
    │                                      253:17   0    50G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--162--disk--0
    │                                      253:18   0    50G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--160--disk--0
    │                                      253:19   0    50G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--163--disk--0
    │                                      253:20   0   200G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--200--disk--0
    │                                      253:21   0    50G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--200--disk--1
    │                                      253:22   0   3.9T  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--909--disk--0
    │                                      253:23   0   150G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--902--disk--0
    │                                      253:24   0    32G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--127--disk--0
    │                                      253:25   0    80G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--127--disk--1
    │                                      253:26   0   200G  0 lvm   
    └─proxmox--b1--mdc--vm--1-vm--910--disk--0
                                           253:27   0   150G  0 lvm   
sdk                                          8:160  0   1.7T  0 disk 
└─mpathd                                   253:10   0   1.7T  0 mpath
  └─mpathd-part1                           253:28   0   1.7T  0 part 
    ├─proxmox--mdc--vm2-vm--103--disk--0   253:30   0   100G  0 lvm   
    ├─proxmox--mdc--vm2-vm--125--disk--0   253:31   0   300G  0 lvm   
    ├─proxmox--mdc--vm2-vm--125--disk--1   253:32   0   200G  0 lvm   
    └─proxmox--mdc--vm2-vm--112--disk--0   253:33   0  1000G  0 lvm   
sdl                                          8:176  0   3.1T  0 disk 
└─mpathi                                   253:29   0   3.1T  0 mpath
  └─mpathi-part1                           253:34   0   3.1T  0 part 
    └─nessie_mdc1-nessie_bak_mdc1          253:35   0   3.1T  0 lvm   /opt/nessi
sdm                                          8:192  0  1000G  0 disk 
└─mpathe                                   253:6    0  1000G  0 mpath
  └─mpathe-part1                           253:7    0  1000G  0 part 
sdn                                          8:208  0  1000G  0 disk 
└─mpathe                                   253:6    0  1000G  0 mpath
  └─mpathe-part1                           253:7    0  1000G  0 part 
sdo                                          8:224  0   8.8T  0 disk 
└─mpathh                                   253:8    0   8.8T  0 mpath
  └─mpathh-part1                           253:9    0   8.8T  0 part 
    ├─proxmox--b1--mdc--vm--1-vm--101--disk--0
    │                                      253:11   0    50G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--101--disk--1
    │                                      253:12   0     2T  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--108--disk--0
    │                                      253:13   0    32G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--122--disk--0
    │                                      253:14   0   100G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--121--disk--0
    │                                      253:15   0    25G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--101--disk--2
    │                                      253:16   0    50G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--161--disk--0
    │                                      253:17   0    50G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--162--disk--0
    │                                      253:18   0    50G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--160--disk--0
    │                                      253:19   0    50G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--163--disk--0
    │                                      253:20   0   200G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--200--disk--0
    │                                      253:21   0    50G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--200--disk--1
    │                                      253:22   0   3.9T  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--909--disk--0
    │                                      253:23   0   150G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--902--disk--0
    │                                      253:24   0    32G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--127--disk--0
    │                                      253:25   0    80G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--127--disk--1
    │                                      253:26   0   200G  0 lvm   
    └─proxmox--b1--mdc--vm--1-vm--910--disk--0
                                           253:27   0   150G  0 lvm   
sdp                                          8:240  0   8.8T  0 disk 
└─mpathh                                   253:8    0   8.8T  0 mpath
  └─mpathh-part1                           253:9    0   8.8T  0 part 
    ├─proxmox--b1--mdc--vm--1-vm--101--disk--0
    │                                      253:11   0    50G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--101--disk--1
    │                                      253:12   0     2T  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--108--disk--0
    │                                      253:13   0    32G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--122--disk--0
    │                                      253:14   0   100G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--121--disk--0
    │                                      253:15   0    25G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--101--disk--2
    │                                      253:16   0    50G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--161--disk--0
    │                                      253:17   0    50G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--162--disk--0
    │                                      253:18   0    50G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--160--disk--0
    │                                      253:19   0    50G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--163--disk--0
    │                                      253:20   0   200G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--200--disk--0
    │                                      253:21   0    50G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--200--disk--1
    │                                      253:22   0   3.9T  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--909--disk--0
    │                                      253:23   0   150G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--902--disk--0
    │                                      253:24   0    32G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--127--disk--0
    │                                      253:25   0    80G  0 lvm   
    ├─proxmox--b1--mdc--vm--1-vm--127--disk--1
    │                                      253:26   0   200G  0 lvm   
    └─proxmox--b1--mdc--vm--1-vm--910--disk--0
                                           253:27   0   150G  0 lvm   
sdq                                         65:0    0   1.7T  0 disk 
└─mpathd                                   253:10   0   1.7T  0 mpath
  └─mpathd-part1                           253:28   0   1.7T  0 part 
    ├─proxmox--mdc--vm2-vm--103--disk--0   253:30   0   100G  0 lvm   
    ├─proxmox--mdc--vm2-vm--125--disk--0   253:31   0   300G  0 lvm   
    ├─proxmox--mdc--vm2-vm--125--disk--1   253:32   0   200G  0 lvm   
    └─proxmox--mdc--vm2-vm--112--disk--0   253:33   0  1000G  0 lvm   
sdr                                         65:16   0   1.7T  0 disk 
└─mpathd                                   253:10   0   1.7T  0 mpath
  └─mpathd-part1                           253:28   0   1.7T  0 part 
    ├─proxmox--mdc--vm2-vm--103--disk--0   253:30   0   100G  0 lvm   
    ├─proxmox--mdc--vm2-vm--125--disk--0   253:31   0   300G  0 lvm   
    ├─proxmox--mdc--vm2-vm--125--disk--1   253:32   0   200G  0 lvm   
    └─proxmox--mdc--vm2-vm--112--disk--0   253:33   0  1000G  0 lvm   
sds                                         65:32   0   3.1T  0 disk 
└─mpathi                                   253:29   0   3.1T  0 mpath
  └─mpathi-part1                           253:34   0   3.1T  0 part 
    └─nessie_mdc1-nessie_bak_mdc1          253:35   0   3.1T  0 lvm   /opt/nessi
sdt                                         65:48   0   3.1T  0 disk 
└─mpathi                                   253:29   0   3.1T  0 mpath
  └─mpathi-part1                           253:34   0   3.1T  0 part 
    └─nessie_mdc1-nessie_bak_mdc1          253:35   0   3.1T  0 lvm   /opt/nessi
root@nessie:~#

What I would like to see, or be able to configure to see, is the /dev/mpathX-part# devices in the disks dialog, with the mpath member devices not visible. If this is configurable now I am not seeing it.
 
Thanks for the pointer, and the confirmation that I'm not just missing something in the UI to configure mpath device visibility.
 
If you're planning to use thick LVM (FC-SAN in a cluster), just create the physical volumes and the volume group on CLI and create/attach the LVM via the GUI.
 
I had this same question.

Thank you

It is 5/20/2025, should we expect this functionality in the future?
 
It is 5/20/2025, should we expect this functionality in the future?
Why? The industry moved away from FC/iSCSI for quite some time now and having e.g. FC-based thick-LVM is sub-par on the feature level to a proper integration of a FC-based storage available from storage vendors.
 
Why? The industry moved away from FC/iSCSI for quite some time now and having e.g. FC-based thick-LVM is sub-par on the feature level to a proper integration of a FC-based storage available from storage vendors.
Thank you

I am using old hardware to test Proxmox to get used to it.
I guess I can understand not to update the GUI for functionality that every day is used less.

I come from the Microsoft world, so I start with the GUI first.
I used to work on Unix many years ago, but I guess have to get used to it again.
 
Why? The industry moved away from FC/iSCSI for quite some time now and having e.g. FC-based thick-LVM is sub-par on the feature level to a proper integration of a FC-based storage available from storage vendors.
While I can agree with your assessment for FC, what brings you to the conclusion that the "industry" moved away from iscsi? in favor of what?

dont confuse the limitations of PVE with limitations of iscsi as a storage transport- which, incidentally, apply to fc as well. FC storage solutions are perfectly capable of the same feature level.
 
While I can agree with your assessment for FC, what brings you to the conclusion that the "industry" moved away from iscsi? in favor of what?
I see, my comment was with respect to iSCSI in the context of LVM thick (as direct comparison to FC) ... direct iSCSI integration works differently, yet AFAIK has no multipath support.
 
  • Like
Reactions: Johannes S
OK, but that's a whole lot different than sweeping statements with respect to what the industry is doing.

PVE lacks proper tooling to use shared block storage (be it iscsi, fc, NVOF, SBP, etc) to its full potential. Those are still the preferred way to handle shared storage for virtualization (we can debate the merit of SDS over dedicated SAN) and will continue to be for the foreseeable future, and represent a hole in PVE's featureset from my perspective, not an issue with the targets.

yet AFAIK has no multipath support.
If you mean in the PVE API, you are correct. if you mean in general, multipath is supported for any shared storage that is presented to the host's storage layer as a /dev/*
 
  • Like
Reactions: Johannes S