Using Veritas Storage Foundation 6 for Linux with NetApp ONTAP

Contributors netapp-ranuk Download PDF of this page

Introduction

This document provides guidance on ONTAP SAN host configuration settings for the Veritas Storage Foundation 6 series release for Red Hat Enterprise Linux & Oracle Linux (RHCK based) platforms with FC, FCoE and iSCSI protocols.

Installing the Linux Unified Host Utilities

The NetApp Linux Unified Host Utilities software package is available on the NetApp Support Site in a 64-bit .rpm file.

Installing the Linux Unified Host Utilities is strongly recommended, but not mandatory. The utilities do not change any settings on your Linux host. The utilities improve management and assist NetApp customer support in gathering information about your configuration.

Before you begin

If you have a version of Linux Unified Host Utilities currently installed you should upgrade it or, you should remove it and use the following steps to install the latest version.

Steps
  1. Download the 64-bit Linux Unified Host Utilities software package from the NetApp Support Site to your host.

  2. Use the following command to install the software package:

    rpm -ivh netapp_linux_unified_host_utilities-7-1.x86_64

SAN Toolkit

The toolkit is installed automatically when you install the NetApp Host Utilities package. This kit provides the sanlun utility, which helps you manage LUNs and HBAs. The sanlun command returns information about the LUNs mapped to your host, multipathing, and information necessary to create initiator groups.

Example

In the following illustration, the sanlun show command returns LUN information.

# sanlun show -p -v SFRAC:/vol/fen1/lun1

              ONTAP Path: SFRAC:/vol/fen1/lun1
                     LUN: 0
                LUN Size: 10g
                 Product: cDOT
                DMP NODE: sfrac0_47
      Multipath Provider: Veritas
----------  ------  ---------  ------  -------------------------------------
Veritas     host    vserver    host:
path        path    path     /dev/   chan:     vserver           major:
state       state   type     node    id:lun    LIF                   minor
----------  ------  ---------  ------  -------------------------------------
enabled     up      active/non-optimized sdea   14:0:1:0   lif_10    128:32
enabled (a) up      active/optimized     sdcj   14:0:0:0   lif_2      69:112
enabled (a) up      active/optimized     sdb    13:0:0:0   lif_1       8:16
enabled     up      active/non-optimized sdas   13:0:1:0   lif_9      66:192

SAN Booting

Before you begin

If you decide to use SAN booting, it must be supported by your configuration. You can use the NetApp Interoperability Matrix Tool to verify that your OS, HBA, HBA firmware and the HBA boot BIOS, and ONTAP version are supported.

Refer to Veritas Support Portal (Product Matrix, Platform Lookup, HCL Matrix) to verify SAN Boot configuration supportability and known caveats.

Steps
  1. Map the SAN boot LUN to the host.

  2. Verify multiple paths are available.

    Remember, multiple paths will only be available after the host OS is up and running on the paths.

  3. Enable SAN booting in the server BIOS for the ports to which the SAN boot LUN is mapped.

    For information on how to enable the HBA BIOS, see your vendor-specific documentation.

  4. Reboot the host to verify the boot is successful.

Multipathing

You must verify that your configuration meets the system requirements. For more information, see the NetApp Interoperability Matrix Tool and the Veritas HCL Matrix.

Example

In this example, the vxdmpadm command is used to verify that the VxDMP Multipath has the ONTAP target array attached.

# vxdmpadm listenclosure
ENCLR_NAME   ENCLR_TYPE  ENCLR_SNO     STATUS      ARRAY_TYPE    LUN_COUNT    FIRMWARE
=====================================================================================
sfrac0       SFRAC       804Xw$PqE52h  CONNECTED   ALUA          43           9800
# vxdmpadm getdmpnode
NAME       STATE    ENCLR-TYPE  PATHS  ENBL  DSBL ENCLR-NAME
===================================================================
sfrac0_47  ENABLED  SFRAC       4      4     0    sfrac0

With Veritas Dynamic Multipathing (VxDMP), you must perform configuration tasks to claim NetApp LUNs as Veritas Multipath Devices. You must have the Array Support Library (ASL) and the Array Policy Module (APM) packages installed that Veritas provides for NetApp storage systems. While the Veritas Software Installation loads the default ASL APM packages along with the product, it is recommended to use the latest supported packages listed on Veritas support portal.

Example

The following example displays the Veritas Support Library (ASL) and the Array Policy Module (APM) configuration.

# vxdmpadm list dmpnode dmpnodename=sfrac0_47 | grep asl
asl        = libvxnetapp.so
# vxddladm listversion |grep libvxnetapp.so
libvxnetapp.so              vm-7.4-rev-1    6.1

# rpm -qa |grep VRTSaslapm
VRTSaslapm-x.x.x.0000-RHEL8.X86_64
vxddladm listsupport libname=libvxnetapp.so
ATTR_NAME   ATTR_VALUE
=========================================
LIBNAME     libvxnetapp.so
VID         NETAPP
PID         All
ARRAY_TYPE  ALUA, A/A

Non-ASA Configuration

For non-ASA configuration there should be two groups of paths with different priorities. The paths with the higher priorities are Active/Optimized, meaning they are serviced by the controller where the aggregate is located. The paths with the lower priorities are active but are non-optimized because they are served from a different controller. The non-optimized paths are only used when no optimized paths are available.

Example

The following example displays the correct output for an ONTAP LUN with two Active/Optimized paths and two Active/Non-Optimized paths:

# vxdmpadm getsubpaths dmpnodename-sfrac0_47
NAME  STATE[A]   PATH-TYPE[M]   CTLR-NAME   ENCLR-TYPE  ENCLR-NAME  ATTRS  PRIORITY
===================================================================================
sdas  ENABLED     Active/Non-Optimized c13   SFRAC       sfrac0     -      -
sdb   ENABLED(A)  Active/Optimized     c14   SFRAC       sfrac0     -      -
sdcj  ENABLED(A)  Active/Optimized     c14   SFRAC       sfrac0     -      -
sdea  ENABLED     Active/Non-Optimized c14   SFRAC       sfrac0     -      -
Note Do not use an excessive number of paths to a single LUN. No more than 4 paths should be required. More than 8 paths might cause path issues during storage failures.

Settings for Veritas Multipath

The following Veritas VxDMP tunables are recommended by NetApp for optimum system configuration in storage failover operations.

Parameter Setting

dmp_lun_retry_timeout

60

dmp_path_age

120

dmp_restore_interval

60

DMP tunables are set online by using the vxdmpadm command as follows:

# vxdmpadm settune dmp_tunable=value

The values of these tunable can be verified dynamically by using #vxdmpadm gettune.

Example

The following example shows the effective VxDMP tunables on the SAN host.

# vxdmpadm gettune

Tunable                    Current Value    Default Value
dmp_cache_open                      on                on
dmp_daemon_count                    10                10
dmp_delayq_interval                 15                15
dmp_display_alua_states             on                on
dmp_fast_recovery                   on                on
dmp_health_time                     60                60
dmp_iostats_state              enabled           enabled
dmp_log_level                        1                 1
dmp_low_impact_probe                on                on
dmp_lun_retry_timeout               60                30
dmp_path_age                       120               300
dmp_pathswitch_blks_shift            9                 9
dmp_probe_idle_lun                  on                on
dmp_probe_threshold                  5                 5
dmp_restore_cycles                  10                10
dmp_restore_interval                60               300
dmp_restore_policy         check_disabled   check_disabled
dmp_restore_state              enabled           enabled
dmp_retry_count                      5                 5
dmp_scsi_timeout                    20                20
dmp_sfg_threshold                    1                 1
dmp_stat_interval                    1                 1
dmp_monitor_ownership               on                on
dmp_monitor_fabric                  on                on
dmp_native_support                 off               off

Settings by protocol

  • For FC/FCoE only: Use the default timeout values.

  • For iSCSI only: Set the replacement_timeout parameter value to 120.

    The iSCSI replacement_timeout parameter controls how long the iSCSI layer should wait for a timed-out path or session to reestablish itself before failing any commands on it. Setting the value of replacement_timeout to 120 in the iSCSI configuration file is recommended.

Example
# grep replacement_timeout /etc/iscsi/iscsid.conf
node.session.timeo.replacement_timeout = 120

Settings by OS platforms

For Red Hat Enterprise Linux 7 and 8 series, you must configure udev rport values to support the Veritas Infoscale environment in storage failover scenarios. Create the file /etc/udev/rules.d/40-rport.rules with the following file content:

# cat /etc/udev/rules.d/40-rport.rules
KERNEL=="rport-*", SUBSYSTEM=="fc_remote_ports", ACTION=="add", RUN+=/bin/sh -c 'echo 20 > /sys/class/fc_remote_ports/%k/fast_io_fail_tmo;echo 864000 >/sys/class/fc_remote_ports/%k/dev_loss_tmo'"
Note For all other settings specific to Veritas, refer to the standard Veritas Infoscale product documentation.

Multipath Coexistence

If you have a heterogenous multipath environment including Veritas Infoscale, Linux Native Device Mapper, and LVM volume manager, please refer to the Veritas Product Administration guide for configuration settings.

Known Problems and Limitations

There are no known problems and limitations.