While the majority of Skytap regions are single VIOS, some are dual VIOS. This document describes the changes that should be made within AIX based LPARs when running in a dual VIOS region. Those changes include:
- Disk MPIO (multi path) failover
- VSCSI MPIO (multi path) failover
- Disk path priority for load balancing and performance
To confirm if the AIX LPAR is on a DUAL VIOS host, verify the AIX sees two VSCSI paths for each disk. Using the following lspath example command, we see hdisk2 has two paths:
# lspath | grep Enabled | grep hdisk2
Enabled hdisk2 vscsi0
Enabled hdisk2 vscsi1
1. Disk MPIO (multi path) failover for dual VIOS
1a. Use the lsdev command to list the available hdisks, for example:
# lsdev -Cc disk | grep Available
1b. Set the hdisk MPIO attributes using chdev each hdisk. Replace hdiskX with the actual hdisk identifier (e.g., hdisk0, hdisk1, etc.):
# chdev -l hdiskX -a 'hcheck_mode=nonactive hcheck_interval=150 algorithm=fail_over reserve_policy=no_reserve' -P
1c. Use the lsattr commands to verify the hdisk changes:
# lsattr -El hdiskX -a 'hcheck_mode hcheck_interval algorithm reserve_policy'
2. VSCSI MPIO (multi path) failover for dual VIOS
2a. Use the lsdev command to list the available VSCSI controllers, for example:
# lsdev -Cc adapter | grep vscsi | grep Available
2b. Use the chdev command to change the attributes for each vscsi controller. Replace vscsiX with the actual VSCSI controller identifier (e.g., vscsi0, vscsi1, etc.):
# chdev -l vscsiX -a 'vscsi_err_recov=fast_fail vscsi_path_to=30' -P
2c. Use the lsattr command to verify that the changes have been applied correctly:
# lsattr -El vscsiX -a 'vscsi_err_recov vscsi_path_to'
3. Disk path priority for load balancing and performance
MPIO offers the possibility to access a device through multiple paths. The correct algorithm must be set to determine which path must be used to process an IO request. For VSCSI disks, fail_over is the only possible algorithm. With this algorithm, the IOs are sent through one single path at a time. It does not provide load-balancing capability. The PCM keeps track of all available paths in an ordered list, and sends IO requests through the first path available. If this path fails or is disabled, then IOs are sent through the next one.
In the below example, hdisk0 is configured through vscsi0 and vscsi1, and as you can see in the lsmpio output, vscsi0 is the path 0 and vscsi1 is the path 1. In most case vscsi0 is the adapter with the smallest slot number and is usually attached to the 1st VIOS (here VIOS A), while vscsi1 has a higher slot number and is usually attached to VIOS B.
bash-5.2# lsmpio -l hdisk0
name path_id status path_status parent connection
hdisk0 0 Enabled Sel vscsi0 810000000000
hdisk0 1 Enabled vscsi1 810000000000
Using the default disk MPIO settings, all the hdisks of an AIX LPAR will use VIOS A for the disk IO path, and none of them will use VIOS B. This means LPARs with high disk IO demands may not be reaching full read/write potential. Ideally, the priority of 50% the disks of each volume group should be set to vscsi0, and the 50% should be set to vscsi1
3a. Example lspath command to see the current path priority for hdisk0, for vscsi0 and vscsi1:
bash-5.2# lspath -AHE -l hdisk0 -p vscsi0
attribute value description user_settable
priority 1 Priority True
bash-5.2# lspath -AHE -l hdisk0 -p vscsi1
attribute value description user_settable
priority 1 Priority True
3b. The higher the priority value, the LOWER priority that path is. This following change is effective immediately. No reboot or reconfigure of the disk is required. Example chpath command to change path priority:
bash-5.2# chpath -l hdisk0 -p vscsi1 -a priority=2
path Changed
Comments
0 comments
Article is closed for comments.