Enabling multipathing in autoyast Installations
This document (7009981) is provided subject to the disclaimer at the end of this document.
Environment
SUSE Linux Enterprise Server 11 Service Pack 2
SUSE Linux Enterprise Server 11 Service Pack 3
SUSE Linux Enterprise Server 11 Service Pack 4
Situation
autoyast on SLES11 SP1-SP3 has no build in support for configuring multipath.
This will be implemented prospectively in SLES 12 and SLES 11 SP4
For SLES 11, multipathing needs to be enabled during the start of autoyast.
This can be done by using a driver update disk (DUD):
SLES 11 SP1 - SP3:
Download the DUD at: http://beta.suse.com/private/mkrapp/Autoyast-multipath/DUD/SP3/
Make sure to check md5sums before proceeding!
The driverupdate.gz will contain 2 DUDs:
- driverupdate1 is without a lvm.conf and should be used
- in case of lvm related problems, use driverupdate. This DUD contains a lvm.conf and could prevent the problems.
SLES 11 SP4: See "Aditional information" section below for further information.
Resolution
If a installation repository server already exists, just add the DUD directory structure to the root of the repository.
Example: the installation repository is on:
/Installsource/SLES11SP1-x86_64/
and the downloaded DUD is below /tmp, do the following:
# cd /tmp
# tar xf driverupdate.tar.bz2
# cd /Installsource/SLES11SP1-x86_64/
# cpio -id < /tmp/driverupdate1
This creates a directory "linux" in your Installation repository and will activate multipathing during the start of autoyast.
If there is no Installation repository server available, the DUD can also be provided via floppy or cdrom.
For details about this methods, please refer to:
http://ftp.suse.com/pub/people/hvogel/Update-Media-HOWTO/html/id_boot.html
Providing the DUD via network is also possible by adding the appropriate parameter to the boot prompt, e.g.:
dud=nfs://DUD-Server/driverupdate1
This would provide the DUD via nfs from a nfs server called DUD-Server.
Activated multipathing requires to access storage devices via/dev/mapper in your autoyast configuration file.
Acess attempts via /dev/sdX, will lead to a busy error and an installation abort.
Therefore the device tag in the partitioning section of your autoyast file must be adapted..
It should point to the /dev/mapper device that you want to use for installation.
For example, if SLES shall be installed on device /dev/sda, with the uniqe id: 3600508b40005429d0001200000640000, set up the following:
<partitioning config:type="list">
<drive>
<device>/dev/mapper/3600508b40005429d0001200000640000</device>
The/dev/mapper devices should only be used during the installation.
The Storage Admin Guide states that in the running system the multipath devices should be accessed via /dev/disk/by-id/.
In order to set this up via autoyast, use the following chroot script:
<!-- multipath configuration -->
<scripts>
<chroot-scripts xmlns:y2="http://www.suse.com/1.0/yast2ns" config:type="list">
<script>
<interpreter>shell</interpreter>
<source>
<![CDATA[
echo "defaults {
user_friendly_names yes
bindings_file /etc/multipath_bindings
}"> /etc/multipath.conf
sleep 1
cat /etc/fstab | sed 's/mapper\/.*_part/disk\/by-id\/scsi-mpatha-part/' > /etc/fstab.mod
mv /etc/fstab /etc/fstab.orig
mv /etc/fstab.mod /etc/fstab
sleep 1
mkinitrd -f multipath
]]>
</source>
<chrooted config:type="boolean">true</chrooted>
<feedback config:type="boolean">false</feedback>
<debug config:type="boolean">true</debug>
</script>
</chroot-scripts>
</scripts>
Cause
Additional Information
While SP4 was meant to come with Autoyast2 multipath support, unfortunately there's a bug preventing that.
To resolve that, get the SP4 DUD from ftp://ftp.suse.com/pub/l3/bsc-937942/ and choose the correct architecture. Currently the DUD is available for ppc and x86_64 only.
Prepare a server (any of http, nfs or ftp will do) and provide the DUD via network by adding the appropriate parameter to the boot prompt, e.g.:
"dud=nfs://DUD-Server/bsc937942-x86_64-autoyast2.dud insecure=1" (which would be the x86_64 version)
When installing on a network storage that is accessed via multiple paths, multipath must be enabled for the installation with the start_multipath parameter that needs to be placed within the following XML structure:
<general>
<storage>
<start_multipath config:type="boolean">true</start_multipath>
</storage>
</general>
Alternatively to the autoyast code above, the following parameter has to be passed to linuxrc: LIBSTORAGE_MULTIPATH_AUTOSTART=ON dud=nfs://DUD-Server/bsc937942-x86_64-autoyast2.dud insecure=1
NOTE: the dud requires the parameter " insecure=1" as shown in the examples above. Otherwise the installation will fail.
Disclaimer
This Support Knowledgebase provides a valuable tool for SUSE customers and parties interested in our products and solutions to acquire information, ideas and learn from one another. Materials are provided for informational, personal or non-commercial use within your organization and are presented "AS IS" WITHOUT WARRANTY OF ANY KIND.
- Document ID:7009981
- Creation Date: 11-Jan-2012
- Modified Date:28-Sep-2022
-
- SUSE Linux Enterprise Server
For questions or concerns with the SUSE Knowledgebase please contact: tidfeedback[at]suse.com