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-11.
DMP |
HyperMetro Working Mode |
Storage Array |
OS Setting |
Third-Party Multipathing Software |
Switchover Mode |
Special Mode |
Path Type |
---|---|---|---|---|---|---|---|
DMP 7.1 or later |
Load balancing |
Local |
Solaris |
Enabled |
Special mode |
Mode 1 |
Optimal |
Remote |
Solaris |
Enabled |
Special mode |
Mode 1 |
Optimal |
||
Local preferred |
Local |
Solaris |
Enabled |
Special mode |
Mode 2 |
Optimal |
|
Remote |
Solaris |
Enabled |
Special mode |
Mode 2 |
Non-optimal |
||
DMP 6.0.x to DMP 7.0 |
Load balancing |
Local |
Solaris |
Enabled |
ALUA not used |
- |
Optimal |
Remote |
Solaris |
Enabled |
ALUA not used |
- |
Optimal |
- HyperMetro using DMP is supported on OceanStor Dorado V3 V300R002C20, OceanStor V500R007C50, OceanStor V300R006C60, and later versions. For details, see Huawei Storage Interoperability Navigator.
- 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 the local preferred mode.
- 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.
- The load balancing mode is recommended when the HyperMetro storage systems are deployed in different equipment rooms on the same campus.
- 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, controllers cannot be added online, HyperMetro relationships cannot be created online, and HyperMetro LUNs and non-HyperMetro LUNs cannot coexist 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 or create HyperMetro relationships 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?
- ZFS file systems are not supported.
- 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
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 vxddladm list devices command to check whether the disk corresponding to each sub-path is claimed by Veritas. In the following example, six HyperMetro LUNs are mapped and have 56 sub-paths in total. libvxhuawei.so has identified 56 devices.
-bash-4.1# vxddladm list devices DEVICE TARGET-ID STATE DDL-STATUS (ASL) =============================================================== c2t1d0s2 - Online CLAIMED (Disk) c2t2d0 - Online CLAIMED (Disk) c3t243B40EEDDB2DAE7d1s2 c3_p6_t0 Online CLAIMED (libvxhuawei.so) c3t243B40EEDDB2DAE7d2s2 c3_p6_t0 Online CLAIMED (libvxhuawei.so) c3t243B40EEDDB2DAE7d3s2 c3_p6_t0 Online CLAIMED (libvxhuawei.so) c3t243B40EEDDB2DAE7d4s2 c3_p6_t0 Online CLAIMED (libvxhuawei.so) c3t242340EEDDB2DAE7d1s2 c3_p5_t0 Online CLAIMED (libvxhuawei.so) c3t242340EEDDB2DAE7d2s2 c3_p5_t0 Online CLAIMED (libvxhuawei.so) c3t242340EEDDB2DAE7d3s2 c3_p5_t0 Online CLAIMED (libvxhuawei.so) c3t242340EEDDB2DAE7d4s2 c3_p5_t0 Online CLAIMED (libvxhuawei.so) c3t221B40EEDDB2DAE7d1s2 c3_p4_t0 Online CLAIMED (libvxhuawei.so) c3t221B40EEDDB2DAE7d2s2 c3_p4_t0 Online CLAIMED (libvxhuawei.so) c3t221B40EEDDB2DAE7d3s2 c3_p4_t0 Online CLAIMED (libvxhuawei.so) c3t221B40EEDDB2DAE7d4s2 c3_p4_t0 Online CLAIMED (libvxhuawei.so) c3t240340EEDDB2DAE7d1s2 c3_p3_t0 Online CLAIMED (libvxhuawei.so) c3t240340EEDDB2DAE7d2s2 c3_p3_t0 Online CLAIMED (libvxhuawei.so) c3t240340EEDDB2DAE7d3s2 c3_p3_t0 Online CLAIMED (libvxhuawei.so) c3t240340EEDDB2DAE7d4s2 c3_p3_t0 Online CLAIMED (libvxhuawei.so) c3t201080D4A58EA53Dd1s2 c3_p2_t0 Online CLAIMED (libvxhuawei.so) c3t201080D4A58EA53Dd2s2 c3_p2_t0 Online CLAIMED (libvxhuawei.so) c3t201080D4A58EA53Dd3s2 c3_p2_t0 Online CLAIMED (libvxhuawei.so) c3t201080D4A58EA53Dd4s2 c3_p2_t0 Online CLAIMED (libvxhuawei.so) c3t201080D4A58EA53Dd5s2 c3_p2_t0 Online CLAIMED (libvxhuawei.so) c3t201080D4A58EA53Dd6s2 c3_p2_t0 Online CLAIMED (libvxhuawei.so) c3t200080D4A58EA53Dd1s2 c3_p1_t0 Online CLAIMED (libvxhuawei.so) c3t200080D4A58EA53Dd2s2 c3_p1_t0 Online CLAIMED (libvxhuawei.so) c3t200080D4A58EA53Dd3s2 c3_p1_t0 Online CLAIMED (libvxhuawei.so) c3t200080D4A58EA53Dd4s2 c3_p1_t0 Online CLAIMED (libvxhuawei.so) c3t200080D4A58EA53Dd5s2 c3_p1_t0 Online CLAIMED (libvxhuawei.so) c3t200080D4A58EA53Dd6s2 c3_p1_t0 Online CLAIMED (libvxhuawei.so) c4t243B40EEDDB2DAE7d1s2 c4_p6_t0 Online CLAIMED (libvxhuawei.so) c4t243B40EEDDB2DAE7d2s2 c4_p6_t0 Online CLAIMED (libvxhuawei.so) c4t243B40EEDDB2DAE7d3s2 c4_p6_t0 Online CLAIMED (libvxhuawei.so) c4t243B40EEDDB2DAE7d4s2 c4_p6_t0 Online CLAIMED (libvxhuawei.so) c4t242340EEDDB2DAE7d1s2 c4_p5_t0 Online CLAIMED (libvxhuawei.so) c4t242340EEDDB2DAE7d2s2 c4_p5_t0 Online CLAIMED (libvxhuawei.so) c4t242340EEDDB2DAE7d3s2 c4_p5_t0 Online CLAIMED (libvxhuawei.so) c4t242340EEDDB2DAE7d4s2 c4_p5_t0 Online CLAIMED (libvxhuawei.so) c4t221B40EEDDB2DAE7d1s2 c4_p4_t0 Online CLAIMED (libvxhuawei.so) c4t221B40EEDDB2DAE7d2s2 c4_p4_t0 Online CLAIMED (libvxhuawei.so) c4t221B40EEDDB2DAE7d3s2 c4_p4_t0 Online CLAIMED (libvxhuawei.so) c4t221B40EEDDB2DAE7d4s2 c4_p4_t0 Online CLAIMED (libvxhuawei.so) c4t240340EEDDB2DAE7d1s2 c4_p3_t0 Online CLAIMED (libvxhuawei.so) c4t240340EEDDB2DAE7d2s2 c4_p3_t0 Online CLAIMED (libvxhuawei.so) c4t240340EEDDB2DAE7d3s2 c4_p3_t0 Online CLAIMED (libvxhuawei.so) c4t240340EEDDB2DAE7d4s2 c4_p3_t0 Online CLAIMED (libvxhuawei.so) c4t201080D4A58EA53Dd1s2 c4_p2_t0 Online CLAIMED (libvxhuawei.so) c4t201080D4A58EA53Dd2s2 c4_p2_t0 Online CLAIMED (libvxhuawei.so) c4t201080D4A58EA53Dd3s2 c4_p2_t0 Online CLAIMED (libvxhuawei.so) c4t201080D4A58EA53Dd4s2 c4_p2_t0 Online CLAIMED (libvxhuawei.so) c4t201080D4A58EA53Dd5s2 c4_p2_t0 Online CLAIMED (libvxhuawei.so) c4t201080D4A58EA53Dd6s2 c4_p2_t0 Online CLAIMED (libvxhuawei.so) c4t200080D4A58EA53Dd1s2 c4_p1_t0 Online CLAIMED (libvxhuawei.so) c4t200080D4A58EA53Dd2s2 c4_p1_t0 Online CLAIMED (libvxhuawei.so) c4t200080D4A58EA53Dd3s2 c4_p1_t0 Online CLAIMED (libvxhuawei.so) c4t200080D4A58EA53Dd4s2 c4_p1_t0 Online CLAIMED (libvxhuawei.so) c4t200080D4A58EA53Dd5s2 c4_p1_t0 Online CLAIMED (libvxhuawei.so) c4t200080D4A58EA53Dd6s2 c4_p1_t0 Online CLAIMED (libvxhuawei.so) -bash-4.1#
- Run the vxdisk list command to check whether HyperMetro LUNs on the host have been aggregated. The aggregated device can be identified as huawei-xxx. In the following example, DMP identifies six aggregated LUNs as huawei-xsg10_#.
-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:cdsdisk - - online thinrclm huawei-xsg10_5 auto:cdsdisk - - online thinrclm solaris252_disk_0 auto:ZFS - - ZFS solaris252_disk_1 auto:ZFS - - ZFS
- Run the vxdisk list device command and check whether the number of paths and path status are correct (consistent with the actual configuration). In ALUA mode, you must verify that the status and number of optimal and non-optimal paths are correct. In the following example, there are 12 paths to an aggregated LUN, and all paths are enabled. Because ALUA is used in this example, the type of four optimal paths is active/optimized, and that of 48 non-optimal paths is active/non-optimized.
-bash-4.1# vxdisk list huawei-xsg10_3 Device: huawei-xsg10_3 devicetag: huawei-xsg10_3 type: auto hostid: disk: name= id=1555529715.13.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_3s2 char=/dev/vx/rdmp/huawei-xsg10_3s2 guid: {ecc65d38-6147-11e9-ad7b-0021283f9d11} udid: HUAWEI%5FXSG1%5F210080d4a58ea53d%5F680D4A51008EA53D0072F39E00000003 site: - version: 3.1 iosize: min=512 (bytes) max=2048 (blocks) public: slice=2 offset=65792 len=4120320 disk_offset=0 private: slice=2 offset=256 len=65536 disk_offset=0 update: time=1555529715 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: 12 c3t200080D4A58EA53Dd4s2 state=enabled type=active/non-optimized c3t201080D4A58EA53Dd4s2 state=enabled type=active/optimized c3t221B40EEDDB2DAE7d2s2 state=enabled type=active/optimized c3t240340EEDDB2DAE7d2s2 state=enabled type=active/non-optimized c3t242340EEDDB2DAE7d2s2 state=enabled type=active/non-optimized c3t243B40EEDDB2DAE7d2s2 state=enabled type=active/non-optimized c4t242340EEDDB2DAE7d2s2 state=enabled type=active/non-optimized c4t201080D4A58EA53Dd4s2 state=enabled type=active/optimized c4t240340EEDDB2DAE7d2s2 state=enabled type=active/non-optimized c4t243B40EEDDB2DAE7d2s2 state=enabled type=active/non-optimized c4t200080D4A58EA53Dd4s2 state=enabled type=active/non-optimized c4t221B40EEDDB2DAE7d2s2 state=enabled type=active/optimized -bash-4.1#
- Run the vxdmpadm listenclosure all command. The command output shows that ENCLR_NAME of the HyperMetro storage systems is correctly aggregated and ARRAY_TYPE is correctly identified. In the following example, the switchover mode is Special mode, ARRAY_TYPE is ALUA, and the HyperMetro storage systems are correctly aggregated into huawei-xsg10.
-bash-4.1# vxdmpadm listenclosure all ENCLR_NAME ENCLR_TYPE ENCLR_SNO STATUS ARRAY_TYPE LUN_COUNT FIRMWARE =================================================================================================== disk Disk DISKS CONNECTED Disk 2 0868 huawei-xsg10 HUAWEI-XSG1 210080d4a58ea53d CONNECTED ALUA 6 4301 -bash-4.1#