Using Veritas Storage Foundation 6 for Linux with NetApp ONTAP
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.
NetApp strongly recommends installing the Linux Unified Host Utilities, but it is 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.
If you have a version of Linux Unified Host Utilities currently installed, you should upgrade or remove it, and then use the following steps to install the latest version.
Download the 64-bit Linux Unified Host Utilities software package from the NetApp Support Site to your host.
Install the software package:
rpm -ivh netapp_linux_unified_host_utilities-7-1.x86_64
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.
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
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.
Map the SAN boot LUN to the host.
Verify that multiple paths are available.
Multiple paths become available after the host OS is up and running on the paths.
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.
Reboot the host to verify that the boot is successful.
You must verify that your configuration meets the system requirements. For more information, see the NetApp Interoperability Matrix Tool and the Veritas HCL Matrix.
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.
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
For non-ASA configurations, 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.
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 - -
|Do not use an excessive number of paths to a single LUN. No more than four paths should be required. More than eight 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.
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
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_timeoutparameter value to 120.
replacement_timeoutparameter 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_timeoutto 120 in the iSCSI configuration file is recommended.
# 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'"
|For all other settings specific to Veritas, refer to the standard Veritas Infoscale product documentation.|
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.