How to modify the polling interval used by Dynamic MultiPathing (DMP) when probing idle LUNs (i.e. when dmp_probe_idle_lun is set to 1)?

book

Article ID: 100039279

calendar_today

Updated On:

Description

Description

DMP maintains a kernel thread that examines the condition of paths to LUNs at a specified interval. This kernel thread is more commonly known as the DMP restore daemon. The type of analysis performed by the restore daemon depends on the path checking policy that it is configured to use.

If DMP statistics gathering is enabled and the VxDMP tunable dmp_probe_idle_lun is to set to 1 (on) the restore daemon will, in addition to any other tasks, perform probing of idle LUNs (LUNS configured to be part of a Volume Manager disk group but which have serviced no I/O requests since the restore daemon last ran).

As probing of idle LUNs is dependent on DMP statistics gathering, disabling statistics gathering also disables idle LUN probing. The default value for statistics gathering is 1 i.e. it is turned on meaning that dmp_probe_idle_lun is also turned on by default.

However, since the dmp_probe_idle_lun depends upon the VxDMP recovery options, the interval for the dmp_probe_idle_lun is the same as that of the interval for recovery options.

To display the status of the DMP path restoration thread we can use the following command:

# vxdmpadm stat restored
The number of daemons running : 1
The interval of daemon: 300
The policy of daemon: check_disabled


Since 5.0 MP3 onwards, the tunables can be viewed by the "vxdmpadm gettune" command and can be changed on the fly by using the "vxdmpadm settune" command.

# vxdmpadm gettune
            Tunable               Current Value  Default Value
------------------------------    -------------  -------------
dmp_failed_io_threshold               57600            57600
dmp_retry_count                           5               5
dmp_pathswitch_blks_shift                 9                9
dmp_queue_depth                          32               32
dmp_cache_open                           on               on
dmp_daemon_count                         10               10
dmp_scsi_timeout                         30               30
dmp_delayq_interval                      15               15
dmp_path_age                            300              300
dmp_stat_interval                         1                1
dmp_health_time                          60               60
dmp_probe_idle_lun                       on               on
dmp_log_level                             1                1
dmp_fast_recovery                        on               on
dmp_enable_restore                       on               on
dmp_restore_policy             check_disabled   check_disabled
dmp_restore_interval                     300              300
dmp_restore_cycles                       10               10
dmp_monitor_fabric                       on               on


In all versions of Storage Foundation the default interval at which the DMP restore daemons runs (and as such the default interval at which probing idle LUNs takes place) is 300 seconds. Changing this internal depends on the version of Storage Foundation installed on a machine.

In Storage Foundation 5.0MP3 or earlier the DMP restore daemon should be stopped then restarted with a new interval. For example to modify the interval to 400 seconds but to continue using the check_disabled restore policy the following commands would be used:, and then restart it with new attributes.

# vxdmpadm stop restore
# vxdmpadm start restore interval=400 policy=check_disabled


From Storage Foundation 5.0 MP3 onwards the "vxdmpadm settune" command can be used to modify tunable settings on the fly. For example to change the DMP restore daemon interval to 400 seconds the following command could be used:

# vxdmpadm settune dmp_restore_interval=400

To verify changes the vxdmpadm command can be used as follows:

# vxdmpadm gettune dmp_restore_interval
            Tunable               Current Value  Default Value
------------------------------    -------------  -------------
dmp_restore_interval                    400              300

# vxdmpadm stat restored
The number of daemons running : 1
The interval of daemon: 400
The policy of daemon: check_disabled

Note that in Storage Foundation 5.0MP3 and later the interval will not be changed until the next time the DMP restore daemon kernel thread is woken up (i.e. a maximum of 300 seconds after the vxdmpadm settune command is run if using default values).

Warning: Decreasing the polling interval below the system default can adversely affect system performance.

Issue/Introduction

How to modify the polling interval used by Dynamic MultiPathing (DMP) when probing idle LUNs (i.e. when dmp_probe_idle_lun is set to 1)?