Veritas/Symantec DMP
Storage System Configuration
If you use DMP, you must select Use third-party multipath software for the initiator.
The Switchover Mode and Path Type depend on the actual services, as described in Table 6-6.
DMP |
Storage Array |
OS Setting |
Third-Party Multipathing Software |
Switchover Mode |
Special Mode |
Path Type |
---|---|---|---|---|---|---|
DMP 7.1 or later |
Dual-controller |
Solaris |
Enabled |
Special mode |
Mode 1 |
Optimal |
Multi-controller |
Solaris |
Enabled |
Special mode |
Mode 1 |
Optimal |
|
DMP 6.0.x to DMP 7.0 |
Dual-controller |
Solaris |
Enabled |
ALUA not used |
- |
Optimal |
Multi-controller |
Solaris |
Enabled |
ALUA not used |
- |
Optimal |
- Use Huawei Storage Interoperability Navigator to query the volume management and cluster software supported by DMP.
- If a LUN has been mapped to the host, you must restart the host for the configuration to take effect after you modify the initiator parameters. If the host is running services, stop the services and export the disk group before restarting the host. If you configure the initiator for the first time, restart is not needed.
- Versions earlier than DMP 7.1 do not support multi-controller ALUA.
- If you do not use the recommended configurations, DMP may fail to identify paths or process paths properly.
- For the software supported by SF DMP 5.x, contact Huawei technical support engineers.
- DMP 7.1 and later versions do not support common ALUA. Special mode 1 is supported on OceanStor Dorado V3 V300R002C10SPH105 and later patch versions, OceanStor V5 V500R007C30SPH105 and later patch versions, OceanStor V5 V500R007C10SPH015 and later patch versions, OceanStor V3 V300R006C50SPH105 and later patch versions, OceanStor V3 V300R006C20SPH015 and later patch versions, OceanStor Dorado V3 V300R002C20, OceanStor V5 V500R007C50, and OceanStor V3 V300R006C60. For other earlier versions, set Switchover Mode to ALUA not used.
- When the storage system is connected to a host with DMP 7.x and you have selected Use third-party multipath software for the storage initiator and set the switchover mode to a special mode, the maximum number of online ports (FC, FCoE, or Ethernet) supported by a single storage system or HyperMetro storage systems is limited because the default RTPG buffer of Veritas VxVM (DMP) is 255. For details, consult Huawei engineers for evaluation. If the number exceeds the limit, problems such as path identification errors may occur.
- For a dual-controller storage system, you cannot add controllers online or create HyperMetro online under the following conditions: The storage system is connected to a host using DMP multipathing software; the initiator settings on the storage system are Use third-party multipath software and ALUA not used; and the A/A mode is disabled. Otherwise, host services may be interrupted. To check whether the A/A mode is enabled, run show tgt_switch storage_work_mode on OceanStor V3 or V5 storage systems, or show scsi_upgrade_config storage_work_mode on Dorado storage systems. The following is an example:
developer:/>show scsi_upgrade_config storage_work_mode Switch Type : A/A Work Mode AA Switch : Off
In the command output, Off indicates that the A/A mode has been disabled. For a dual-controller storage system, if you want to add controllers online, enable the A/A mode by running change tgt_switch storage_work_mode switch=on on OceanStor V3 or V5, or change scsi_upgrade_config storage_work_mode aa_switch=on on Dorado storage systems.
Host Configuration
Pre-installation Check
DMP cannot coexist with the operating system's native multipathing software MPxIO. Before installing DMP, run the stmsboot -L command to check whether MPxIO (STMS) is disabled.
bash-4.1# stmsboot -L stmsboot: MPXIO disabled
If MPxIO is not disabled, open the /kernel/drv/fp.conf configuration file and change mpxio-disable to yes. Then run the stmsboot -d command to disable STMS. When running stmsboot, choose reboot for the settings to take effect.
Installing ASL
DMP is generally integrated in the Veritas Storage Foundation/InfoScale software package and is used together with the Veritas Volume Manager (VxVM) and Veritas File System (VxFS).
In this document, installing Veritas InfoScale 7.4 in Solaris 11.2 for SPARC is used as an example. For details on how to install Veritas InfoScale 7.4, see the Veritas InfoScale Installation Guide.
After installing Veritas InfoScale, install Array Support Library (ASL), which provides array-specific support for DMP. ASL is a shared library that can be dynamically loaded. When discovering devices, ASL implements hardware-specific logic to discover device properties.
You are advised to install the latest version of ASL. You can obtain the ASL installation package for Huawei storage from https://sort.veritas.com/asl. ASL can be installed online or offline. Install ASL by following instructions in the Readme file on the official download page. The default path selection policy is MinimumQ.
- Veritas AVID does not support Huawei storage.
- After installing Veritas software, you need to modify fp_offline_ticker and fcp_offline_delay for fp and fcp drivers. The two parameters affect the I/O suspension time when a link fault occurs. You are advised to set both fp_offline_ticker and fcp_offline_delay to 10 based on the value ranges provided by Oracle. You can also set the two parameters based on service configurations. For details, see How Can I Set the fp and fcp Drivers' Time Parameters That Determine How Long a Host Will Wait Before Offlining Disks Upon a Link Failure?
- DMP provides the MinimumQ and Round-Robin path selection algorithms, which can be modified based on customer service configurations. You can run the vxdmpadm setattr ENCLR_NAME iopolicy=xxx command to modify the path selection algorithm. xxx indicates the path selection algorithm, which can be MinimumQ or Round-Robin.
Verification
- Run the vxddladm listsupport all | grep huawei command to verify the ASL installation. In the following example, the multipathing software has correctly identified XSG1.
-bash-4.1# vxddladm listsupport all | grep huawei libvxhuawei.so HUAWEI, HUASY S5100, S5300, S5500, S5600, S6800E, S8000, S8000-I, VIS6000, S5500T, S5600T, S5800T, S6800T, S2600T, V1500, V1800, S2100, S2200T, S2300, S2300E, S2600, S3900-M100, S3900-M200, S3900-M300, S5900-M100, S5900-M200, S6900-M100, Dorado2100, Dorado2100 G2, Dorado5100, HVS85T, HVS88T, XSG1 -bash-4.1#
- Run the cfgadm -al command in the OS to scan for LUNs and then run the vxdisk scandisks command in the DMP to scan for LUNs. Run the vxdisk list command to check the device name. A correct device name is in the huawei-xxx format. Then run the vxdisk list device name command and check whether the number of paths and path status are correct (consistent with the actual configuration). In the following example, there are four paths to a LUN, which are c3t201080D4A58EA53Dd1s2, c3t200080D4A58EA53Dd1s2, c4t201080D4A58EA53Dd1s2, and c4t200080D4A58EA53Dd1s2. All paths are enabled. The type of two optimal paths is active/optimized, and that of two non-optimal paths is active/non-optimized.
-bash-4.1# vxdisk list DEVICE TYPE DISK GROUP STATUS huawei-xsg10_0 auto:cdsdisk - - online thinrclm huawei-xsg10_1 auto:cdsdisk - - online thinrclm huawei-xsg10_2 auto:cdsdisk - - online thinrclm huawei-xsg10_3 auto:cdsdisk - - online thinrclm huawei-xsg10_4 auto - - error huawei-xsg10_5 auto:cdsdisk - - online thinrclm solaris252_disk_0 auto:ZFS - - ZFS solaris252_disk_1 auto:ZFS - - ZFS -bash-4.1# vxdisk list huawei-xsg10_0 Device: huawei-xsg10_0 devicetag: huawei-xsg10_0 type: auto hostid: disk: name= id=1555494376.8.solaris252 group: name= id= info: format=cdsdisk,privoffset=256,pubslice=2,privslice=2 flags: online ready private autoconfig autoimport thinrclm pubpaths: block=/dev/vx/dmp/huawei-xsg10_0s2 char=/dev/vx/rdmp/huawei-xsg10_0s2 guid: {a5057c56-60f5-11e9-ad7b-0021283f9d11} udid: HUAWEI%5FXSG1%5F210080d4a58ea53d%5F680D4A51008EA53D00142D3900000000 site: - version: 3.1 iosize: min=512 (bytes) max=2048 (blocks) public: slice=2 offset=65792 len=20870144 disk_offset=0 private: slice=2 offset=256 len=65536 disk_offset=0 update: time=1555494376 seqno=0.2 ssb: actual_seqno=0.0 headers: 0 240 configs: count=1 len=48144 logs: count=1 len=7296 Defined regions: config priv 000048-000239[000192]: copy=01 offset=000000 disabled config priv 000256-048207[047952]: copy=01 offset=000192 disabled log priv 048208-055503[007296]: copy=01 offset=000000 disabled lockrgn priv 055504-055647[000144]: part=00 offset=000000 Multipathing information: numpaths: 4 c3t201080D4A58EA53Dd1s2 state=enabled type=active/non-optimized c3t200080D4A58EA53Dd1s2 state=enabled type=active/optimized c4t201080D4A58EA53Dd1s2 state=enabled type=active/non-optimized c4t200080D4A58EA53Dd1s2 state=enabled type=active/optimized -bash-4.1#