RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.
Bug 677263 - [RFE] target multipath devices for partitioning by their wwid
Summary: [RFE] target multipath devices for partitioning by their wwid
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: anaconda
Version: 6.0
Hardware: All
OS: Linux
high
high
Target Milestone: rc
: ---
Assignee: Ales Kozumplik
QA Contact: Gris Ge
URL:
Whiteboard:
Depends On:
Blocks: 607248 703208
TreeView+ depends on / blocked
 
Reported: 2011-02-14 09:02 UTC by J.H.M. Dassen (Ray)
Modified: 2018-11-14 15:01 UTC (History)
16 users (show)

Fixed In Version: anaconda-13.21.119-1
Doc Type: Enhancement
Doc Text:
Clone Of:
Environment:
Last Closed: 2011-12-06 10:30:05 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Knowledge Base (Legacy) 45051 0 None None None Never
Red Hat Product Errata RHBA-2011:1565 0 normal SHIPPED_LIVE anaconda bug fix and enhancement update 2011-12-06 00:39:12 UTC

Description J.H.M. Dassen (Ray) 2011-02-14 09:02:30 UTC
2. What is the nature and description of the request?

It appears that in RHEL 6 anaconda, the multipath kickstart option is no longer
supported. If you use it, the installation will fail with "The multipath
kickstart command is not currently supported".  This appears to be intentional,
from kickstart.py:

class MultiPath(commands.multipath.FC6_MultiPath):
    def parse(self, args):
        raise NotImplementedError("The multipath kickstart command is not currently supported")

While anaconda does set up multipath devices for you, there is now no longer
any way to ensure that anaconda has mapped a particular WWID to a specific
device name, like you could in RHEL 5.  For instance, you may know that you
need to install to the device with WWID 1234567890, but you only have device
names like mpatha, mpathb, mpathc, etc, and so there's no guarantee that the
device you specify will be the correct one.  This presents a risk of
partitioning the wrong device, and this is not acceptable for our large
enterprise customers.    

3. Why does the customer need this? (List the business requirements here)

Ability to provision systems in an automated fashion while being confident that
their data will not be overwritten while partitioning. 

4. How would the customer like to achieve this? (List the functional
requirements here)

Add support for the multipath option as it existed in RHEL 5. 

5. For each functional requirement listed in question 4, specify how Red Hat
and the customer can test to confirm the requirement is successfully
implemented.

Create a kickstart that uses the multipath option to specify a name and wwid to
match, and ensure anaconda creates it that way. 

6. Is there already an existing RFE upstream or in Red Hat bugzilla?

Not that I could see

7. How quickly does this need resolved? (desired target release)

6.2 (although 6.1 would be ideal, since a number of customers have come to rely
on this option)

8. Does this request meet the RHEL Inclusion criteria (please review)

Yes

9. List the affected packages

anaconda

Comment 5 Martin George 2011-05-27 07:55:02 UTC
This issue was already reported in bug 492785. But unfortunately, it was never addressed.

Comment 6 Ales Kozumplik 2011-06-08 13:17:50 UTC
We do not plan to include the 'multipath' command, instead we'd like to try a more general solution.

The patch at https://www.redhat.com/archives/anaconda-devel-list/2011-June/msg00060.html should allow for designating mpaths by their wwid in clearpart, ignoredisk and part commands, by pointing to a symlink of that id, for example like this:

part / --fstype=ext3 --grow --asprimary --size=100 --ondisk=disk/by-id/scsi-3600a0b800067fabc000067694d23fe6e

Please confirm this is sufficient for your needs. To test this functionality I prepared an updates image, http://akozumpl.fedorapeople.org/bz_677263.img.

To use it with Anaconda folllow the instructions on http://fedoraproject.org/wiki/Anaconda/Updates.

Comment 7 John Ruemker 2011-06-08 13:42:32 UTC
I guess its unclear to me how that would help.  /dev/disk/by-id/scsi-<scsi_id> points to one of the underlying paths, not the mpath device.

# ll /dev/disk/by-id/scsi-360014380125989a10000400000270000 
lrwxrwxrwx. 1 root root 9 Jun  8 04:39 /dev/disk/by-id/scsi-360014380125989a10000400000270000 -> ../../sdd
# multipath -ll mpathj
mpathj (360014380125989a10000400000270000) dm-0 HP,HSV300
size=10G features='1 queue_if_no_path' hwhandler='0' wp=rw
|-+- policy='round-robin 0' prio=50 status=active
| |- 4:0:0:1 sda 8:0   active ready running
| `- 4:0:3:1 sdj 8:144 active ready running
`-+- policy='round-robin 0' prio=10 status=enabled
  |- 4:0:2:1 sdg 8:96  active ready running
  `- 4:0:1:1 sdd 8:48  active ready running

This is in a regular RHEL 6 environment.  Does anaconda do something differently in this regard?

If by-id links to one of the individual paths, then how does specifying it in the part command allow you to install to a multipath device of your choice?

Thanks,
John

Comment 9 Ales Kozumplik 2011-06-08 14:02:50 UTC
(In reply to comment #7)
> I guess its unclear to me how that would help.  /dev/disk/by-id/scsi-<scsi_id>
> points to one of the underlying paths, not the mpath device.
> 
...
>
> This is in a regular RHEL 6 environment.  Does anaconda do something
> differently in this regard?
> 

Yes,

You are right that the by-id links point to the underlying devices. In my opinion, there is no use in installing through /dev/sda if it's merely an mpath member (and the current RHEL6 and rawhide Anaconda will not allow it via kickstart or UI), one always wants the mpath device it comprises. So what I am doing in the patch above is checking out what mpath device 'sda' belongs to and promotes the 'sda' entry to it.

Ales

Comment 10 John Ruemker 2011-06-08 14:06:50 UTC
Ah ok, that makes more sense.  

I'll give your updates image a try.

Comment 11 Ales Kozumplik 2011-06-17 08:05:42 UTC
Fixed on the rhel6 branch by commit b7a7e870fd4cca7234623458ad5cee4aa47da7b9.

Comment 14 Gris Ge 2011-08-15 02:25:24 UTC
Ales,


I tried options:
===
ignoredisk --only-use=/dev/disk/by-id/dm-uuid-mpath-360a98000572d574a4e6f63706772594b
===

And got error during installation:
===
Specified nonexistent disk /dev/disk/by-id/dm-uuid-mpath-360a98000572d574a4e6f63706772594b in ignoredisk command
===
Repo: 	RHEL6.2-20110814.n.0_nfs-Server-x86_64

You can check https://beaker.engineering.redhat.com/jobs/119798 if you need more log.

I manual boot up that server into anaconda shell and confirmed the path I am using is exist and correct.
===
sh-4.1# ls -l /dev/disk/by-id/
total 0
lrwxrwxrwx. 1 root root 10 2011-08-14 21:53 dm-name-mpatha -> ../../dm-0
lrwxrwxrwx. 1 root root 10 2011-08-14 21:53 dm-name-mpathb -> ../../dm-4
lrwxrwxrwx. 1 root root 10 2011-08-14 21:53 dm-uuid-mpath-360a98000572d574a4e6f63706772594b -> ../../dm-0
lrwxrwxrwx. 1 root root 10 2011-08-14 21:53 dm-uuid-mpath-360a98000572d574a4e6f654875374234 -> ../../dm-4
lrwxrwxrwx. 1 root root  9 2011-08-14 21:53 edd-int13_dev80 -> ../../sdo
lrwxrwxrwx. 1 root root 10 2011-08-14 21:53 edd-int13_dev80-part1 -> ../../sdo1
lrwxrwxrwx. 1 root root 10 2011-08-14 21:53 edd-int13_dev80-part2 -> ../../sdg2
lrwxrwxrwx. 1 root root 10 2011-08-14 21:53 edd-int13_dev80-part3 -> ../../sdo3
lrwxrwxrwx. 1 root root  9 2011-08-14 21:53 scsi-360a98000572d574a4e6f63706772594b -> ../../sdo
lrwxrwxrwx. 1 root root 10 2011-08-14 21:53 scsi-360a98000572d574a4e6f63706772594b-part1 -> ../../sdo1
lrwxrwxrwx. 1 root root 10 2011-08-14 21:53 scsi-360a98000572d574a4e6f63706772594b-part2 -> ../../sdg2
lrwxrwxrwx. 1 root root 10 2011-08-14 21:53 scsi-360a98000572d574a4e6f63706772594b-part3 -> ../../sdo3
lrwxrwxrwx. 1 root root  9 2011-08-14 21:53 scsi-360a98000572d574a4e6f654875374234 -> ../../sdp
lrwxrwxrwx. 1 root root  9 2011-08-14 21:53 wwn-0x60a98000572d574a4e6f63706772594b -> ../../sdo
lrwxrwxrwx. 1 root root 10 2011-08-14 21:53 wwn-0x60a98000572d574a4e6f63706772594b-part1 -> ../../sdo1
lrwxrwxrwx. 1 root root 10 2011-08-14 21:53 wwn-0x60a98000572d574a4e6f63706772594b-part2 -> ../../sdg2
lrwxrwxrwx. 1 root root 10 2011-08-14 21:53 wwn-0x60a98000572d574a4e6f63706772594b-part3 -> ../../sdo3
lrwxrwxrwx. 1 root root  9 2011-08-14 21:53 wwn-0x60a98000572d574a4e6f654875374234 -> ../../sdp
sh-4.1# multipath  -l
mpathb (360a98000572d574a4e6f654875374234) dm-4 NETAPP,LUN
size=2.0G features='0' hwhandler='0' wp=rw
|-+- policy='round-robin 0' prio=-1 status=active
| |- 4:0:0:1 sdb 8:16  active undef running
| |- 4:0:1:1 sdd 8:48  active undef running
| |- 3:0:0:1 sdj 8:144 active undef running
| `- 3:0:1:1 sdl 8:176 active undef running
`-+- policy='round-robin 0' prio=-1 status=enabled
  |- 4:0:3:1 sdh 8:112 active undef running
  |- 4:0:2:1 sdf 8:80  active undef running
  |- 3:0:2:1 sdn 8:208 active undef running
  `- 3:0:3:1 sdp 8:240 active undef running
mpatha (360a98000572d574a4e6f63706772594b) dm-0 NETAPP,LUN
size=50G features='0' hwhandler='0' wp=rw
|-+- policy='round-robin 0' prio=-1 status=active
| |- 4:0:0:0 sda 8:0   active undef running
| |- 4:0:1:0 sdc 8:32  active undef running
| |- 3:0:0:0 sdi 8:128 active undef running
| `- 3:0:1:0 sdk 8:160 active undef running
`-+- policy='round-robin 0' prio=-1 status=enabled
  |- 4:0:3:0 sdg 8:96  active undef running
  |- 4:0:2:0 sde 8:64  active undef running
  |- 3:0:2:0 sdm 8:192 active undef running
  `- 3:0:3:0 sdo 8:224 active undef running
===

Comment 15 Gris Ge 2011-08-15 06:09:58 UTC
Should be assigned rather new.

Comment 16 Ales Kozumplik 2011-08-15 07:57:33 UTC
> I tried options:
> ===
> ignoredisk
> --only-use=/dev/disk/by-id/dm-uuid-mpath-360a98000572d574a4e6f63706772594b
> ===
> 
> And got error during installation:
> ===
> Specified nonexistent disk
> /dev/disk/by-id/dm-uuid-mpath-360a98000572d574a4e6f63706772594b in ignoredisk
> command
> ===

can you try stripping away the /dev/ prefix and not use the dm-uuid-mpath* devices which might not exist yet?, e.g. try:

ignoredisk --only-use=disk/by-id/scsi-360a98000572d574a4e6f63706772594b

Don't worry, anaconda later recognizes this as a part of a multipath device and promotes your request to such.

If that doesn't help please loan me the machine in beaker so I can debug this immediately. 

Thank you.

Ales

Comment 17 Gris Ge 2011-08-15 09:25:04 UTC
(In reply to comment #16)

> 
> ignoredisk --only-use=disk/by-id/scsi-360a98000572d574a4e6f63706772594b
> 
This options works, not OS cannot boot up, got same problem in  https://bugzilla.redhat.com/show_bug.cgi?id=696876#c37 

I just loaned the that server storageqe-06.rhts.eng.bos.redhat.com to you.
Please add similar line into job.xml if you want to provision that server:
===
<ks_appends>
    <ks_append><![CDATA[
%end
ignoredisk --only-use=disk/by-id/scsi-360a98000572d574a4e6f63706772594b
]]></ks_append>

</ks_appends>
====

BTW, Before this bug been spotted, I use "ondisk=/dev/disk/by-id/dm-uuid-mpath-360a98000572d574a4e6f63706772594b" option, it works well (no LVM).

Using scsi path will confuse user as it's pointing to a disk instaed of multipath dm-X.

Can we also get multipath specify path instead of scsi path?

Comment 18 Ales Kozumplik 2011-08-15 10:01:46 UTC
I am going to get back to this bug (In reply to comment #17)
> (In reply to comment #16)
> 
> > 
> > ignoredisk --only-use=disk/by-id/scsi-360a98000572d574a4e6f63706772594b
> > 
> This options works, not OS cannot boot up, got same problem in 
> https://bugzilla.redhat.com/show_bug.cgi?id=696876#c37 
> 
> I just loaned the that server storageqe-06.rhts.eng.bos.redhat.com to you.
> Please add similar line into job.xml if you want to provision that server:

OK, so the new option works and the error is the same for other multipath setups (and I believe is caused by 701371), so I think we can move this back to MODIFIED.

Comment 20 Gris Ge 2011-08-18 14:26:02 UTC
Ales,

So you don't want to enable this options:
===
ignoredisk --only-use=/dev/disk/by-id/dm-uuid-mpath-<WWID>
===

Or you put it into next release?

I think that could be user-friendly.

Either of your choice, we need to make this bug documented.

Comment 21 Ales Kozumplik 2011-08-18 14:32:24 UTC
(In reply to comment #20)
> Ales,
> 
> So you don't want to enable this options:
> ===
> ignoredisk --only-use=/dev/disk/by-id/dm-uuid-mpath-<WWID>
> ===
> 
> Or you put it into next release?
> 
> I think that could be user-friendly.
> 
> Either of your choice, we need to make this bug documented.

This is not a bug, Anaconda is assembling the multipath devices after kickstart is parsed so the path you are referring to can not exist at that point.

Comment 22 Gris Ge 2011-08-23 07:43:00 UTC
ignoredisk --only-use=disk/by-id/scsi-360a98000572d574a4e6f63706772594b

works well with repo RHEL6.2-20110822.5

Beaker job: https://beaker.engineering.redhat.com/jobs/122949

Comment 23 errata-xmlrpc 2011-12-06 10:30:05 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

http://rhn.redhat.com/errata/RHBA-2011-1565.html


Note You need to log in before you can comment on or make changes to this bug.