[libvirt-users] Different SAS controller IDs

Dear All, I have problem with setting up migration on Intel Multi-Flex server. The problem is that SAS controller IDs (and volume ids in /dev/disk/by-path directory) are different between nodes. For example on node0 i have: lrwxrwxrwx 1 root root 9 Jun 29 07:20 pci-0000:04:00.0-sas-0x500015500002040a-lun-0 -> ../../sda lrwxrwxrwx 1 root root 10 May 27 09:17 pci-0000:04:00.0-sas-0x500015500002040a-lun-0-part1 -> ../../sda1 ....... On node1 i have: lrwxrwxrwx 1 root root 9 Jul 12 21:19 /dev/disk/by-path/pci-0000:04:00.0-sas-0x5000155000020409-lun-0 -> ../../sda lrwxrwxrwx 1 root root 10 Jul 12 21:19 /dev/disk/by-path/pci-0000:04:00.0-sas-0x5000155000020409-lun-0-part1 -> ../../sda1 ........ Difference is in 0x500015500002040a and 0x5000155000020409 But this is the matter of migration falure because migration script cannot find needed volume. Is there any chance to fix it somehow? Best regards, Anton Nikiforov

On Thu, Jul 12, 2012 at 02:09:12PM +0400, Anton Nikiforov wrote:
Dear All,
I have problem with setting up migration on Intel Multi-Flex server. The problem is that SAS controller IDs (and volume ids in /dev/disk/by-path directory) are different between nodes.
For example on node0 i have: lrwxrwxrwx 1 root root 9 Jun 29 07:20 pci-0000:04:00.0-sas-0x500015500002040a-lun-0 -> ../../sda lrwxrwxrwx 1 root root 10 May 27 09:17 pci-0000:04:00.0-sas-0x500015500002040a-lun-0-part1 -> ../../sda1 .......
On node1 i have: lrwxrwxrwx 1 root root 9 Jul 12 21:19 /dev/disk/by-path/pci-0000:04:00.0-sas-0x5000155000020409-lun-0 -> ../../sda lrwxrwxrwx 1 root root 10 Jul 12 21:19 /dev/disk/by-path/pci-0000:04:00.0-sas-0x5000155000020409-lun-0-part1 -> ../../sda1 ........
Difference is in 0x500015500002040a and 0x5000155000020409 But this is the matter of migration falure because migration script cannot find needed volume.
Is there any chance to fix it somehow?
Have you tried using /dev/disk/by-id/ aliases instead ? IIRC, those are based on the SCSI volume WWID which should be stable across any host seeing the LUN Daniel -- |: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :| |: http://libvirt.org -o- http://virt-manager.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :|

12.07.2012 14:20, Daniel P. Berrange пишет:
On Thu, Jul 12, 2012 at 02:09:12PM +0400, Anton Nikiforov wrote:
Dear All,
I have problem with setting up migration on Intel Multi-Flex server. The problem is that SAS controller IDs (and volume ids in /dev/disk/by-path directory) are different between nodes.
For example on node0 i have: lrwxrwxrwx 1 root root 9 Jun 29 07:20 pci-0000:04:00.0-sas-0x500015500002040a-lun-0 -> ../../sda lrwxrwxrwx 1 root root 10 May 27 09:17 pci-0000:04:00.0-sas-0x500015500002040a-lun-0-part1 -> ../../sda1 .......
On node1 i have: lrwxrwxrwx 1 root root 9 Jul 12 21:19 /dev/disk/by-path/pci-0000:04:00.0-sas-0x5000155000020409-lun-0 -> ../../sda lrwxrwxrwx 1 root root 10 Jul 12 21:19 /dev/disk/by-path/pci-0000:04:00.0-sas-0x5000155000020409-lun-0-part1 -> ../../sda1 ........
Difference is in 0x500015500002040a and 0x5000155000020409 But this is the matter of migration falure because migration script cannot find needed volume.
Is there any chance to fix it somehow?
Have you tried using /dev/disk/by-id/ aliases instead ? IIRC, those are based on the SCSI volume WWID which should be stable across any host seeing the LUN
Daniel
Hello Daniel, All. Thanks for fast replay. This is the fastest solution but it have disadvantages, for example: there is no way to determine which lun connected to which host (from virt-manager side). This solution require to check /dev/disk/by-path to find there needed lun then check /dev/disk/by-id to find there corresponding link and then connect it to the host. I think that should be a solution to change by-path links to what is needed by some kind of substitution in storage xml file.... But if using by-id links is the only way - i'll have to live with it. Best regards, Anton Nikiforov
participants (2)
-
Anton Nikiforov
-
Daniel P. Berrange