SUSE Support

Here When You Need Us

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 1
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

A multipath enabled system has to be installed via autoyast.

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

ATTENTION: The following workflow is for for SLES11 SP1 - SP3 only ! For SP4 see "Additional Information" section below.

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

SLES 11 SP4

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

< Back to Support Search

For questions or concerns with the SUSE Knowledgebase please contact: tidfeedback[at]suse.com

SUSE Support Forums

Get your questions answered by experienced Sys Ops or interact with other SUSE community experts.

Support Resources

Learn how to get the most from the technical support you receive with your SUSE Subscription, Premium Support, Academic Program, or Partner Program.

Open an Incident

Open an incident with SUSE Technical Support, manage your subscriptions, download patches, or manage user access.