Bug 677263
| Summary: | [RFE] target multipath devices for partitioning by their wwid | ||
|---|---|---|---|
| Product: | Red Hat Enterprise Linux 6 | Reporter: | J.H.M. Dassen (Ray) <rdassen> |
| Component: | anaconda | Assignee: | Ales Kozumplik <akozumpl> |
| Status: | CLOSED ERRATA | QA Contact: | Gris Ge <fge> |
| Severity: | high | Docs Contact: | |
| Priority: | high | ||
| Version: | 6.0 | CC: | akozumpl, coughlan, djuran, fge, gregswift, ichute, jruemker, jzeleny, marting, mkhusid, mmatsuya, rbinkhor, revers, rmunilla, rwilliam, xdl-redhat-bugzilla |
| Target Milestone: | rc | Keywords: | FutureFeature, Triaged |
| Target Release: | --- | ||
| Hardware: | All | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Fixed In Version: | anaconda-13.21.119-1 | Doc Type: | Enhancement |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2011-12-06 10:30:05 UTC | Type: | --- |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
| Bug Depends On: | |||
| Bug Blocks: | 607248, 703208 | ||
This issue was already reported in bug 492785. But unfortunately, it was never addressed. 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. 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 (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 Ah ok, that makes more sense. I'll give your updates image a try. Fixed on the rhel6 branch by commit b7a7e870fd4cca7234623458ad5cee4aa47da7b9. 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 === Should be assigned rather new. > 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
(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? 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. 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. (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. 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 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 |
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