User Tools

Site Tools


aix:aix_mpio_sddpcm

MPIO vs SDDPCM multipathing for disk

The recommended multi-path driver to use on IBM AIX and VIOS when attached to SVC and Storwize storage devices running microcode levels V7.6.1 and later is changing from the SDDPCM to the default AIX PCM.

We recommend that new AIX deployments use the default AIXPCM. For existing deployments clients can chose to migrate to the AIXPCM or remain on SDDPCM.

This includes VIO servers providing storage resources to IBMi lpars. SDDPCM is not supported on Power9 servers.

Prerequisite OS Levels

AIX 7.1 TL3
AIX 7.2 any TL
VIOS 2.2.4.0

New commands:

lsmpio : Display information about the MultiPath I/O (MPIO) storage devices.
lsmpio [ -l device_name ]

lsmpio -S [ -l device_name ] [ -d ]

lsmpio -z [ -l device_name ]

lsmpio -q [ -l device_name ]

lsmpio -a [ -r ] [ -e ] [ -z ]

lsmpio -h
devrsrv : Queries and breaks the single-path and persistent reservations on a device.
devrsrv -c query [-e] | release | prin -s sa | (prout -s sa -r rkey -k sa_key -t prtype) -l devicename

devrsrv -f -l devicename

devrsrv -d

Note1: Removing SDDPCM will set the queue to the default value of 20. Any modification made to the queue depth prior to removal will need to be reapplied.

Note2: The default path selection algorithm for AIXPCM is “fail_over”. The AIX PCM supports the “shortest_queue” algorithm which is similar to SDD PCM's “load_balance” algorithm. The chdev command may be used to set the algorithm, though it may also be necessary to set the reserve policy when changing the algorithm. For example, to set hdisk5 to use the “shortest_queue” algorithm, execute this command: chdev -l hdisk5 -a algorithm=shortest_queue -a reserve_policy=no_reserve

Note3: Multipath management commands differ between AIXPCM and SDDPCM. If the SDDPCM is removed from your system any scripts that have been generated that utilize these commands will need to be modified to use the corresponding AIXPCM commands.

Use AIX MPIO instead of SDDPCM

The official way to migrate from SDDPCM to AIXPCM is documented here:

a) Confirm the system is using SDDPCM for MPIO.

# manage_disk_drivers -l | grep -i svc
IBMSVC              NO_OVERRIDE           NO_OVERRIDE,AIX_AAPCM,AIX_non_MPIO

SDDPCM command

# pcmpath query device
Total Dual Active and Active/Asymmetric Devices : 2
DEV#:   3  DEVICE NAME: hdisk2  TYPE: 2145  ALGORITHM:  Load Balance
SERIAL: 60050768017F00362000000000000346  VENDOR: IBM  SIZE: 30.00 GB
==========================================================================
Path#      Adapter/Path Name          State     Mode     Select     Errors
    0*          fscsi0/path0           OPEN   NORMAL         50          0
    1           fscsi0/path1           OPEN   NORMAL       9343          0
    2*          fscsi1/path2           OPEN   NORMAL         51          0
    3           fscsi1/path3           OPEN   NORMAL       9236          0

AIX MPIO command

# lsmpio -are
# lsdev -Cc disk
hdisk2 Available 42-T1-01 MPIO FC 2145
hdisk3 Available 42-T1-01 MPIO FC 2145

# lspath
Enabled hdisk2 fscsi0
Enabled hdisk3 fscsi0
Enabled hdisk2 fscsi0
Enabled hdisk3 fscsi0
Enabled hdisk2 fscsi1
Enabled hdisk3 fscsi1
Enabled hdisk2 fscsi1
Enabled hdisk3 fscsi1

b) Run the manage_disk_drivers command to switch to AIX PCM and reboot the system.


# manage_disk_drivers -d IBMSVC -o AIX_AAPCM

 ********************** ATTENTION *************************

  For the change to take effect the system must be rebooted
# shutdown –Fr 

c) Check changes

After the reboot, AIX PCM is now in control of MPIO on this system.

# manage_disk_drivers -l | grep -i svc

IBMSVC              AIX_AAPCM             NO_OVERRIDE,AIX_AAPCM,AIX_non_MPIO
# lsmpio -are

Adapter Driver: fscsi0 -> AIX PCM
    Adapter WWPN:  c0507607e05e0078
    Link State:    Up
    Connection Errors
    Last 10 Minutes:                          0
    Last 60 Minutes:                          0
    Last 24 Hours:                            0
    Total Errors:                             0


                               Connection Errors
                            Last 10         Last 60         Last 24
                            Minutes         Minutes         Hours
    50050768011006c4              0               0               0
    500507680110062b              0               0               0

 

Adapter Driver: fscsi1 -> AIX PCM
    Adapter WWPN:  c0507607e05e007a
    Link State:    Up
    Connection Errors
    Last 10 Minutes:                          0
    Last 60 Minutes:                          0
    Last 24 Hours:                            0
    Total Errors:                             0
 

                               Connection Errors
                            Last 10         Last 60         Last 24
                            Minutes         Minutes         Hours
    50050768011006c4              0               0               0
    500507680110062b              0               0               0

See which path is optimized/non optimized, selected for IO, active/passive, Reserved, Failes, Closed, Degraded

s82861p22:/ #
# pcmpath query device
No device file found

# lsmpio

  name    path_id  status   path_status  parent  connection
  hdisk2  0        Enabled  Non          fscsi0  50050768011006c4,0
  hdisk2  1        Enabled  Opt          fscsi0  500507680110062b,0
  hdisk2  2        Enabled  Non          fscsi1  50050768011006c4,0
  hdisk2  3        Enabled  Sel,Opt      fscsi1  500507680110062b,0
  hdisk3  0        Enabled  Opt          fscsi0  50050768011006c4,1000000000000
  hdisk3  1        Enabled  Non          fscsi0  500507680110062b,1000000000000
  hdisk3  2        Enabled  Sel,Opt      fscsi1  50050768011006c4,1000000000000
  hdisk3  3        Enabled  Non          fscsi1  500507680110062b,1000000000000

d) Remove unused packages

Uninstall SDDPCM

# genkex | grep sddpcm
f1000000c0128000    a9000 /usr/lib/drivers/sddpcmke

# stopsrc -s pcmsrv  
# installp -u devices.sddpcm.72.rte devices.fcp.disk.ibm.mpio.rte

For info You can rollback to SDDPCM after the reboot, by using the following command and reboot again

# manage_disk_drivers -d IBMSVC -o NO_OVERRIDE

e) Best practice for attributes:

Here are the better parameters to reproduce SDDPCM behaviour with AIXPCM, when using IBM storage V7000, V5000 or SVC.

For each disk, change the default vaules:

# chdev -l hdiskX -a algorithm=shortest_queue -a reserve_policy=no_reserve –a queue_depth=32 -a hcheck_interval=60 -U

You can also change default ODM definitions using:

# odmget -q uniquetype="disk/fcp/mpioosdisk" PdAt | grep -p "queue_depth"
# chdef -a queue_depth=32 -c disk -s fcp -t mpioosdisk

# odmget -q uniquetype="disk/fcp/mpioosdisk" PdAt | grep -p "reserve_policy"
# chdef -a reserve_policy="no_reserve" -c disk -s fcp -t mpioosdisk

# odmget -q uniquetype="PCM/friend/fcpother" PdAt | grep -p "algorithm"
# chdef -a algorithm="shortest_queue" -c PCM -s friend -t fcpother

MPIO statistics

Statistics per path:

# lsmpio -l hdisk1 -S
Disk: hdisk1
    Path statistics since Tue Nov 27 11:44:42 CET 2018
    Path 0: (fscsi0:500507680c139f19,2000000000000)
        Path Selections:                                    0
        Adapter Errors:                                     0
        Command Timeouts:                                   0
        Reservation Conflicts:                              0
        SCSI Queue Full:                                    0
        SCSI Busy:                                          0
        SCSI ACA Active:                                    0
        SCSI Task Aborted:                                  0
        SCSI Aborted Command:                               0
        SCSI Check Condition:                               8
        Last Error:                                  SCSI Check Condition
        Last Error Time:                             Tue Nov 27 11:45:16 CET 2018
        Path Failure Count:                                 0
        Last Path Failure:                                N/A
        Last Path Failure Time:                           N/A
Disk: hdisk1
    Path statistics since Tue Nov 27 11:44:42 CET 2018
    Path 1: (fscsi0:500507680c139eb6,2000000000000)
        Path Selections:                                   36
        Adapter Errors:                                     0
        Command Timeouts:                                   0
        Reservation Conflicts:                              0
        SCSI Queue Full:                                    0
        SCSI Busy:                                          0
        SCSI ACA Active:                                    0
        SCSI Task Aborted:                                  0
        SCSI Aborted Command:                               0
        SCSI Check Condition:                               8
        Last Error:                                  SCSI Check Condition
        Last Error Time:                             Tue Nov 27 11:45:16 CET 2018
        Path Failure Count:                                 0
        Last Path Failure:                                N/A
        Last Path Failure Time:                           N/A

Statistics per adapter:

# lsmpio -ar
Adapter Driver: fscsi0 -> AIX PCM
    Adapter WWPN:  c050760824990001
    Link State:    Up
                          Paths      Paths      Paths      Paths
    Remote Ports        Enabled   Disabled     Failed    Missing         ID
    500507680c139f19          5          0          0          0   0xb52d00
    500507680c139eb6          5          0          0          0   0xbf2d00

Adapter Driver: fscsi1 -> AIX PCM
    Adapter WWPN:  c050760824990002
    Link State:    Up
                          Paths      Paths      Paths      Paths
    Remote Ports        Enabled   Disabled     Failed    Missing         ID
    500507680c239f19          5          0          0          0   0xb62d00
    500507680c239eb6          5          0          0          0   0xc02d00

https://www-01.ibm.com/support/docview.wss?uid=ssg1S1010218

https://www.ibm.com/support/knowledgecenter/ssw_aix_72/com.ibm.aix.cmds3/lsmpio.htm

https://www.ibm.com/support/knowledgecenter/ssw_aix_72/com.ibm.aix.cmds2/devrsrv.htm

Old links:

SDDPCM for DS8k SVC

Upgrade SDDPCM after AIX upgrade, when using SAN boot

aix/aix_mpio_sddpcm.txt · Last modified: 2021/01/01 21:25 (external edit)