Unless the ZFS zpool is explicitly imported using the full /dev/vx/dmp path with the -d argument, the OS native device path could be used.
This can result in Veritas DMP being unable to multi-path the ZFS device correctly.
Imagine losing access to the OS device path used to import the ZFS pool. As the DMP node was not used to import the ZFS zpool, the zpool is not managed by DMP and may not have any multi-pathing redundancy. This can result in an unplanned outage.
When ZFS devices are managed by the Veritas dmp_native_support DMP tunable, all ZFS zpools should be imported using the full blockdevice with zpool import -d option.
Example:
The ZFS zpool named "testpool" can be imported using the -d argument. By specifying the Veritas Disk Access (DA) name along with the slice, the ZFS import operation should be much faster and ensure DMP is managing multi-pathing functionality for the zpool.
# zpool import -d /dev/vx/dmp/emc0_0142s0 TESTPOOL
The imported ZFS pool details can be displayed using the "vxdmpadm native ls" command:
# vxdmpadm native ls
DMPNODENAME POOL NAME -
=============================================
disk_0 -
disk_1 rpool
emc0_0142 TESTPOOL
emc0_0143 -
3pardata0_16 -
3pardata0_17
NOTE: When the zpool is exported, the DMP symbolic link path to the DMP device will be used during the next import operation, unless an alternate path is explicitly specified with the -d argument.
The product is designed this way to cater for situations where no import arguments are specified during the zpool import operation. Thus ensuring DMP is used for future imports whilst maintaining multi-pathing support for ZFS zpools.
The above sample Solaris environment consists of two Solaris Sparc (SOL) servers with several ZFS devices visible to both servers.
Following the Veritas InfoScale product installation, it is possible to configure DMP to manage all ZFS pools by enabling the dmp_native_support DMP tunable. When this tunable is turned on, DMP enables support for ZFS on any device that does not have a VxVM label and is not in control of any third party multi-pathing (TPD) software.
To verify the value of the dmp_native_support tunable, use the following command:
# vxdmpadm gettune dmp_native_support
Tunable Current Value Default Value
Enabling DMP native support
The dmp_native_support tunable can be enabled using the following command:
# vxdmpadm settune dmp_native_support=on
Issue:
Unless the ZFS zpool is explicitly imported using the /dev/vx/dmp path with the -d argument, the OS native device path can be used by defauit. This can result in Veritas DMP being unable to multi-path the ZFS device correctly, resulting in an unplanned outage where the imported path used to import the ZFS pool fails.
Sample Syntax:
# zpool import -d /dev/vx/dmp/emc0_0142s0 TESTPOOL
-------------------------- ------------- ---------------
dmp_native_support on off