最近遇到某省的legato备份问题,这个问题在春节后一来就遇到了。在legato界面,我们看到的报错是:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
…… 02/24/10 12:01:00 nsrd: savegroup info: starting db_arch (with 1 client(s)) 02/24/10 12:01:15 nsrd: Jukebox 'msl6000' failed: Input/output error 02/24/10 12:01:15 nsrd: Jukebox 'msl6000' failed: Input/output error 02/24/10 12:01:53 nsrd: Jukebox 'msl6000' failed: No such file or directory 02/24/10 12:01:53 nsrd: Jukebox 'msl6000' failed: No such file or directory 02/24/10 12:01:54 nsrd: media info: suggest mounting QWB507L2 on ah-db01 for writing to pool 'miscdb' 02/24/10 12:01:54 nsrd: media waiting event: Waiting for 1 writable volumes to backup pool 'miscdb' tape(s) on ah-db01 02/24/10 12:01:56 nsrd: Jukebox 'msl6000' failed: No such file or directory 02/24/10 12:01:56 nsrd: Jukebox 'msl6000' failed: No such file or directory 02/24/10 12:02:05 nsrd: Jukebox 'msl6000' failed: Input/output error 02/24/10 12:02:05 nsrd: Jukebox 'msl6000' failed: Input/output error 02/24/10 12:02:14 nsrd: Jukebox 'msl6000' failed: Input/output error 02/24/10 12:02:14 nsrd: Jukebox 'msl6000' failed: Input/output error 02/24/10 12:02:21 nsrd: Jukebox 'msl6000' failed: Input/output error 02/24/10 12:02:21 nsrd: Jukebox 'msl6000' failed: Input/output error 02/24/10 12:02:40 nsrd: Jukebox 'msl6000' failed: Input/output error 02/24/10 12:02:40 nsrd: Jukebox 'msl6000' failed: Input/output error 02/24/10 12:02:44 nsrd: shutting down remote daemons 02/24/10 12:02:45 nsrd: Jukebox 'msl6000' failed: Input/output error 02/24/10 12:02:45 nsrd: Jukebox 'msl6000' failed: Input/output error 02/24/10 12:02:45 nsrd: media info: Suggest manually labeling a new writable volume for pool 'dbreport' 02/24/10 12:02:45 nsrd: media event cleared: Waiting for 1 writable volumes to backup pool 'miscdb' tape(s) on ah-db01 02/24/10 12:02:45 nsrd: media waiting event: Waiting for 1 writable volumes to backup pool 'miscdb' tape(s) on ah_bak01 02/24/10 12:02:53 savegrp: group db_arch aborted. …… |
基本看到的情况是在备份的时候,开始做verify label的时候,报错No such file or directory和Input/output error,这个很有可能是在legato的界面中还能看到配置的driver,但是在调用这个driver的时候找不到实际的物理设备了。
于是在备份服务器上点开“硬件”-“设备管理器”,发现里面的磁带驱动器和介质变换器确实没有了!
请在机房的同事帮忙查看带库是否有问题,同事说带库已经down掉了。
重启带库,发现在备份服务器里面还是看不到driver,但是在client端,也就是数据库服务器上通过inquire还是能看到的。重启server,能看到driver了。再次尝试备份,备份到一半,一个driver消失了,备份卡住,再过一会儿,另一个driver也消失了,介质变换器也消失。
请机房的同事查看带库的情况,带库还是down了,是电源模块有问题,导致带库不稳定。等待设备厂家来更换电源模块。
更换完成电源模块后,启动带库,在备份主机只能看到一个driver,重启备份主机也是只能看到一个。厂家关闭备份主机后重新插拔了光纤卡,再次启动备份主机后,识别到了2个driver。但是测试备份时,只能一个driver备份,另一个driver会卡住。
尝试用清洗带清洗2个带子,但是发现报错:
1 2 3 4 5 |
Error: Server refused connection. 02/24/10 15:49:14 nsrmmd #3: Cannot set \\.\Tape0 block size: 信号灯超时时间已到。 02/24/10 15:49:14 nsrd: media critical: TapeAlert flag "Expired cleaning media" has been posted for \\.\Tape0 02/24/10 15:49:14 nsrd: media warning: \\.\Tape0 reading: read open error: drive status is Drive reports no error - but state is unknown Blat v2.4 w/GSS encryption (build : Jan 15 2005 08:32:11) |
这个是清洗带过期的报错。于是更换清洗带。
更换之前尝试重新用jbconfig配置jukebook。
再次备份,发现2个driver都不能备份了!此时报错:
1 2 3 4 |
02/24/10 17:15:41 nsrmmd #3: Diagnostic: Tape device \\.\Tape0 is empty 02/24/10 17:15:51 nsrmmd #3: Diagnostic: Tape device \\.\Tape0 is empty 02/24/10 17:15:52 nsrd: media warning: \\.\Tape0 reading: read open error: drive status is There is not a tape in the drive 02/24/10 17:15:52 nsrd: \\.\Tape0 1:Label without mount operation in progress |
drive status is There is not a tape in the drive——难道是机械臂的问题?没有将磁带load到driver,请在机房的同事看了,确定是已经load进了driver。为什么会识别不到?
这个报错,在网上查资料是(见此链接)
1 2 |
I found the problem. Customer has redundant fibre connections to drives and when they changed FC cables, they missed something, so NW worked with wrong devices scidev@4.0.0 instead scidev@2.0.0. Correct cabling solved the problem!! |
请机房的同事检查光纤线的连接情况,结果确认从带库到光纤交换机的连接都正常。
问题出在哪里?我们再来回顾一下当前的情况:
(1)、备份服务器和备份client均能识别driver。在备份服务器端看到driver正常,驱动也正常安装。没有出现driver消失或者driver无法识别的硬件问题。通过inquire或者ioscan -fnCtape都能看到driver的情况。
(2)、备份无法正常进行,做inventory清点没有问题,但是做label标签,甚至做一个mount磁带,都会报错drive status is There is not a tape in the drive。但是检查光纤连接正常。
电源模块已经换过,硬件也能识别到。所以不太好确定硬件是否有问题。如果确定不了硬件问题,也就不好让设备厂家进行更换,因为之前设备厂家说在更换完电源模块之后,已经进行了一次硬件检查,说没有问题的。那我们如何检查硬件是否真的正常呢?这个时候,就要请出hp带库检测的专业工具,也就是本文的重点:LTT出场了。
HP LTT的全称是HP StorageWorks Library and Tape Tools,是HP用来检查HP带库的一个非常有用的工具。ltt可以安装在备份服务器端,模拟磁带的读写情况,来检查driver或者media是否正常。各个os的版本都有,可以在这里免费下载。
我们在备份server安装好LTT之后,就开始测试了。注意此时的测试是脱离legato的,我们要在备份主机上证明带库的硬件是否存在问题。只有证明了硬件没有问题,才能配置调试后续的legato。
我们启动LTT之后,点击其中一个driver,让读取这话driver的信息,我们发现在测试过程中,经常遇到超时的情况:
当我们点击Test,开始测试Driver Assessment test的时候,发现报错没有磁带在driver中:
而在这之前,我们已经手工的load了一卷磁带到Driver中:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
ah-db01#[/sbin/init.d]mc -p /dev/rac/c14t0d0 -r DS DT_slot_1 FULL QWB425 DT_slot_2 EMPTY ST_slot_1 FULL QWB417 ST_slot_2 FULL QWB418 ST_slot_3 FULL QWB419 ST_slot_4 FULL QWB420 ST_slot_5 FULL QWB421 ST_slot_6 FULL QWB422 ST_slot_7 FULL QWB423 ST_slot_8 FULL QWB424 ST_slot_9 EMPTY ST_slot_10 FULL QWB434 ST_slot_11 FULL QWB435 ST_slot_12 FULL QWB497 ST_slot_13 FULL QWB496 ST_slot_14 FULL QWB499 ST_slot_15 FULL QWB506 ST_slot_16 FULL QWB498 ST_slot_17 FULL QWB508 ST_slot_18 FULL QWB500 ST_slot_19 FULL QWB510 ST_slot_20 FULL QWB511 ST_slot_21 EMPTY ST_slot_22 FULL QWB502 ST_slot_23 FULL QWB501 ST_slot_24 FULL QWB509 ST_slot_25 EMPTY ST_slot_26 EMPTY ST_slot_27 FULL QWB507 ST_slot_28 EMPTY ST_slot_29 FULL QWB433 ah-db01#[/sbin/init.d] |
既然已经load进了带子,但是LTT做测试的时候还是认为没有带子,无法读写测试。那就应该可以确定是driver的问题了。
把该情况和设备厂家说明后,要求厂家换driver。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
换前: scsidev@14.0.1:HP Ultrium 2-SCSI F59W|Tape, /dev/rmt/c14t0d1BESTnb S/N: HUL5A04564 ATNN:HP Ultrium 2-SCSI HUL5A04564 WWNN:50060B00002BBEFE scsidev@14.0.2:HP Ultrium 2-SCSI F59W|Tape, /dev/rmt/c14t0d2BESTnb S/N: HUL5A07372 ATNN:HP Ultrium 2-SCSI HUL5A07372 WWNN:50060B00002BC9F6 换后: scsidev@14.0.1:HP Ultrium 2-SCSI F59W|Tape, /dev/rmt/c14t0d1BESTnb S/N: HUL5A04564 ATNN:HP Ultrium 2-SCSI HUL5A04564 WWNN:50060B00002BBEFE scsidev@14.0.2:HP Ultrium 2-SCSI F6AW|Tape, /dev/rmt/c14t0d2BESTnb S/N: HUL8A06538 ATNN:HP Ultrium 2-SCSI HUL8A06538 WWNN:50060B000028C845 |
更换后,在备份主机上更新新的driver的驱动,使得备份主机能识别新的driver。
我们注意新的driver的SN是HUL8A06538。在LTT界面,选择这个driver,开始准备测试:
在这里,不得不提一下,更换driver后,读取这个driver的信息很快,在identity这个driver信息的时候,不到2分钟就出来了。
我们手工load上一个带子做读写测试:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
ah-db01#[/sbin/init.d]mc -p /dev/rac/c14t0d0 -r DS DT_slot_1 FULL QWB425 DT_slot_2 EMPTY ST_slot_1 FULL QWB417 ST_slot_2 FULL QWB418 ST_slot_3 FULL QWB419 ST_slot_4 FULL QWB420 ST_slot_5 EMPTY ST_slot_6 FULL QWB422 ST_slot_7 FULL QWB423 ST_slot_8 FULL QWB424 ST_slot_9 FULL QWB421 ST_slot_10 FULL QWB434 ST_slot_11 FULL QWB435 ST_slot_12 FULL QWB497 ST_slot_13 FULL QWB496 ST_slot_14 FULL QWB499 ST_slot_15 FULL QWB506 ST_slot_16 FULL QWB498 ST_slot_17 FULL QWB508 ST_slot_18 FULL QWB500 ST_slot_19 FULL QWB510 ST_slot_20 FULL QWB511 ST_slot_21 EMPTY ST_slot_22 FULL QWB502 ST_slot_23 FULL QWB501 ST_slot_24 FULL QWB509 ST_slot_25 EMPTY ST_slot_26 EMPTY ST_slot_27 FULL QWB507 ST_slot_28 EMPTY ST_slot_29 FULL QWB433 |
我们开始做测试,这次测试很顺利:
测试另一个driver,也同样没有问题:
于是,就基本判断目前硬件没问题。开始配置legato。
但是legato备份的时候还是报错了:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
03/01/10 20:20:27 nsrd: \\.\Tape0 1:Verify label operation in progress 03/01/10 20:20:37 nsrmmd #3: Diagnostic: Tape device \\.\Tape0 is empty 03/01/10 20:20:48 nsrmmd #3: Diagnostic: Tape device \\.\Tape0 is empty 03/01/10 20:20:48 nsrd: media warning: \\.\Tape0 reading: read open error: drive status is There is not a tape in the drive 03/01/10 20:20:50 nsrd: nsrjb notice: nsrjb -j msl6000 -Y -O31 -L -g -bmiscdb -f \\.\Tape0 -S 1-1 03/01/10 20:20:50 nsrd: \\.\Tape0 1:Verify label operation in progress 03/01/10 20:21:00 nsrmmd #3: Diagnostic: Tape device \\.\Tape0 is empty 03/01/10 20:21:10 nsrmmd #3: Diagnostic: Tape device \\.\Tape0 is empty 03/01/10 20:21:11 nsrd: media warning: \\.\Tape0 reading: read open error: drive status is There is not a tape in the drive 03/01/10 20:21:11 nsrd: \\.\Tape0 1:Label without mount operation in progress 03/01/10 20:21:21 nsrmmd #3: Diagnostic: Tape device \\.\Tape0 is empty 03/01/10 20:21:23 nsrd: \\.\Tape0 1:Eject operation in progress 03/01/10 20:21:33 nsrmmd #3: Diagnostic: Tape device \\.\Tape0 is empty 03/01/10 20:21:44 nsrmmd #3: Diagnostic: Tape device \\.\Tape0 is empty |
之前查到drive status is There is not a tape in the drive是光纤的连接的问题,但是光纤连接都没问题,LTT测试也通过了,难道是里面的driver连接接反了?
尝试再次重新配置jbconfig,在配置时,先配//./Tape1,再配//./Tape0。当然,这边Tape0和Tape1对应的driver的SN还是要对应备份client 端的SN的。只是在配置的时候,先写了//./Tape1。
配置完成后测试备份,真的证实了我的猜想,里面的driver接反了。当反配jbconfig的时候,备份成功了:
至此,又一个棘手的legato备份问题解决!
在处理legato问题的时候,如果无法确定是否硬件问题,那么相信LTT吧!
4条评论
——“ltt可以安装在备份服务器端,模拟磁带的读写情况,来检查driver或者media是否正常。”
在DP的概念中,LTT应该安装在DA(Disk Agent)上还是MA(Media Agent)上还是Cell Manager上?举例来说:
两台RP4440(接盘阵,DA)、MSL6060、Cell Manager(Windows 平台,MA?)连接到FC Switch上,那LTT应该是在RP4440上还是Cell Manager上运行?谢谢!
在cell manger上。我们备份的时候有client端和server端,cell manger是server端,我们安装在这个主机上,
哦,不知在客户端HP-UX上用hp_ltt可不可以检查。
我也遇到过,后来找hp给磁带库换了driver和一个光纤模块才好