ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 关于TSM磁带回收的一些概念和案例

关于TSM磁带回收的一些概念和案例

原创 Linux操作系统 作者:lenx2000 时间:2009-08-03 17:31:37 0 删除 编辑
TSM磁带使用
开始往empty的磁带中写入数据,磁带状态变为filling,到磁带写满,状态变为full,这时使用率肯定是100%。TSM会每天根据备份策略检查已备份数据,对过期数据做失效处理,这就会使磁带的使用率逐步降低,但磁带的状态一直是full。当磁带的使用率降到reclaim的比例时,TSM会起动reclaim进程,将磁带上还未过期的数据移到另一合带,这合带的状态会变为empty。如果不设置reclaim,则直到这合带上的数据全部过期才变为empty。这样就完成了一个磁带使用的循环。


Reclamation回收概念
由于顺序卷只能被成功的从头写到尾,且只能写一次,TSM不会再重写该卷中因过期而empty的部分。由于一个顺序卷可能很难所有的文件都过期,所以只能通过手工回收来回收空间,回收卷的状态应该是"scratch"或"filling"中的一种,而且被回收的卷状态应该是"full",一旦被回收的卷被empty,它的状态会返回scratch.
通常回收需要2个或更多的驱动器会更有效,但是,也可以通过设置RECLAIMSTGpool参数来指定一个顺序存储池, reclaimstgpool允许指定另一个存储池的顺序卷作为他的holding area.这个存储池必须为primary sequential storage pool.由于该存储池必须为顺序的,所以可以指定其设备类为FILE.
在指定该顺序存储池为回池后,还要将该存储池的next pool设为source存储池,这样就可以形成一个循环。

浅析TSM磁带空间回收-Reclaimation

TSM Reclaimation主要是指将磁带重新声明成为一盘新的磁带,并且放到scratch pool里面的动作。
此处只适合sequential media,也就是磁带存储池。
由于备份的内容指定了过期时间,或者备份对象已经被删除了,TSM会将这些保存在磁带上的备份数据标记成为“expired、deleted”。
然后由定期的expire inventory将这部分空间mark 成为virtual free space 显示在pcnt util里面。

但是此时的磁带上,数据并未真正的删除,仅仅是被标记而已。
而且这些fake data和real data混杂在一起,导致该vol被restore调用的时候,变得很慢。
因为同一个file space里面可能同一次备份进来的内容,但是不一定都还是latest version,就会造成断断续续的碎片。

这时TSM就可以通过stgpool的reclaim参数调整,来实现对磁带的整盘回收。
可以reclaim的数据就是指那些无用的碎片,当这些碎片占的比例达到reclaim threshold的时候,这盘磁带将会被reclaim。
比如一盘磁带上的无用碎片达到了64%,而reclaimhold值为50%,那么将会触发对这盘磁带的回收。

下面是一些reclaim的要点:
1、reclaim只能启动一个进程,如果启动多个将会报错,尽管你有多余的driver
2、reclaim通常情况每60分钟调用一次,也就是说改过参数以后一个小时内,reclaim就会开始。因此必须选择非关键备分时间进行,否则可能映像正常备份任务
3、如果只有一个driver,那么reclaim必须指定磁盘stgpool作为reclaim pool,否则reclaim会失败(根据磁带空闲空间和须导出数据而定)
4、reclaim仅对full的磁带进行,如果一个磁带还没有写满,reclaim不会关心它
5、如果选择了reclaim pool,请一定要记住:将这个stgpool的next pool设置成为正在被reclaim的stgpool,否则导出的数据无法导回去,reclaim将会失败
6、reclaim操作可以手工触发,reclaim stgpool ,可以指定时间限制

注意:
一定要跟coallocation分别开,那个仅仅是按照node等选项分组数据,可以在一开始写入的时候就进行了。
coallocation可以不是必需的,确切说有很多时候都不会这样用,这只是一个改善性能的选项。
reclaim就几乎是必须的,想搭建一套完善的强壮的几乎不用怎么维护的TSM,就一定得用到这个东西了。
否则,没用多久,就得加磁带了。


转:案例TSM单驱动器磁带回收测试记录
   测试环境:
1.        win 2003 + TSM server 5.3.2
2.        centos 4.4 + TSM client 5.3.0
3.        HP Dat 40 磁带机
4.        HP DDS4 磁带

测试描述:
        在win2003上安装tsm 的server 端.在centos4.4 上安装client端.在server端定义一个DISK存储池diskpool,一个磁带存储池testpool,然后在client端重复备份一个比较大的文件,使一盘磁带的使用率达到100%.然后再定义一个disk存储池huishoupool,将testpool的回收池设置为 huishoupool,将huishoupool的nextpool设置为testpool.
        设置完成后,使用q vol tapename f=d查看磁带详细情况. 有一项”Pct. Reclaimable Space:”标识出,此盘磁带有多少可回收空间,在此之前,可以使用exp in命令来启动过期进程,即让TSM来判断有那些备份版本已经过期,可以从磁带上删除,退出所占用的空间.
        查看过可回收空间后,如果超过了60%,并且设置好了回收池.则TSM会自动开始回收,如果没有设置回收池,TSM不会启动回收进程.如果可回收空间不到 60%,但却有回收需求,可手动upd 存储池,通过查看q stg stgpoolname f=d的”Pct. Reclaimable Space:”选项查看修改是否成功.
        当某盘磁带的可回收空间比已经达到此磁带所属存储池的设置后,TSM开始回收进程,此进程无需人工干预,但需要注意控制台(dsmadmc –con)中的消息提示,适时按要求的插入磁带之类的东西.
        回收进程结束后,可通过q vol命令查看回收结果.并需要通过upd stg huishoupool hig=00 low=00命令来将回收池中的数据迁移回testpool,完成后,可以删除掉回收池,避免浪费磁盘空间.

测试细节:
1.        存储池,卷,磁带的详细信息:
存储池大致信息
tsm:H001386-OEQ>q stg                                                                                                      

Storage      Device       Estimated    Pct    Pct  High  Low  Next Stora-
Pool Name    Class Name    Capacity   Util   Migr   Mig  Mig  ge Pool
                                                    Pct  Pct
-----------  ----------  ----------  -----  -----  ----  ---  -----------
ARCHIVEPOOL  DISK             0.0 M    0.0    0.0    90   70  FILPOOL1
BACKUPPOOL   DISK             0.0 M    0.0    0.0    90   70  FILPOOL1
DISKPOOL     DISK               3 G   67.8   67.8    90   70  TESTPOOL
FILPOOL1     FILEDEV1         0.0 M    0.0    0.0    90   70
SPACEMGPOOL  DISK             0.0 M    0.0    0.0    90   70
TESTPOOL     TESTDEVCL-        41 G   64.6  100.0    90   70
              ASS

磁带大致信息
tsm:H001386-OEQ>q vol

Volume Name               Storage      Device      Estimated    Pct   Volume
                          Pool Name    Class Name   Capacity   Util   Status
------------------------  -----------  ----------  ---------  -----  --------
D:\DISKPOOL               DISKPOOL     DISK          3,000.0   67.8  On-Line
TSM1                      TESTPOOL     TESTDEVCL-   40,960.0   64.6  Filling

存储池testpool详细信息:
tsm:H001386-OEQ>q stg testpool f=d                                                                                          

               Storage Pool Name: TESTPOOL                              
               Storage Pool Type: Primary                           
               Device Class Name: TESTDEVCLASS
              Estimated Capacity: 41 G                                                                                       
              Space Trigger Util:
                        Pct Util: 64.6                                      
                        Pct Migr: 100.0                                    
                     Pct Logical: 100.0                                      
                    High Mig Pct: 90                                       
                     Low Mig Pct: 70                                       
                 Migration Delay: 0        
              Migration Continue: Yes
             Migration Processes: 1                                                                                          
           Reclamation Processes: 1
               Next Storage Pool:          (指定此存储池的下一个存储池)                              
            Reclaim Storage Pool:      (指定此存储池的对应回收池)                                    
          Maximum Size Threshold: No Limit                                   
                          Access: Read/Write                                
                     Description:                                          
               Overflow Location:         
           Cache Migrated Files?:
        Collocate?: Group      
           Reclamation Threshold: 60           (指定此存储池的回收设定值)                                                                              
       Offsite Reclamation Limit:
Maximum Scratch Volumes Allowed: 0                                         
  Number of Scratch Volumes Used: 0                                         
   Delay Period for Volume Reuse: 0 Day(s)                                   
          Migration in Progress?: No                                       
            Amount Migrated (MB): 0.00                                      
Elapsed Migration Time (seconds): 0        
        Reclamation in Progress?: No
  Last Update by (administrator): ADMIN                                                                                      
           Last Update Date/Time: 2008-10-22 10:09:06
        Storage Pool Data Format: Native                                    
            Copy Storage Pool(s):                                          
         Continue Copy on Error?:                                            
                        CRC Data: No                                       
                Reclamation Type: Threshold

磁带tsm1的详细信息:
tsm:H001386-OEQ>q vol tsm1 f=d                       

                   Volume Name: TSM1                                                                                         
             Storage Pool Name: TESTPOOL                                                                                    
             Device Class Name: TESTDEVCLASS                                                                                 
            Estimated Capacity: 40,960.0                                                                                    
       Scaled Capacity Applied:
                      Pct Util: 69.6   (磁带当前使用率)
                 Volume Status: Filling                                                                                      
                        Access: Read/Write
        Pct. Reclaimable Space: 0.0       (磁带可回收空间比)                                                                                   
               Scratch Volume?: No      
               In Error State?: No            
      Number of Writable Sides: 1                                                                                            
       Number of Times Mounted: 17
             Write Pass Number: 1                                          
     Approx. Date Last Written: 2008-10-22 14:22:07                        
        Approx. Date Last Read: 2008-10-22 10:36:41                          
           Date Became Pending:                                             
        Number of Write Errors: 0                                          
         Number of Read Errors: 0         
               Volume Location:      
Volume is MVS Lanfree Capable : No                                                                                          
Last Update by (administrator): ADMIN                                       
         Last Update Date/Time: 2008-10-22 10:11:29                          
          Begin Reclaim Period:                                             
            End Reclaim Period:      

2.        回收过程
当TSM1磁带填满之后,q vol显示使用率达到100%,状态FULL,但这其中大部分都是已经过期的备份版本,这些过期的版本所占用的空间可以被释放出来,并回收,使用如下命令来手动过期:
Expi in
在tsm 5.3.2 中,TSM在默认情况下,每24分钟自动执行一次过期处理,所以在实际生产环境中,这一点不需要太多关注.
过期之后,查看磁带tsm1的详细情况如下:
tsm:H001386-OEQ>q vol tsm1 f=d                                                                                             

                   Volume Name: TSM1                                       
             Storage Pool Name: TESTPOOL                                                                                    
             Device Class Name: TESTDEVCLASS
            Estimated Capacity: 34,906.0                                                                                    
       Scaled Capacity Applied:            
                      Pct Util: 23.6     (使用率只有23.6,但是状态却满了,这是TSM中经常
                 Volume Status: Full           看到的情况,说明有空间可以回收了)                                                                              
                        Access: Read/Write
        Pct. Reclaimable Space: 76.4      (可回收空间的百分比)                                                                                   
               Scratch Volume?: No      
               In Error State?: No         
      Number of Writable Sides: 1                                                                                            
       Number of Times Mounted: 22                                                                                          
             Write Pass Number: 1                                                                                            
     Approx. Date Last Written: 2008-10-22 15:04:52
        Approx. Date Last Read: 2008-10-22 10:36:41                                                                          
           Date Became Pending:                                                                                             
        Number of Write Errors: 0
         Number of Read Errors: 0                                                                                            
               Volume Location:  
Volume is MVS Lanfree Capable : No                                          
Last Update by (administrator): ADMIN                                       
         Last Update Date/Time: 2008-10-22 10:11:29                                                                          
          Begin Reclaim Period:            
            End Reclaim Period:        
可以看到,这个磁带有76.4 的空间可以回收,超过了默认的60%的回收设置值,因此,下面可以开始定义回收池了

在定义回收池之前,先定义一个回收池专用设备类,主要是为了好看,条理清楚:
Def devclass huishoulei devtype=file dir=d:\temp
之后定义一个回收池,
Def stg huishoupool huishoulei maxscratch=10
这里的10是指在回收过程中,回收池可以使用多少个临时的文件类型的卷,也就是在磁盘上建立一个临时文件,每个文件的默认大小是2G.,这个设置是与上面定义的文件设备类相关,不是与存储池相关.定义了10个卷,也就是说,回收过程中,最大使用20G的空间.
开始设置testpool和huishoupool的层级关系:
upd stg testpool reclaimstgpool=huishoupool
upd stg huishoupool nextpool=testpool
至此,回收正式开始,在dsmadmc –con这个控制台中显示如下信息:

ANR0984I Process 11 for SPACE RECLAMATION started in the BACKGROUND at         
15:21:14.                                                                       
ANR4930I Reclamation process 11 started for primary storage pool TESTPOOL      
automatically, threshold=60, duration=None.                                    
ANR1040I Space reclamation started for volume TSM1, storage pool TESTPOOL      
(process number 11).                                                            
ANR1044I Removable volume TSM1 is required for space reclamation.               
ANR1176I Moving data for collocation set 1 of 2 on volume TSM1.                 
ANR8340I FILE volume D:\TEMP\00000006.BFS mounted.                              
ANR1340I Scratch volume D:\TEMP\00000006.BFS is now defined in storage pool     
HUISHOUPOOL.                                                                    
ANR0513I Process 11 opened output volume D:\TEMP\00000006.BFS.                  
ANR8336I Verifying label of 4MM volume TSM2 in drive TESTDRIVE (mt3.0.0.2).     
ANR8468I 4MM volume TSM2 dismounted from drive TESTDRIVE (mt3.0.0.2) in library
TESTLIBR.                                                                       
ANR8326I 005: Mount 4MM volume TSM1 R/O in drive TESTDRIVE (mt3.0.0.2) of      
library TESTLIBR within 60 minutes.         

此时,q pro会有如下显示:
    tsm:H001386-OEQ>q pro                                             
                                                                                                                             
Process Process Description  Status
  Number                                                                        
-------- -------------------- -------------------------------------------------
      11 Space Reclamation    Volume TSM1 (storage pool TESTPOOL), Moved Files:
                               0, Moved Bytes: 0, Unreadable Files: 0,         
                               Unreadable Bytes: 0. Current Physical File                                                   
                               (bytes): 3,148,808,168 Current input volume:
                               TSM1. Current output volume:                                                                  
                               D:\TEMP\00000006.BFS.

并且,在定义文件设备类的时候指定的d盘temp文件夹中多出来一个文件00000006.bfs,这就是TSM用来回收的临时卷文件.随着回收的继续,这些文件会不断加大,并且会增加N个这样的文件,直到达到设定的最大值.   

                迁移完成后,显示如下:
                ANR1041I Space reclamation ended for volume TSM1.                              
ANR4932I Reclamation process 11 ended for storage pool TESTPOOL.               
ANR0986I Process 11 for SPACE RECLAMATION running in the BACKGROUND processed   
16 items for a total of 8,654,369,819 bytes with a completion state of SUCCESS  
at 15:51:36.                                                                    
ANR4936I Reclamation of storage pool TESTPOOL has ended. Files reclaimed: 16,   
Bytes reclaimed: 8654369819, Files reconstructed: 0, Unreadable files: 0.     

此时,q vol如下:

tsm:H001386-OEQ>q vol                                                                                                      

Volume Name               Storage      Device      Estimated    Pct   Volume                                                
                          Pool Name    Class Name   Capacity   Util   Status                                                
------------------------  -----------  ----------  ---------  -----  --------   
D:\DISKPOOL               DISKPOOL     DISK          3,000.0    0.0  On-Line                                                
D:\TEMP\00000006.BFS      HUISHOUPOOL  HUISHOULEI    2,047.6  100.0    Full  
D:\TEMP\00000007.BFS      HUISHOUPOOL  HUISHOULEI    2,048.0   55.6  Filling   
D:\TEMP\00000008.BFS      HUISHOUPOOL  HUISHOULEI    2,047.4  100.0    Full     
D:\TEMP\00000009.BFS      HUISHOUPOOL  HUISHOULEI    2,047.5  100.0    Full   
D:\TEMP\0000000A.BFS      HUISHOUPOOL  HUISHOULEI    2,048.0   47.4  Filling   
TSM1                      TESTPOOL     TESTDEVCL-        0.0    0.0   Empty                                                  
                                        ASS                                
TSM2                      TESTPOOL     TESTDEVCL-        0.0    0.0   Empty                                                  
                                        ASS      

可以看到,tsm1的使用率变成了0,状态为empty,这说明,这盘磁带可以重复使用了.同时,多出来一些临时卷,所有迁移的数据都在这些临时卷里,下一步的动作就是把这些数据迁移会testpool里面,如下:
Upd stg huishoupool hig=00 low=00

迁移完成后,这些临时卷都会自动消失,数据全部转移回到testpool存储池,在此次测试中,数据又重新回到tsm1这个磁带,但磁带还可以继续使用,不想回收之前,使用率才20多,状态却是full.到此,一次单驱动器的磁带回收圆满完成.
完成迁移之后,可以删除掉huishoupool这个回收池,以避免TSM自动开始回收,影响某些业务,需要回收时再定义一次即可,基本上,回收不是经常需要运行的,可以手动进行.  

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/11134849/viewspace-611332/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2009-07-19

  • 博文量
    153
  • 访问量
    474752