One "Path Control Module" to Rule Them All!For many a year, SDDPCM ruled the world of IBM SAN attached storage on AIX servers. For example, with IBM SVC disk.
Times are changing.
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. Please read the following technote on the subject.
http
In addition to the removal of support for the SVC, support for the DS8000 (2107DS8K) storage devices is also being retired and customers are encouraged to migrate away from SDDPCM.
SDDPCM is not supported on POWER9 servers.
The official way to migrate from SDDPCM to AIXPCM is documented here (please read this):
How To Migrate SDDPCM to AIXPCM http
Here’s another way.
Use the manage_disk_drivers command.
http
This command allows administrators to choose between different Patch Control Modules (PCMs), or between using a PCM and configuring the disks as non-MPIO disks.
It may be the easiest method for transitioning from using SDDPCM to the AIX default PCM.
The -l option shows a list of all options available (the columns show the device family, the driver currently used by that family, and the different options available).
# manage_disk_drivers -l | grep -i svc IBMSVC NO_O
The "NO_OVERRIDE" option indicates that the configuration is not overridden by mana
By selecting the "AIX_AAPCM" option, the administrator can instruct AIX to use the AIX default PCM even if SDDPCM is installed. The AIX LPAR must be rebooted in order for the disks to be reconfigured to use the AIX PCM. Once AIX is rebooted, SDDPCM is no longer in use for the disk family specified in the manage_disk_drivers command. If no disks are using SDDPCM, then the SDDPCM filesets may be uninstalled.
Note: The values of the attributes of the disks are not preserved during this conversion. In particular, the AIX default PCM uses the "single_path" reservation policy as the default reservation policy, and the "fail_over" algorithm as the default algorithm. If the disks being switched from SDDPCM to AIX PCM are shared among multiple nodes in a cluster, this default reservation policy must be changed before the disk is opened. If this is not done, other nodes in the cluster will lose access to the shared disks until the reservation policy is changed. The chdev command may be used to change the reservation policy. This also applies to VSCSI backing disks in a dual VIOS environment. In my opinion it is a good idea to add the recommended values to the predefined attributes in ODM. These values should be applied BEFORE rebooting your system into AIXPCM mode. # chdef -a queue_depth=32 -c disk -s fcp -t mpioosdisk # chdef -a rese # chdef -a algo Any future LUN will now have the recommended values.
I personally recommend (and this is not an official IBM recommendation), to use the following defaults for AIX PCM hdisks.
# chdev -l hdiskX -a algo
Here’s an example of using the manage_disk_drivers command to switch from SDDPCM to AIX PCM for a system that’s using IBM SVC 2145 disk.
a) Confirm the system is using SDDPCM for MPIO.
# manage_disk_drivers -l | grep -i svc IBMSVC NO_O
# pcmpath query device
Total Dual Active and Active/Asymmetric Devices : 2
DEV#: 3 DEVICE NAME: hdisk2 TYPE: 2145 ALGORITHM: Load Balance SERIAL: 6005
==== Path# Adapter/Path Name State Mode Select Errors 0* fscs 1 fscs 2* fscs 3 fscs
DEV#: 4 DEVICE NAME: hdisk3 TYPE: 2145 ALGORITHM: Load Balance SERIAL: 6005
==== Path# Adapter/Path Name State Mode Select Errors 0 fscs 1* fscs 2 fscs 3* fscs
The AIX PCM lsmpio command does not return anything, as SDDPCM is in control at this time.
# 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 *** For the change to take effect the system must be rebooted
# bosboot -ad /dev/ipldevice # shutdown –Fr
After the reboot, AIX PCM is now in control of MPIO on this system.
# manage_disk_drivers -l | grep -i svc IBMSVC AIX_
# lsmpio -are Adapter Driver: fscsi0 -> AIX PCM Adapter WWPN: c0507607e05e0078 Link State: Up Connection Errors Last 10 Minu Last 60 Minu Last 24 Hour Total Erro
5005 5005
Adapter Driver: fscsi1 -> AIX PCM Adapter WWPN: c0507607e05e007a Link State: Up Connection Errors Last 10 Minu Last 60 Minu Last 24 Hour Total Erro
Last 10 Last 60 Last 24 5005 5005
s82861p22:/ #
# pcmpath query device No device file found What if I wanted to roll back to SDDPCM? Simple, just run manage_disk_drivers again and select NO_OVERRIDE. Of course, this assumes you have not de-installed the SDDPCM device drivers.
# manage_disk_drivers -d IBMSVC -o NO_OVERRIDE *** For the change to take effect the system must be rebooted # shutdown -Fr
SDDPCM is now in control of MPIO again.
# manage_disk_drivers -l | grep -i svc IBMSVC NO_O
# pcmpath query device
Total Dual Active and Active/Asymmetric Devices : 2
DEV#: 3 DEVICE NAME: hdisk2 TYPE: 2145 ALGORITHM: Load Balance SERIAL: 6005
==== Path# Adapter/Path Name State Mode Select Errors 0* fscs 1 fscs 2* fscs 3 fscs
DEV#: 4 DEVICE NAME: hdisk3 TYPE: 2145 ALGORITHM: Load Balance SERIAL: 6005
==== Path# Adapter/Path Name State Mode Select Errors 0 fscs 1* fscs 2 fscs 3* fscs
AIX PCM lsmpio does not return any information when SDDPCM is in control.
# lsmpio #
Now, when you’ve switched from SDDPCM to AIX PCM, you can uninstall the SDDPCM device drivers at this point.
; Confirm AIX PCM is in control i.e. output from lsmpio.
# 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
5005
hdisk3 1 Enabled
Non fscsi0
5005
hdisk3 2 Enabled
Sel,Opt fscsi1 5005
hdisk3 3 Enabled
Non fscsi1
5005
# smit deinstall
Type or select values in entry fields. Press Enter AFTER making all desired changes.
* SOFTWARE name [de PREVIEW only? (remove operation will NOT occur) yes + REMOVE dependent soft EXTEND file systems if space need DETAILED outp
FILESET STATISTICS ------------------ 2 Selected to be deinstalled, of which: 2 Passed pre-deinstall verification ---- 2 Total to be deinstalled
ADDITIONAL INFORMATION ---- One or more of the selected filesets will cause a bosboot to be performed. The bosboot command will rebuild the boot image. As a result it may be necessary to reboot your system for the changes to take effect.
It is recommended that you reboot the system as soon as possible after the installation of this software to avoid disruption of current functionality.
Name ---- devi devi devi
# lslpp -l | grep sddpcm # # pcmpath query device ksh: pcmpath: not found.
Note: Please take note of the following important information in the Technote (S1010218) I mentioned earlier:
“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.
|
If you're going to have a hcheck_interval of 60, you should put rw_timeout=30. I'd also recommend timeout_policy=fail_path. https://www.ibm.com/developerworks/aix/library/au-aix-mpio/ (The doc actually says rw_timeout should be <= hcheck_interval. I need to update the doc. It's actually best for rw_timeout to be less than hcheck_interval --- for the reasons explained within the document.)
Chris, thank you very much for your information.
In my opinion it is a good idea to add your recommended values to the predefined attributes in ODM.
# chdef -a queue_depth=32 -c disk -s fcp -t mpioosdisk
queue_depth changed
# chdef -a reserve_policy=no_reserve -c disk -s fcp -t mpioosdisk
reserve_policy changed
# chdef -a algorithm=shortest_queue -c disk -s fcp -t mpioosdisk
algorithm changed
Any future LUN will now have the recommended values.