Professional Documents
Culture Documents
Sun StorageTek RDAC Multipath Failover Driver Installation Guide for Linux OS
Note - The failover driver for Linux OS RDAC does not support any Linux OS 2.4 kernels such as SuSE SLES 8 OS on Intel architecture or AMD architecture, Red Hat 3 Linux OS on Intel or AMD architecture, and Linux OS SLES8 and Red Hat 3 on POWER (LoP) servers.
Note - The RDAC driver cannot co-exist with an HBA-level failover driver such as the Emulex, QLogic, or LSI Logic HBA failover drivers.
Prerequisites
Before you install the RDAC driver, be sure the following requirements are met: 1. The HBAs connected to the host on which you are installing the RDAC driver are supported. The driver supports QLogic, LSI, and Emulex HBAs. (For supported HBA model numbers, see the README file included in the RDAC driver package, as described in Downloading the RDAC Driver.) 2. The compiler and kernel source for the appropriate OS are installed. 3. The HBAs connected to a single storage array are the same model. Use your HBA utilities, such as HBAanywhere (Emulex) or scli (QLogic) to ensure that your storage area network (SAN) is configured properly for this requirement. 4. The base HBA driver is installed and built. The following base and host drivers are supported:
HBA
Notes
QLogic
qla2xxx
qla2300
LSI
mptbase
mptscsi or mptscsih
3.02.xx or later for SCSI parallel interface transport, SAS transport, and FC transport
1 of 14
22/06/2012 15:13
HBA
Notes
lpfcdd or lpfc
lpfc
5. To verify the driver is installed, use the following command: lsmod | grep <driver_name> The following sample output shows QLogic drivers (in bold text):
Module Size . . .iscsi_tcp 56641 libiscsi 59329 scsi_transport_iscsi 63569 dm_mirror 61121 . usb_storage 116257 qla2xxx 1007660 intermodule 37508 lpfc 222068 scsi_transport_fc 73161 mptsas 59857 mptbase 87649 scsi_transport_sas 64833 . .
Caution - MPIO and RDAC cannot coexist on the same Linux host server.
1. To download the RDAC driver, go to: http://www.sun.com/download/index.jsp?tab=2#S 2. Select the package for the Linux OS platform.
Linux Kernel
OS
Driver
Linux 2.6
rdac-LINUX-09.xx.xB02.xxxx
2 of 14
22/06/2012 15:13
Linux Kernel
OS
Driver
Linux 2.6.18
rdac-LINUX-09.xx.xC02.xxxx
Note - For updated driver information, refer to the release notes for your array.
3. Place the download in a non-volatile location on the system to be installed. 4. Load the standard HBA non-failover driver.
Note - Emulex and Qlogic failover drivers are not compatible with the RDAC driver.
5. On the SuSE operating system, check the base HBA drivers are included in INITRD_MODULES in /etc/sysconfig/kernel for one of the following HBAs:
QLogic
qla2xxx
qla2300
LSI
mptbase
mptscsi or mptscsih
INITRD_MODULES include mptbase and mptscsi (or mptscsih) for pre-3.02.xx version of the LSI mpt driver.
The INITRD_MODULES includes mptbase, mptscsi, mptspi, mptsas, and mptfc for 3.02.xx or later version of the LSI mpt driver.
lpfcdd or lpfc
lpfc
6. Make sure the kernel source tree is installed for the kernel version to be built against.
# make clean -r make V=0 -C/lib/modules/2.6.18-8.el5xen/build M=/PTS/linuxrdac-09.03.C2.13 MODVERDIR=/lib/modules/2.6.18-8.el5xen/build/.tm make[1]: Entering directory /usr/src/kernels/2.6.18-8.el5-xen-x86_64
3 of 14
22/06/2012 15:13
4. Compile all driver modules and utilities by running the make command:
# make make V=0 -C/lib/modules/2.6.18-8.el5xen/build M=/PTS/linuxrdac-09.03.C2.13 MODVERDIR=/lib/modules/2.6.18-8.el5xen/build/.tm make[1]: Entering directory /usr/src/kernels/2.6.18-8.el5-xen-x86_64 CC [M] /PTS/linuxrdac-09.03.C2.13/MPP_hba.o CC [M] /PTS/linuxrdac-09.03.C2.13/mppLnx26p_upper.o CC [M] /PTS/linuxrdac-09.03.C2.13/mppLnx26p_sysdep.o CC [M] /PTS/linuxrdac-09.03.C2.13/mppCmn_s2tos3.o CC [M] /PTS/linuxrdac-09.03.C2.13/mppCmn_SysInterface.o CC [M] /PTS/linuxrdac-09.03.C2.13/mppLnx26p_vhbamisc.o CC [M] /PTS/linuxrdac-09.03.C2.13/mppLnx26p_vhbatask.o CC [M] /PTS/linuxrdac-09.03.C2.13/mppLnx26p_vhba.o CC [M] /PTS/linuxrdac-09.03.C2.13/mppLnx26p_vhbaproc.o CC [M] /PTS/linuxrdac-09.03.C2.13/mppLnx26p_vhbalib.o CC [M] /PTS/linuxrdac-09.03.C2.13/mppLnx26p_vhbaio.o LD [M] /PTS/linuxrdac-09.03.C2.13/mppUpper.o LD [M] /PTS/linuxrdac-09.03.C2.13/mppVhba.o Building modules, stage 2. MODPOST CC /PTS/linuxrdac-09.03.C2.13/mppUpper.mod.o LD [M] /PTS/linuxrdac-09.03.C2.13/mppUpper.ko CC /PTS/linuxrdac-09.03.C2.13/mppVhba.mod.o LD [M] /PTS/linuxrdac-09.03.C2.13/mppVhba.ko make[1]: Leaving directory /usr/src/kernels/2.6.18-8.el5-xen-x86_64 make V=0 -C/lib/modules/2.6.18-8.el5xen/build M=/PTS/linuxrdac-09.03.C2.13 MODVERDIR=/lib/modules/2.6.18-8.el5xen/build/.tm make[1]: Entering directory /usr/src/kernels/2.6.18-8.el5-xen-x86_64 Building modules, stage 2. MODPOST make[1]: Leaving directory /usr/src/kernels/2.6.18-8.el5-xen-x86_64 gcc -D__KERNEL__ -I/lib/modules/2.6.18-8.el5xen/build/include mppLnx26p_spinlock_size.c -o mppLnx_Spinlock_Size
gcc
-I/PTS/linuxrdac-09.03.C2.13 -I/PTS/linuxrdac-09.03.C2.13/mpp_linux_headers/ -I/PTS/linuxrdac-09.03.C2.13/mpp_linux_sys /bin/bash ./genfileattributes bld gcc -I/PTS/linuxrdac-09.03.C2.13 -I/PTS/linuxrdac-09.03.C2.13/mpp_linux_headers/ -I/PTS/linuxrdac-09.03.C2.13/mpp_linu gcc mppUtil.o mppUtilSysdep.o -o mppUtil gcc -o genuniqueid genuniqueid.c
5. Uninstall any existing RDAC drivers using the make uninstall command: # make uninstall MPP driver is currently not installed on the system [root@va64-x4100d-sca11 linuxrdac-09.03.C2.13] 6. Install the new RDAC driver using the make install command. This command: Copies the driver modules to the kernel module tree. Builds the new RAMdisk image (mpp-uname -r.img) which includes the RDAC driver modules and all driver modules that are needed at boot time.
# make install make V=0 -C/lib/modules/2.6.18-8.el5xen/build M=/PTS/linuxrdac-09.03.C2.13 MODVERDIR=/lib/modules/2.6.18-8.el5x make[1]: Entering directory /usr/src/kernels/2.6.18-8.el5-xen-x86_64 Building modules, stage 2. MODPOST make[1]: Leaving directory /usr/src/kernels/2.6.18-8.el5-xen-x86_64 make V=0 -C/lib/modules/2.6.18-8.el5xen/build M=/PTS/linuxrdac-09.03.C2.13 MODVERDIR=/lib/modules/2.6.18-8.el5x make[1]: Entering directory /usr/src/kernels/2.6.18-8.el5-xen-x86_64 Building modules, stage 2. MODPOST make[1]: Leaving directory /usr/src/kernels/2.6.18-8.el5-xen-x86_64 /bin/bash ./genfileattributes bld gcc -I/PTS/linuxrdac-09.03.C2.13 -I/PTS/linuxrdac-09.03.C2.13/mpp_linux_headers/ -I/PTS/linuxrdac-09.03.C2.13/ gcc mppUtil.o mppUtilSysdep.o -o mppUtil
4 of 14
22/06/2012 15:13
Checking Host Adapter Configuration... Unsupported Host Adapter Model: Product ID fc10(rev01) Unsupported Host Adapter Model: Product ID fc10(rev01) Detected 2 Emulex Host Adapter Port(s) on the system Detected 1 LSI Host Adapter Port(s) on the system Detected 2 QLogic Host Adapter Port(s) on the system Host Adapters from different supported vendors co-exists on your system. Unsupported model from Vendor Emulex exists. Please make sure that only one supported model of HBA is connected to Storage Array.
Do you want to continue (yes or no) ? yes Please wait while we modify the system configuration files. Your kernel version is 2.6.18-8.el5xen Preparing to install MPP driver against this kernel version... Generating module dependencies... Warning: Duplicate module options detected. Option in /etc/modprobe.conf ( max_luns=256 ) takes precedence over MPP default setting ( max_luns=512 ). Creating new MPP initrd image... You must now edit your boot loader configuration file, /boot/grub/menu.lst, to add a new boot menu, which uses mpp-2.6.18-8.el5xen.img as the initrd image. Now Reboot the system for MPP to take effect. The new boot menu entry should look something like this (note that it may vary with different system configuration): ... title Red Hat Linux (2.6.18-8.el5xen) with MPP support root (hd0,5) kernel /vmlinuz-2.6.18-8.el5xen ro root=LABEL=RH9 initrd /mpp-2.6.18-8.el5xen.img ... MPP driver package has been successfully installed on your system.
8. Follow the on-screen instructions to modify the grub.conf file. Change the module and initrd names as follows:
Original Name
Revised Name
initrd /initrd-2.6.18-8.el5.img
initrd /mpp-2.6.18-8.el5xen.img
The content of the grub.conf file looks similar to the following. (The revised module and initrd names are shown in bold text.)
# boot=/dev/sda default=0 timeout=5 title Red Hat Enterprise Linux Server (2.6.18-8.el5xen) root (hd0,0) kernel /xen.gz-2.6.18-8.el5 com1=9600n8 module /vmlinuz-2.6.18-8.el5xen ro root=LABEL=/ console=ttyS0,9600n8 rhgb quiet module /mpp-2.6.18-8.el5xen.img title Red Hat Enterprise Linux Server-base (2.6.18-8.el5) root (hd0,0) kernel /vmlinuz-2.6.18-8.el5 ro root=LABEL=/ console=ttyS0,9600n8 rhgb quiet initrd /mpp-2.6.18-8.el5xen.img
9. Reboot the Linux server. # reboot 10. After the server is rebooted, log in and verify the driver stack is properly loaded using the lsmod command. The driver stack for Red Hat and SuSE platforms are as follows: Red Hat platforms--scsi_mod, sd_mod, sg, mppUpper, mppVhba, and base level HBA drivers (for example, qla2xxx, qla2300) are loaded.
5 of 14
22/06/2012 15:13
SuSE platforms--sg, mppUpper, mppVhba, and base level HBA drivers (for example, qla2xxx, qla2300) are loaded.
/lib/modules/2.6.18-8.el5xen/kernel/drivers/scsi/qla2xxx/qla2xxx.ko 8.02.08 GPL QLogic Fibre Channel HBA Driver QLogic Corporation F368B42790B83A8F18E4151 pci:v00001077d00002532sv*sd*bc*sc*i*
/lib/modules/2.6.18-8.el5xen/kernel/drivers/scsi/lpfc/lpfc.ko 0:8.1.10.12 Emulex Corporation - tech.support@emulex.com Emulex LightPulse Fibre Channel SCSI driver 8.1.10.12 GPL 13F4CC10783BE62B7822C3B
# more /opt/mpp/modprobe.conf.mppappend ### BEGIN OF MPP Driver Changes ### options scsi_mod max_report_luns=256 max_luns=256 alias scsi_hostadapter99 mppVhba alias scsi_hostadapter98 mptsas options qla2xxx ql2xfailover=0 ql2xretrycount=3 ql2xprocessnotready=0 qlport_down_retry=35 alias scsi_hostadapter96 qla2xxx options lpfc lpfc_nodev_tmo=60 alias scsi_hostadapter97 lpfc ## END OF MPP Driver Changes ###
12. Verify the RDAC driver discovered the available physical LUNs and created virtual LUNs by typing the following command: # ls -lR /proc/mpp /proc/mpp: total 0
# lsmod | grep qla qla2xxx 1007660 0 intermodule 37508 1 qla2xxx scsi_mod 184057 16 ib_iser,iscsi_tcp, libiscsi,scsi_transport_iscsi,sr_mod,mppVhba,lpfc, scsi_transport_fc,qla2xxx,
# more /etc/modprobe.conf alias eth0 e1000 alias eth1 e1000 alias eth2 e1000 alias eth3 e1000 alias scsi_hostadapter mptbase
6 of 14
22/06/2012 15:13
alias scsi_hostadapter1 mptsas alias scsi_hostadapter2 lpfc alias scsi_hostadapter3 qla2xxx alias scsi_hostadapter4 usb-storage install qla2xxx /sbin/modprobe qla2xxx_conf; /sbin/modprobe --ignore-install qla2xxx remove qla2xxx /sbin/modprobe -r --first-time --ignore-remove qla2xxx && { /sbin/modprobe -r --ignore-remove qla2xxx_con alias qla2100 qla2xxx alias qla2200 qla2xxx alias qla2300 qla2xxx alias qla2322 qla2xxx alias qla2400 qla2xxx options scsi_mod max_luns=256 alias scsi_hostadapter5 lpfc ### BEGIN MPP Driver Comments ### remove mppUpper if [ ls -a /proc/mpp | wc -l -gt 2 ]; then echo -e "Please Unload Physical HBA Driver prior to unloadi # Additional config info can be found in /opt/mpp/modprobe.conf.mppappend. # The Above config info is needed if you want to make mkinitrd manually. # Please read the Readme file that came with MPP driver for building RamDisk manually. # Edit the /etc/modprobe.conf file and run mppUpdate to create Ramdisk dynamically. ### END MPP Driver Comments ###
15. Verify the disk devices are mapped from the array to the host, as follows: Check the array mappings in Common Array Manager, to ensure that you have mapped a volume on the array to the Linux host. Use the /usr/sbin/mppUtil -a <array_name_in_CAM> command to get a report on how many devices can be seen by the MPP driver (see Multipath Failover Driver Utilities). View the /proc/scsi/mpp file for array devices. View /proc/scsi/<base_hba_driver_name>/[0-9|a-z], for information about what devices can be seen. See TABLE 1 for a list of HBA base driver names. The files in this directory are labeled 0 through 9 or A through Z. Each file represents a port on the HBA, which includes World Wide Names of storage devices and LUNs reported.
mppUtil Utility
The mppUtil utility is a general purpose command-line driven utility that works only with MPP-based RDAC solutions. The utility instructs RDAC to perform various maintenance tasks, but you can also use the utility to troubleshoot failover problems. To use the mppUtil utility, type this command and press enter. mppUtil [-a target_name] [-c wwn_file_name] [-d debug_level] [-e error_level] [-g virtual_target_id] [-I host_num] [-o feature_action_nam [=value][, SaveSettings]][-s "failback" | "avt" | "busscan" | "forcerebalance"] [-S] [-U][-V]
The mppUtil utility is a cross-platform tool. Some parameters might not have a meaning in a particular operating system environment. A description of each parameter follows.
TABLE 2 Parameter
mppUtil
Parameters Description
-a target_name
Shows the RDAC drivers internal information for the specified virtual target_name (storage array name). If a target_name value is not included, the -a parameter shows information about all the storage arrays that are currently detected by this host.
7 of 14
22/06/2012 15:13
Parameter
Description
-c wwn_File_Name
Clears the WWN file entries. This file is located at /var/mpp with the extension .wwn.
-d debug_level
ets the current debug reporting level. This option only works if the RDAC driver has been compiled with debugging enabled. Debug reporting is comprised of two segments. The first segment refers to a specific area of functionality, and the second segment refers to the level of reporting within that area. The debug_level is one of these hexadecimal numbers: 0x20000000--Shows messages from the RDAC drivers init() routine. 0x10000000--Shows messages from the RDAC drivers attach() routine. 0x08000000--Shows messages from the RDAC drivers ioctl() routine. 0x04000000--Shows messages from the RDAC drivers open() routine. 0x02000000--Shows messages from the RDAC drivers read() routine. 0x01000000--Shows messages related to HBA commands. 0x00800000--Shows messages related to aborted commands. 0x00400000--Shows messages related to panic dumps. 0x00200000--Shows messages related to synchronous I/O activity. 0x00000001--Debug level 1. 0x00000002--Debug level 2. 0x00000004--Debug level 3. 0x00000008--Debug level 4. These options can be combined with the logical or operator to provide multiple areas and levels of reporting as needed.
-e error_level
Sets the current error reporting level to error_level, which can have one of these values: 0--Show all errors. 1--Show path failover, controller failover, retryable, fatal, and recovered errors. 2--Show path failover, controller failover, retryable, and fatal errors. 3--Show path failover, controller failover, and fatal errors. This is the default setting. 4--Show controller failover and fatal errors. 5--Show fatal errors.
-g virtual_target_id
Display the RDAC drivers internal information for the specified virtual_target_id.
-I host_num
Prints the maximum number of targets that can be handled by that host. Here, host refers to the HBA drivers on the system and includes the RDAC driver. The host number of the HBA driver is given as an argument. The host numbers assigned by the Linux middle layer start from 0. If there are two ports on the HBA card, host numbers 0 and 1 would be taken up by the low-level HBA driver, and the RDAC driver would be at host number 2. Use /proc/scsi to determine the host number.
-o feature_action_name[=value][, SaveSettings]
Troubleshoots a feature or changes a configuration setting. Without the SaveSettings keyword, the changes only affect the inmemory state of the variable. The SaveSettings keyword changes both the in-memory state and the persistent state. You must run mppUpdate to reflect these changes in inird image before rebooting the server. Some example commands are: mppUtil -o--Displays all the available feature action names. mppUtil -o ErrorLevel=0x2--Sets the ErrorLevel parameter to 0x2 (affects only the in-memory state).
Manually initiates one of the RDAC drivers scan tasks. A failback scan will cause the RDAC driver to reattempt communications with any failed controllers. An avt scan causes the RDAC driver to check whether AVT has been enabled or disabled for an entire storage array. A busscan scan causes the RDAC driver to go through its unconfigured devices list to see if any of them have become configured. A forcerebalance scan will cause the RDAC driver to move storage array volumes to its preferred controller and ignore the value of the DisableLunRebalance configuration parameter of the RDAC driver.
-S
Reports the Up or Down state of the controllers and paths for each LUN in real time.
-U
Refreshes the Universal Transport Mechanism (UTM) LUN information in MPP driver internal data structure for all the storage arrays that have already been discovered.
-V
Prints the version of the RDAC driver currently running on the system.
lsdev Utility
The lsdev utility provides a map of your array LUNs to their Linux block devices. To use the lsdev utility, type this command and press enter. # /opt/mpp/lsdev For example:
8 of 14
22/06/2012 15:13
/usr/sbin # /opt/mpp/lsvdev
Array Name Lun sd device ------------------------------------myarray 0 -> /dev/sdf myarray 1 -> /dev/sdg myarray 2 -> /dev/sdh myarray 3 -> /dev/sdi
mppSupport Utility
The mppSupport utility provides information about your system, array connection, and configuration for Sun Services to assist you with any problems you might have. To use the mppSupport utility, type this command and press enter. # /opt/mppSupport The collected support data is saved in the file: /tmp/mppSupportdata_myhost_<RDACversion>_<dateandtime>.tar.gz
Caution - You might lose access to the storage array if you change these settings from their configured values.
Setting
Description
MaxPathsPerController
The maximum number of paths (logical endpoints) supported per controller. The total number of paths to the storage array is the MaxPathsPerControllervalue multiplied by the number of controllers.
ScanInterval
60
The interval, in seconds, during which the failover driver will check for these conditions: A change in preferred ownership for a LUN Attempt to rebalance LUNs to their preferred paths A change in AVT enabled/disabled status
ErrorLevel
Determines which errors to log. The valid range is from 0 to 4. 0--Display all errors 1--Display path failover errors, controller failover errors, retry errors, fatal errors, and recovered errors 2--Display path failover errors, controller failover errors, retry errors, and fatal errors 3--Display path failover errors, controller failover errors, and fatal errors (this is the default setting) 4--Display controller failover errors, and fatal errors
SelectionTimeoutRetry Count
The number of times a selection timeout is retried for an I/O request before the path fails. If another path to the same controller exists, the I/O is retried. If no other path exists, a failover takes place. If no valid paths exist to the alternate controller, the I/O is failed.
CommandTimeoutRetryCount 1
The number of times a command timeout is retried for an I/O request before the path fails. If another path to the same controller exists, the I/O is retried. If another path does not exist, a failover takes place. If no valid paths exist to the alternate controller, the I/O is failed.
9 of 14
22/06/2012 15:13
Caution - Possible loss of data access--If you change these settings from their configured values, you might lose access to the storage array.
Configuration Name
Description
NotReadyWaitTime
300
The time, in seconds, a Not Ready condition (SK 0x06, ASC/ASCQ 0x04/0x01) is allowed before failover is performed.
BusyWaitTime
300
QuiescenceWaitTime
300
The time, in seconds, a Quiescence condition (SK 0x06, ASC/ASCQ 0x8b/0x02) is allowed before a failover is performed.
ControllerIoWaitTime 120
Provides an upper-bound limit, in seconds, an I/O is retried on a controller regardless of retry status before a failover is performed. If the limit is exceeded on the alternate controller the I/O is again attempted on the original controller. This process continues until the ArrayIoWaitTime limit is reached.
ArrayIoWaitTime
240
Provides an upper bound limit, in seconds, an I/O is retried to the storage array regardless of which controller the request is attempted to. Once this limit is exceeded, the I/O is returned with a failure status.
# mppUpdate Unsupported Host Adapter Model: Product ID fc10(rev01) Unsupported Host Adapter Model: Product ID fc10(rev01) Detected 2 Emulex Host Adapter Port(s) on the system Detected 1 LSI Host Adapter Port(s) on the system Detected 2 QLogic Host Adapter Port(s) on the system Host Adapters from different supported vendors co-exists on your system. Unsupported model from Vendor Emulex exists. Warning: Duplicate module options detected. Option in /etc/modprobe.conf ( max_luns=256 ) takes precedence over MPP default setting ( max_luns=512 ). Creating new MPP initrd image...
10 of 14
22/06/2012 15:13
Question: How do I get logs from RDAC in the Linux OS? Answer: Use the mppSupport command to obtain several logs related to RDAC. The mppSupport command is found in the /opt/mpp/mppSupport directory. The command creates a file named mppSupportdata_hostname_RDAC version_datetime.tar.gz in the /tmp directory.
Question: How does persistent naming work? Answer: The Linux OS SCSI device names can change when the host system restarts. Use a utility, such as devlabel, to create user-defined device names that will map devices based on a unique identifier. The udev method is the preferred method for SLES10 and RHEL 5.
Question: What must I do after applying a kernel update? Answer: After you apply the kernel update and start the new kernel, perform these steps to build the RDAC Initial Ram Disk image (initrd image) for the new kernel: 1. Change the directory to the Linux RDAC source code directory. 2. Type the following command, and press Enter. make uninstall 3. Reinstall RDAC.
Question: What is the Initial Ram Disk Image (initrd image), and how do I create a new initrd image? Answer: The initrd image is automatically created when the driver is installed by using the make install command. The boot loader configuration file must have an entry for this newly created image. The initrd image is located in the boot partition. The file is named mpp-uname -r.img. For a driver update, if the system already has a previous entry for RDAC, the system administrator must modify the existing RDAC entry in the boot loader configuration file. In most of the cases, no change is required if the kernel version is the same. To create a new initrd image, type the following command and press Enter. # mppUpdate The old image file is overwritten with the new image file. If third-party drivers are needed to be added to the initrd image, change the /etc/sysconfig/kernel file (SuSE) with the third-party driver entries. Run the mppUpdate command again to create a new initrd image.
Question: How can I see if volumes have been added? Answer: Run hot_add -s or hot_add to add the newly mapped volumes.
Question: How do I remove unmapped or disconnected devices from the existing host? Answer: Run hot_add -d to remove all unmapped or disconnected devices.
Question: What if I remap a LUN from the storage array? Answer: Run hot_add -u to update the host with the changed LUN mapping.
Question: What if I change the size of the LUN on the storage array? Answer: Run hot_add -c to change the size of the LUN on the host.
Question: How do I make sure that RDAC finds the available storage arrays? Answer: To make sure that the RDAC driver has found the available storage arrays and created virtual storage arrays for them, type the following commands, and press Enter after each command. # ls -lR /proc/mpp # mppUtil -a # /opt/mpp/lsvdev To show all attached and discovered volumes, type the following command and press Enter. # cat /proc/scsi/scsi
Caution - Changing the storage array name can cause host applications to lose access to the storage array if the host is running certain path failover drivers. If any of your hosts are running path failover drivers, please update the storage array name in your path failover drivers configuration file before rebooting the
11 of 14
22/06/2012 15:13
host machine to insure uninterrupted access to the storage array. Refer to your path failover driver documentation for more details.
Answer: The path failover drivers that cause this warning are the RDAC drivers on Linux. The storage array user label is used for storage system-to-virtual target ID binding in the RDAC driver. For the Linux OS, change the following file to add the storage array user label and its virtual target ID. # more /var/mpp/devicemapping
Error Levels
The failover driver has five error levels for messages that are logged to the Linux OS error log: Fatal errors Controller failover events Path failover events Retry errors Recovered errors
Fatal Errors
TABLE 5 lists the possible Linux OS fatal driver errors.
Close failed on virtual bus node Error trying to insert a new volume path
12 of 14
22/06/2012 15:13
Command aborted
Hardware error
13 of 14
22/06/2012 15:13
Sun StorageTek RDAC Multipath Failover Driver Installation Guide for Linux OS
820-4738-13
14 of 14
22/06/2012 15:13