Tuesday, September 30, 2008

Installing IBM System Storage 3576/TS3310 Tape Library (FC) on Solaris

Installing IBM System Storage 3576/TS3310 Tape Library (FC) on solaris

reference links
http://www-03.ibm.com/systems/storage/tape/ts3310/index.html


/dev/rmt


Step 1.
create zone for backup server HBA and LTO tape library on the switches

Backup_LTO_PCIe4_2
backup_server-> HBA Port WWN: 10000000c9724c87 - (OS Dev name: /dev/cfg/c5)
LTO4_TAPE_DRV_1 -> HBA Port WWN: 500308c09d274005

Step 2.
Active the new zone on the switch, make sure the new zone is listed in the zones config.

Step3.
make sure you see connectivity from the sun box to the tape library
#fcinfo hba-port -l
HBA Port WWN: 10000000c9724c87
OS Device Name: /dev/cfg/c5 <------- device name
Manufacturer: Emulex
Model: LPe11002-S
Firmware Version: 2.72a2
FCode/BIOS Version: 1.50a9
Type: N-port
State: online <------ check this status
Supported Speeds: 1Gb 2Gb 4Gb
Current Speed: 4Gb
Node WWN: 20000000c9724c87
Link Error Statistics:
Link Failure Count: 0
Loss of Sync Count: 4
Loss of Signal Count: 1
Primitive Seq Protocol Error Count: 0
Invalid Tx Word Count: 12
Invalid CRC Count: 0

#fcinfo hba-port -l | grep online
State: online
State: online
State: online
State: online

quick way to check is grep for online, all the connected HBA should be online.
here in above example, 2 HBA are connected to DS4800 and 2 are connected to TS3310

online status tells you the hbas are connnected to the switch. however before using attaching WWN from the server to WWN LTO make sure you have zone enabled.


Step 4.
Once you have the connectivity,
take a look at c5
#cfgadm -al
connect C5 with the LTO WWN

#cfgadm -c configure c5::500308c09d274005 <------- this is LTO WWN
#cfgadm -c configure c6::500308c09d274001 <------- this is LTO WWN

result looks like this
c5 fc-fabric connected configured unknown
c5::500308c09d274005 tape connected configured unknown


Step 5.
then you should see the /dev/rmt devices
#ls -l /dev/rmt/0 <--------- first tape drive
0 0bn 0cb 0cn 0hb 0hn 0lb 0ln 0mb 0mn 0u 0ubn
0b 0c 0cbn 0h 0hbn 0l 0lbn 0m 0mbn 0n 0ub 0un

#ls -l /dev/rmt/1 <--------- second tape drive

in the above example you have two tape connected.



Step 6.
Check the device paths for FC tape drives
# luxadm inq /dev/rmt/0h

INQUIRY:
Physical Path:
/devices/pci@0/pci@0/pci@8/pci@0/pci@2/SUNW,emlxs@0,1/fp@0,0/st@w500308c09d274005,0:h
Vendor: IBM
Product: ULT3580-TD4
Revision: 7A31
Serial Number 1310048383
Device type: 0x1 (Tape device)
Removable media: yes
Medium Changer Element: no
ISO version: 0
ECMA version: 0
ANSI version: 3 (Device complies to SCSI-3)
Terminate task: no
Response data format: 2
Additional length: 0x35
Command queueing: no
VENDOR-SPECIFIC PARAMETERS
Byte# Hex Value ASCII
36 00 00 00 00 31 33 31 30 30 34 38 33 38 33 00 30 ....1310048383.0
00 00 00 00 ....



if you here without any problems, you can do a quick tar test writing to tape directly.
Go ahead and manually put a media in tape drive and try these commands

1. tape drive status:
# mt -f /dev/rmt/0 status
# mt -f /dev/rmt/1 status


2. Backup directory /www and /home with tar command (z - compressed):
# tar -cvf /dev/rmt/0 /home



Step 7.
Next step is making the robot working, which moves the tapes to tape drive 1 and 2

Download these drivers for solaris
ftp://ftp.software.ibm.com/storage/devdrvr/Solaris/

Download IBM TotalStorage Tape Diagnostic Tool (ITDT) v2.0

the file name is itdtinst2.2Solaris
>>1. Download itdtinstSolaris to a directory of your choice.
>>2. Make itdtinst executable with "chmod 700 itdtinstSolaris".
>>3. Execute itdtinstSolaris.
>>4. Configure the sgen driver


itdt scan output
# itdt
IBM TotalStorage Tape Diagnostic Tool - Device List

Host Bus ID LUN Model Serial Ucode Changer [#]
+----+----+----+----+----+--------------+------------+------+------------+-+
| 0 | 5 | 0 | ## | 1 | 3576-MTL | 1311997_LLA| 410G | | |
| 1 | | | | | | | | | |
| 2 | | | | | | | | | |
| 3 | | | | | | | | | |
| 4 | | | | | | | | | |
| 5 | | | | | | | | | |
| 6 | | | | | | | | | |
| 7 | | | | | | | | | |
| 8 | | | | | | | | | |
| 9 | | | | | | | | | |
| 10 | | | | | | | | | |
| 11 | | | | | | | | | |
+----+----+----+----+----+--------------+------------+------+------------+-+


#configure the sgen drivers for
make sure the output of /sgen_solaris_conf.sh matches the /kerner/drv/sgen.conf

the /kernel/drv/sgen.conf file is missing something in order to mtx works properly.
On the sgen.conf example below, target 5 is a tape changer and target 6 is the tape drive:
device-type-config-list="changer","sequential
name="sgen" class="scsi" target=5 lun=0;
name="sgen" class="scsi" target=6 lun=0;

# mtx -f /dev/scsi/changer/c5t500308C09D274005d1 inquiry
- testing the robot status

#/opt/csw/sbin/mtx -f /dev/scsi/changer/c5t500308C09D274005d1 load 1 0
- this commands tells the robot to pick the tape from slot 1 and put it in drive 0


Step 8.
On Solaris, use either the IBMtape driver or the native st driver
..... On HP-UX, use the IBM atdd tape device driver



#ls -l /dev/rmt/*l
lrwxrwxrwx 1 root root 90 Sep 22 14:54 /dev/rmt/0l -> ../../devices/p ci@0/pci@0/pci@8/pci@0/pci@2/SUNW,emlxs@0,1/fp@0,0/st@w500308c09d274005,0:l

In the preceding line example /dev/rmt/0l is controller by st device driver and associated with the device at fiber channel using EMULEX cards at LUN 0

If it shows something like
lrwxrwxrwx 1 root root 90 Sep 22 14:54 /dev/rmt/0l -> ../../devices/iommu@f,e000000/sbus@f,e0001000/QLGC,isp@3,10000/st@2,0:1

then it is st device driver and associated with SCSI address 2, LUN 0

-------------------------------------------------------------------------------------------
Here we need to note the special file number, owning driver, SCSI target address and LUN
-------------------------------------------------------------------------------------------








# /opt/csw/sbin/mtx -f /dev/scsi/changer/c5t500308C09D274005d1 status
Oct 27 14:02:03 dam-db2 sendmail[15826]: [ID 702911 mail.alert] unable to qualify my own domain name (dam-db2) -- using short name
Storage Changer /dev/scsi/changer/c5t500308C09D274005d1:2 Drives, 36 Slots ( 6 Import/Export )
Data Transfer Element 0:Empty
Data Transfer Element 1:Empty
Storage Element 1:Empty:VolumeTag=
Storage Element 2:Empty:VolumeTag=
Storage Element 3:Empty:VolumeTag=
Storage Element 4:Empty:VolumeTag=
Storage Element 5:Empty:VolumeTag=
Storage Element 6:Empty:VolumeTag=
Storage Element 7:Empty:VolumeTag=
Storage Element 8:Empty:VolumeTag=
Storage Element 9:Empty:VolumeTag=
Storage Element 10:Empty:VolumeTag=
Storage Element 11:Empty:VolumeTag=
Storage Element 12:Empty:VolumeTag=
Storage Element 13:Empty:VolumeTag=
Storage Element 14:Empty:VolumeTag=
Storage Element 15:Empty:VolumeTag=
Storage Element 16:Empty:VolumeTag=
Storage Element 17:Empty:VolumeTag=
Storage Element 18:Empty:VolumeTag=
Storage Element 19:Empty:VolumeTag=
Storage Element 20:Empty:VolumeTag=
Storage Element 21:Empty:VolumeTag=
Storage Element 22:Empty:VolumeTag=
Storage Element 23:Empty:VolumeTag=
Storage Element 24:Empty:VolumeTag=
Storage Element 25:Empty:VolumeTag=
Storage Element 26:Empty:VolumeTag=
Storage Element 27:Empty:VolumeTag=
Storage Element 28:Empty:VolumeTag=
Storage Element 29:Empty:VolumeTag=
Storage Element 30:Empty:VolumeTag=
Storage Element 31 IMPORT/EXPORT:Empty:VolumeTag=
Storage Element 32 IMPORT/EXPORT:Empty:VolumeTag=
Storage Element 33 IMPORT/EXPORT:Empty:VolumeTag=
Storage Element 34 IMPORT/EXPORT:Empty:VolumeTag=
Storage Element 35 IMPORT/EXPORT:Empty:VolumeTag=
Storage Element 36 IMPORT/EXPORT:Empty:VolumeTag=


-----------------------------------------------------------------

root@dam-db2 # /opt/csw/sbin/mtx -f /dev/scsi/changer/c5t500308C09D274005d1 status
Storage Changer /dev/scsi/changer/c5t500308C09D274005d1:2 Drives, 36 Slots ( 6 Import/Export )
Data Transfer Element 0:Empty
Data Transfer Element 1:Empty
Storage Element 1:Full :VolumeTag=A00033L4
Storage Element 2:Full :VolumeTag=A00030L4
Storage Element 3:Full :VolumeTag=A00032L4
Storage Element 4:Full :VolumeTag=A00031L4
Storage Element 5:Full :VolumeTag=A00039L4
Storage Element 6:Full :VolumeTag=A00038L4
Storage Element 7:Full :VolumeTag=A00034L4
Storage Element 8:Full :VolumeTag=A00024L4
Storage Element 9:Full :VolumeTag=A00021L4
Storage Element 10:Full :VolumeTag=A00022L4
Storage Element 11:Full :VolumeTag=A00020L4
Storage Element 12:Full :VolumeTag=A00037L4
Storage Element 13:Full :VolumeTag=A00000L4
Storage Element 14:Full :VolumeTag=A00023L4
Storage Element 15:Full :VolumeTag=A00001L4
Storage Element 16:Full :VolumeTag=A00002L4
Storage Element 17:Full :VolumeTag=A00003L4
Storage Element 18:Full :VolumeTag=A00004L4
Storage Element 19:Full :VolumeTag=A00005L4
Storage Element 20:Full :VolumeTag=A00008L4
Storage Element 21:Full :VolumeTag=A00006L4
Storage Element 22:Full :VolumeTag=A00009L4
Storage Element 23:Full :VolumeTag=A00015L4
Storage Element 24:Full :VolumeTag=A00019L4
Storage Element 25:Full :VolumeTag=A00016L4
Storage Element 26:Full :VolumeTag=A00017L4
Storage Element 27:Full :VolumeTag=A00010L4
Storage Element 28:Full :VolumeTag=A00011L4
Storage Element 29:Full :VolumeTag=A00012L4
Storage Element 30:Full :VolumeTag=A00013L4
Storage Element 31 IMPORT/EXPORT:Empty:VolumeTag=
Storage Element 32 IMPORT/EXPORT:Empty:VolumeTag=
Storage Element 33 IMPORT/EXPORT:Empty:VolumeTag=
Storage Element 34 IMPORT/EXPORT:Empty:VolumeTag=
Storage Element 35 IMPORT/EXPORT:Empty:VolumeTag=
Storage Element 36 IMPORT/EXPORT:Empty:VolumeTag=

5 comments:

Anonymous said...

Could you please post the snmpwalk output of a IBM TS3310 TapeLibrary.

Pankaj Gautam said...

what do you want to do?

Anonymous said...

Nice article..... easy to download

Anonymous said...

How to find my current firmware version of TS3310 Tape Library using command line

Anonymous said...

Anyone please answer my above question?