Best practice using PowerPath with Storage Foundation/Volume Manager

Article: 100000893
Modified: 2022-02-16
Ratings: 0 0
products: InfoScale & Storage Foundation

Problem

Best practice using PowerPath with Storage Foundation/Volume Manager

Solution

***Please note that this is only applicable to the Solaris operating system***
 
When using PowerPath on a 5.x system, DMP will switch into TPD mode for the devices controlled by PowerPath.
To maximize performance and stability, use the following procedures to tune your SF installation in combination with PowerPath.
Some of these are going to change with 5.1 SP1.

dmp_probe_idle_lun:

Per default, dmp_probe_idle_lun is turned on. When running a PowerPath environment, you will see the following messages logged to /etc/vx/ dmpevents.log prior to 5.1 SP1

Marked as idle Path emcpower*s2 belonging to Dmpnode c*s2

It will generate messages for each PowerPath device in /etc/vx/ dmpevents.log, and this on every scan cycle.
Depending on the number of devices present, this could take some time and cause a minor delay in system performance, and could cause memory problems with the configuration daemon.
As a best practice we would recommend to disable dmp_probe_idle_lun when using PowerPath

To check the setting and change it:

# vxdmpadm gettune dmp_probe_idle_lun
# vxdmpadm settune dmp_probe_idle_lun=off

This will be written to  /etc/vx/ dmppolicy.info and stays persistent after reboots.
The behavior of this DMP tunable will change with 5.1 SP1, therefore doesn't need to be changed.


vxesd

The event source daemon ( vxesd) is a process waiting for notifications for device related events such as SAN Fabric or DMP events, and will take appropriate actions.
In a PowerPath environment, vxesd is not of much use, as PowerPath already reacts on most events.And in some cases it could lead to ghost or duplicate
disk entries when restarting the configuration daemon. As a best practise we would recommend to disable vxesd when using PowerPath.
For that we also need to decrease  dmp_restore_interval, and disable dmp_monitor_fabric.
As dmp_monitor_fabric is an option of vxesd, as soon as you modify this option, vxesd will be restarted.*
 
Please see the last steps on how to disable vxesd from starting during boot time.
 
* Note: Default setting is dmp_monitor_fabric=on. With the below steps we disable this option for vxesd, in case you start vxesd manually.
Please make sure that stopping the event source daemon is the last step after changing all the other tunables with vxdmpadm.

To do this:

# vxdmpadm settune dmp_monitor_fabric=off
# vxdmpadm stop restore
# vxdmpadm settune dmp_restore_interval=60
# vxdmpadm start restore interval=60
# vxddladm stop eventsource

The dmp_monitor_fabric=off will be written to /etc/vx/ddlpolicy.info, dmp_restore_interval=60 goes into /etc/vx/dmppolicy.info like dmp_probe_idle_lun=off, and is persistent after reboots.
But the event source daemon ( vxesd) will be restarted by the VxVM startup scripts during a reboot.

To stop it from starting, we need to manually edit the startup scripts.

Edit the vxvm-startup file, and comment out the following line:

/usr/sbin/vxddladm start eventsource

Depending on the OS version, the file will be in different locations:

Solaris 8,9: /etc/init.d/vxvm-startup2
Solaris 10: /lib/svc/method/vxvm-startup2
 

On Solaris 10 you need to comment out the following 'if' statement, otherwise it is possible that your system will hang during a reboot, or go into maintenance mode:
 

 

if [ -x /usr/sbin/vxddladm ]
then
        /usr/sbin/vxddladm start eventsource
fi
 
The above will prevent the event source daemon from starting during boot time.
 
 

 

Was this content helpful?