The Subsystem Device Driver (SDD) is a software solution to support the multipath configuration environments in supported storage devices. It resides in a host system with the native disk device driver and provides the following functions:
- Enhanced data availability
- Dynamic input/output (I/O) load-balancing across multiple paths
- Automatic path failover protection
- Concurrent download of licensed machine code
- Prevention of a single-point-failure caused by host bus adapter (HBA), Fibre Channel (FC) cable, Ethernet cable, or host-interface adapter on supported storage
The following hardware components are needed:
- One or more supported storage devices
- A switch if using a SAN Volume Controller (no direct attachment is allowed for SVC)
- Host system
- Small Computer System Interface (SCSI) adapters and cables [for Enterprise Storage Server (ESS) only]
- Fibre Channel adapters and cables
The following software components are needed:
- AIX operating system: Starting with SDD 184.108.40.206, the SDD package for AIX 5.3 (devices.sdd.53.rte) requires AIX53 TL04 with APAR IY76997. Starting with SDD 220.127.116.11, the SDD package for AIX 5.2 (devices.sdd.52.rte) requires AIX52 TL08 or later and the SDD package for AIX 5.3 (devices.sdd.53.rte) requires AIX53 TL04 or later.
- SCSI and Fibre Channel device drivers.
- ibm2105.rte package for ESS devices [devices.scsi.disk.ibm2105.rte or devices.fcp.disk.ibm2105.rte package if using Network Installation Management (NIM)].
- devices.fcp.disk.ibm.rte for IBM System Storage DS8000®, IBM System Storage DS6000™, and SAN Volume Controller.
You can download the necessary package from the Subsystem Device Driver Path Control Module (SDDPCM) page.
Figure 1. Download package
Before you install SDDPCM, you must:
- Determine whether you have the correct installation package.
- Remove the SDD package, if it is installed.
- Remove ibm2105.rte (version 32.6.100.x) and devices.fcp.disk.ibm.rte (version 1.0.0.x), if they are installed.
- Install the AIX Fibre Channel device drivers, if necessary.
- Verify and upgrade the Fibre Channel adapter firmware level.
- Install the SDDPCM host attachment: devices.fcp.disk.ibm.mpio.rte (version 18.104.22.168 or later) or devices.sas.disk.ibm.mpio.rte (version 22.214.171.124 or later).
Procedure to install the SDDPCM driver
You need to perform the following steps to install the SDDPCM driver.
- Install the AIX SDDPCM host attachment package (devices.fcp.disk.ibm.mpio.rte or devices.sas.disk.ibm.mpio.rte) before installing the SDDPCM package.
- Log in to the system with root access and extract the downloaded SDDPCM host attachment package (that is devices.fcp.disk.ibm.mpio.rte.tar.gz or devices.sas.disk.ibm.mpio.rte.tar.gz) and install it. You can also use the smit option.
#installp -aXY devices.fcp.disk.ibm.mpio.rte
- Now, you need to install the SDDPCM package (devices.sddpcm.52.rte, devices.sddpcm.53.rte or devices.sddpcm.61.rte).
#installp -aXY devices.sddpcm.61.rte
- After installing the prerequisites, install the .bff file.
#installp -aXY devices.sddpcm.126.96.36.199.2.bff
After this installation, you need to set a SDD path-selection policy algorithm that can help you to increase the performance of multipath-configured and supported storage devices and make path failures transparent to applications. The following path-selection policies are supported:
- Failover only (fo)
All I/O operations for the device are sent to the same (preferred) path until the path fails because of I/O errors. Then an alternate path is chosen for subsequent I/O operations.
- Load balancing (lb)
The path to use for an I/O operation is chosen by estimating the load on the adapter to which each path is attached. The load is a function of the number of I/O operations currently in process. If multiple paths have the same load, a path is chosen at random from those paths. Load-balancing mode also incorporates failover protection. The load-balancing policy is also known as the optimized policy.
- Load balancing sequential (lbs)
This policy is the same as the load-balancing policy with optimization for sequential I/O. The load-balancing sequential policy is also known as the optimized sequential policy. This is the default setting.
- Round robin (rr)
The path to use for each I/O operation is chosen at random from paths that were not used for the last I/O operation. If a device has only two paths, SDD alternates between the two.
- Round robin sequential (rrs)
This policy is the same as the round-robin policy with optimization for sequential I/O.
You need to choose the best suitable SDD path-selection policy to your environment and apply it using the following method.
Note: Before changing the algorithm, you need to change the disk reservation policy to
# chdev -l hdiskX -a reserve_policy=no_reserve
Examples of commands to set different SDD path-selection policy algorithm
# chdev -l hdiskX -a algorithm=load_balance_port # chdev -l hdiskX -a algorithm=round_robin
You can check the disk policy using the
pcmpath query device command.
Figure 2. Round robin algorithm
You can also check the FCS adapter usages using the nmon tool. This tool helps to understand which FCS adapters are being used.
Figure 3. nmon report
Important SDDPCM commands and their functions:
pcmpath:Display and manage SDDPCM devices.
pcmpath query adapter:show adapter configuration
pcmpath query version:show the version of the SDDPCM
pcmpath query device:show the SDDPCM devices (pcmpath query device 44 shows only this device)
pcmpath query essmap:Show a complete overview
pcmpath set device algorithm:Dynamically change the path selection algorithm
pcmpath set device hc_mode:Dynamically change the path health check mode
pcmpath set device hc_interval:Dynamically change the path health check time interval
pcmpath set device Mpath N online/offline:Dynamically enable (online) or disable (offline) a path
pcmpath set adapter N online/offline:Dynamically enable (online) or disable (offline) an adapter (SDDPCM reserves the last path of a device, and it will fail if the device is using the last path)
pcmquerypr:Read and clear persistent reserve and registration keys
pcmquerypr -vh /dev/hdisk30:Query and display the persistent reservation (-V verbose mode and more details)
pcmquerypr -rh /dev/hdisk30:Release the persistent reservation if the device is reserved by the current host
pcmquerypr -ch /dev/hdisk30:Remove the persistent reservation and clear all reservation key registration
pcmquerypr -ph /dev/hdisk30:Remove the persistent reservation if the device is reserved by the other host
pcmgenprkey:Set or clear the PR_key_value Object Data Manager (ODM) attribute for all SDDPCM multipath I/O (MPIO) devices
Refer to IBM System Storage Multipath Subsystem Device Driver User’s Guide.
Dig deeper into AIX and Unix on developerWorks
Get samples, articles, product docs, and community resources to help build, deploy, and manage your cloud apps.
Keep up with the best and latest technical info to help you tackle your development challenges.
Software development in the cloud. Register today to create a project.
Evaluate IBM software and solutions, and transform challenges into opportunities.