Set up failover on the host

Contributors netapp-driley netapp-jolieg NetAppZacharyWambold

To provide a redundant path to the storage array, you can configure the host to run failover.

What you’ll need

You must install the required packages on your system.

  • For Red Hat (RHEL) hosts, verify the packages are installed by running rpm -q device-mapper-multipath

  • For SLES hosts, verify the packages are installed by running rpm -q multipath-tools

Note Refer to the NetApp Interoperability Matrix Tool to ensure any required updates are installed, as multipathing might not work correctly with the GA versions of SLES or RHEL.
About this task

RHEL 7 and SLES 12 use Device Mapper Multipath (DMMP) for multipathing for NVMe over RoCE. RHEL 8, RHEL 9, and SLES 15 use a built-in Native NVMe Failover. Depending on which OS you are running, some additional configuration of multipath is required to get it running properly.

Enable Device Mapper Multipath (DMMP) for RHEL 7 or SLES 12

By default, DM-MP is disabled in RHEL and SLES. Complete the following steps to enable DM-MP components on the host.

Steps
  1. Add the NVMe E-Series device entry to the devices section of the /etc/multipath.conf file, as shown in the following example:

    devices {
            device {
                    vendor "NVME"
                    product "NetApp E-Series*"
                    path_grouping_policy group_by_prio
                    failback immediate
                    no_path_retry 30
            }
    }
  2. Configure multipathd to start at system boot.

    # systemctl enable multipathd
  3. Start multipathd if it is not currently running.

    # systemctl start multipathd
  4. Verify the status of multipathd to make sure it is active and running:

    # systemctl status multipathd

Set up RHEL 8 with Native NVMe Multipathing

Native NVMe Multipathing is disabled by default in RHEL 8 and must be enabled using the following procedure.

  1. Set up the modprobe rule to turn on Native NVMe Multipathing.

    # echo "options nvme_core multipath=y" >> /etc/modprobe.d/50-nvme_core.conf
  2. Remake initramfs with the new modprobe parameter.

    # dracut -f
  3. Reboot the server to bring it up with the Native NVMe Multipathing enabled.

    # reboot
  4. Verify that Native NVMe Multipathing is enabled after the host boots back up.

    # cat /sys/module/nvme_core/parameters/multipath
    1. If the command output is N, then Native NVMe Multipathing is still disabled.

    2. If the command output is Y, then Native NVMe Multipathing is enabled and any NVMe devices you discover will use it.

Note For RHEL 9 and SLES 15, Native NVMe Multipathing is enabled by default and no additional configuration is required.