8 配置 SAM-Remote

Oracle Hierarchical Storage Manager 软件的 SAM-Remote 功能使 Oracle HSM 文件系统主机可以访问在远程 Oracle HSM 文件系统主机上托管的磁带介质和驱动器。本地主机作为远程主机(充当 SAM-Remote 服务器)的 SAM-Remote 客户机访问磁带资源。客户机的归档策略通常在本地磁盘或固态 (SSD) 磁盘归档中维护一个或两个副本,在服务器提供的远程磁带上维护一个或两个副本。每个主机上的主配置文件 /etc/opt/SUNWsamfs/mcf 使用特殊的 SAM-Remote 设备类型定义共享资源和客户机/服务器关系。

您可以满足 SAM-Remote 客户机和服务器的大量归档和数据保护要求:

  • 您可以将磁带归档的优势扩展至缺少库和驱动器的 Oracle HSM 主机。

  • 您可以集中维护和管理区域办事处和卫星校园中托管的 Oracle HSM 文件系统的磁带资源。

    在总部中央数据中心中,Oracle HSM 文件系统主机已连接磁带库并作为 SAM-Remote 服务器运行。在较小的分布式办公室中,Oracle HSM 文件系统主机仅具有磁盘归档并充当 SAM-Remote 客户机。所有主机均维护其归档数据的本地和磁带副本。但硬件和介质库存集中在中央数据中心中,可以在此处以最有效率且成本最低的方式对其进行维护。

  • 您可以自动创建和维护异地磁带副本以用于备份和灾难恢复。

    所有 Oracle HSM 文件系统主机均已连接磁带库。每个主机作为 SAM-Remote 客户机和服务器(就异地位置中的对应设备而言)运行。每个 Oracle HSM 主机使用本地资源创建本地磁盘和磁带副本。每个主机使用其对应设备提供的资源创建远程磁带副本,并且每个主机为其对应设备提供磁带资源。因此会在正常归档过程中自动创建两个文件系统的异地副本。

  • 您可以配置 Oracle HSM 文件系统主机,以便在本地资源不可用时访问远程归档存储资源。

    再次重申,所有 Oracle HSM 文件系统主机已连接磁带库,并且每个主机作为 SAM-Remote 客户机和服务器(就其他位置中的对应设备而言)运行。每个 Oracle HSM 主机使用本地资源创建本地磁盘和磁带副本。但如果主机无法访问其本地库,则仍可以使用其远程对应设备提供的介质和资源归档和检索文件。

本章概述了配置 SAM-Remote 客户机/服务器网络的过程。本章涵盖以下任务:

确保所有 SAM-Remote 主机使用相同的软件

SAM-Remote 客户机和服务器必须安装 Oracle HSM 软件的相同修订版。请使用以下过程检查修订版级别:

  1. root 用户身份登录到 SAM-Remote 服务器主机。

    在示例中,服务器主机为 server1

    [server1]root@solaris:~# 
    
  2. root 用户身份登录到 SAM-Remote 客户机主机。

    在示例中,打开终端窗口并使用 ssh 登录到主机 client1

    [server1]root@solaris:~# ssh root@client1 
    Password: ...
    [client1]root@solaris:~# 
    
  3. 确保所有 SAM-Remote 服务器和客户机上的 Oracle HSM 软件包的修订版级别是相同的。在每台 SAM-Remote 主机上,使用命令 samcmd l 列出配置详细信息。比较结果。

    在示例中,将比较 server1client1 上的结果。两者都使用 Oracle HSM 软件的相同修订版:

    [server1]root@solaris:~# samcmd l
    Usage information samcmd     6.0  10:20:34 Feb 20 2015
    samcmd on server1
    ...
    [server1]root@solaris:~# 
    
    [client1]root@solaris:~# samcmd l
    Usage information samcmd     6.0  10:20:37 Feb 20 2015
    samcmd on client1
    ...
    [server1]root@solaris:~# 
    
  4. 使用第 4 章 安装 Oracle HSM and QFS Software 中的过程根据需要更新主机软件,直到所有 SAM-Remote 服务器和客户机都处于相同的修订版级别。

  5. 接下来,停止 Oracle HSM 进程

停止 Oracle HSM 进程

  1. root 用户身份登录到 SAM-Remote 服务器主机。

    在示例中,服务器名为 server1

    [server1]root@solaris:~# 
    
  2. 获取已配置设备的设备序号。使用命令 samcmd c

    在示例中,设备序号为 801802803804

    [server1]root@solaris:~# samcmd c
    Device configuration samcmd     6.0  10:20:34 Feb 20 2015
    samcmd on server1
    Device configuration:
    ty  eq  state   device_name                        fs   family_set
    rb  800 on      /dev/scsi/changer/c1t0d5           800  rb800
    tp  801 on      /dev/rmt/0cbn                      801  rb800
    tp  802 on      /dev/rmt/1cbn                      802  rb800
    tp  803 on      /dev/rmt/2cbn                      803  rb800
    tp  804 on      /dev/rmt/3cbn                      804  rb800
    
  3. 使所有归档进程(如果有)闲置。使用命令 samcmd aridle

    此命令将允许当前的归档和回写操作完成,但不会启动任何新作业:

    [samfs-mds]root@solaris:~# samcmd aridle
    [samfs-mds]root@solaris:~# 
    
  4. 使所有回写进程(如果有)闲置。使用命令 samcmd stidle

    此命令将允许当前的归档和回写操作完成,但不会启动任何新作业:

    [samfs-mds]root@solaris:~# samcmd stidle
    [samfs-mds]root@solaris:~# 
    
  5. 等待任何活动的归档作业完成。使用命令 samcmd a 检查归档进程的状态。

    当归档进程为 Waiting for :arrun 时,归档进程处于空闲状态:

    [samfs-mds]root@solaris:~# samcmd a
    Archiver status samcmd     6.0 14:20:34 Feb 22 2015
    samcmd on samfs-mds
    sam-archiverd:  Waiting for :arrun
    sam-arfind: ...
    Waiting for :arrun
    
  6. 等待任何活动的回写作业完成。使用命令 samcmd u 检查回写进程的状态。

    当回写进程为 Waiting for :strun 时,回写进程处于空闲状态:

    [samfs-mds]root@solaris:~# samcmd u
    Staging queue samcmd      6.0 14:20:34 Feb 22 2015
    samcmd on solaris.demo.lan
    Staging queue by media type: all
    sam-stagerd:  Waiting for :strun
    root@solaris:~# 
    
  7. 在继续操作之前,使所有可移除的介质驱动器停工。针对每个驱动器,使用命令 samcmd equipment-number idle,其中 equipment-number 是在 /etc/opt/SUNWsamfs/mcf 文件中分配给驱动器的设备序号。

    此命令将允许当前的归档和回写作业在驱动器关闭之前完成,但不会启动任何新作业。在示例中,使序号分别为 801802803804 的四个驱动器闲置:

    [samfs-mds]root@solaris:~# samcmd 801 idle
    [samfs-mds]root@solaris:~# samcmd 802 idle
    [samfs-mds]root@solaris:~# samcmd 803 idle
    [samfs-mds]root@solaris:~# samcmd 804 idle
    [samfs-mds]root@solaris:~# 
    
  8. 等待正在运行的作业完成。

    可以使用命令 samcmd r 检查驱动器的状态。当所有驱动器都处于 notrdyempty 时,已准备好继续。

    [samfs-mds]root@solaris:~# samcmd r
    Removable media samcmd     6.0 14:20:34 Feb 22 2015
    samcmd on samqfs1host
    ty   eq   status      act  use  state  vsn
    li  801   ---------p    0   0%  notrdy
              empty
    li  802   ---------p    0   0%  notrdy
              empty
    li  803   ---------p    0   0%  notrdy
              empty
    li  804   ---------p    0   0%  notrdy
              empty
    [samfs-mds]root@solaris:~# 
    
  9. 当归档程序和回写程序进程处于空闲状态,并且磁带机都处于 notrdy 时,停止磁带库控制守护进程。使用命令 samd stop

    [samfs-mds]root@solaris:~# samd stop
    [samfs-mds]root@solaris:~# 
    
  10. 接下来,配置 SAM-Remote 服务器

配置 SAM-Remote 服务器

SAM-Remote 服务器是 Oracle HSM 文件系统主机,可允许其连接的机械装置磁带库和磁带机供本身也是 Oracle HSM 文件系统主机的远程客户机使用。SAM-Remote 服务器必须至少挂载一个 QFS 文件系统才能启动 Oracle HSM 进程。

要配置 SAM-Remote 服务器,请执行以下任务:

在 SAM-Remote 服务器的 mcf 文件中定义远程共享归档设备

  1. root 用户身份登录到 SAM-Remote 服务器主机。

    在示例中,服务器名为 server1

    [server1]root@solaris:~# 
    
  2. 在服务器上,在文本编辑器中打开 /etc/opt/SUNWsamfs/mcf 文件,并向下滚动到归档设备定义。

    在示例中,使用 vi 编辑器。该文件定义一个 Oracle HSM 归档文件系统 fs600 和一个包含四个驱动器的磁带库 rb800。请注意示例中包括实际文件中可能没有的说明标题,且会缩写较长的设备路径:

    [server1]root@solaris:~# vi /etc/opt/SUNWsamfs/mcf
    #=======================================================================
    # Oracle HSM archiving file system fs600
    # Equipment                Equipment Equipment Family  Device Additional
    # Identifier               Ordinal   Type      Set     State  Parameters
    #------------------------  --------- --------- ------  ------ ----------
    fs600                      600       ms        fs600   on
     /dev/dsk/c9t60...F4d0s7    610       md        fs600   on
     /dev/dsk/c9t60...81d0s7    611       md        fs600   on
    #=======================================================================
    # Local tape archive rb800 
    # Equipment                Equipment Equipment Family  Device Additional
    # Identifier               Ordinal   Type      Set     State  Parameters
    #------------------------  --------- --------- ------  ------ ----------
    /dev/scsi/changer/c1t0d5   800       rb        rb800   on
     /dev/rmt/0cbn              801       tp        rb800   on
     /dev/rmt/1cbn              802       tp        rb800   on
     /dev/rmt/2cbn              803       tp        rb800   on
     /dev/rmt/3cbn              804       tp        rb800   on
    
  3. 在归档设备定义的结尾,针对将使磁带资源可供客户机使用的服务器添加一个条目。在 Equipment Identifier 字段中输入 SAM-Remote 服务器配置文件的路径 /etc/opt/SUNWsamfs/samremote,并分配设备序号。

    在示例中,添加一些标题作为注释并为服务器 samremote 分配设备序号 500

    [server1]root@solaris:~# vi /etc/opt/SUNWsamfs/mcf
    ...
    #==========================================================================
    # Server samremote shares tape hardware and media with clients 
    # Equipment                   Equipment Equipment Family  Device Additional
    # Identifier                  Ordinal   Type      Set     State  Parameters
    #---------------------------  --------- --------- ------  ------ ----------
    /etc/opt/SUNWsamfs/samremote  500       
    
  4. 在新条目的 Equipment Type 字段中,输入 ss 表示 SAM-Remote 服务器设备。

    [server1]root@solaris:~# vi /etc/opt/SUNWsamfs/mcf
    ...
    #==========================================================================
    # Server samremote shares tape hardware and media with clients 
    # Equipment                   Equipment Equipment Family  Device Additional
    # Identifier                  Ordinal   Type      Set     State  Parameters
    #---------------------------  --------- --------- ------  ------ ----------
    /etc/opt/SUNWsamfs/samremote  500       ss     
       
    
  5. 分配一个在所有主机和服务器中唯一的 Family Set 名称,并将设备设置为 on

    在示例中,为新设备分配系列集名称 ss500

    [server1]root@solaris:~# vi /etc/opt/SUNWsamfs/mcf
    ...
    #==========================================================================
    # Server samremote shares tape hardware and media with clients 
    # Equipment                   Equipment Equipment Family  Device Additional
    # Identifier                  Ordinal   Type      Set     State  Parameters
    #---------------------------  --------- --------- ------  ------ ----------
    /etc/opt/SUNWsamfs/samremote  500       ss        ss500   on
    
  6. 如果您打算配置十个以上的 SAM-Remote 客户机,请为包含一至十个客户机的每个后续组添加另一个服务器设备(类型 ss)。

  7. 保存文件并关闭编辑器。

    [server1]root@solaris:~# vi /etc/opt/SUNWsamfs/mcf
    ...
    /etc/opt/SUNWsamfs/samremote  500       ss        ss500   on
    :wq
    [server1]root@solaris:~# 
    
  8. 接下来,创建 samremote 服务器配置文件

创建 samremote 服务器配置文件

SAM-Remote 服务器配置文件用于定义每一个客户机将要使用的磁盘缓冲区特征和介质。对于需要配置的每个服务器,请执行如下操作:

  1. root 用户身份登录到 SAM-Remote 服务器主机。

    在示例中,服务器名为 server1

    [server1]root@solaris:~# 
    
  2. 在服务器上,在文本编辑器中创建 /etc/opt/SUNWsamfs/samremote 文件。

    在示例中,用 vi 编辑器创建文件。首先在文件中记录一些描述性注释,并以井号 (#) 表示:

    [server1]root@solaris:~# vi /etc/opt/SUNWsamfs/samremote
    # Server Configuration File:
    # Defines the disk buffer and media that is available to each client.
    
  3. 开始一个新行并在第一列中输入客户机的主机名、IP 地址或全限定域名,以开始第一个客户机条目。

    客户机标识符行必须以非空格字符开头。在示例中,使用主机名 client1 来标识客户机:

    [server1]root@solaris:~# vi /etc/opt/SUNWsamfs/samremote
    # Server Configuration File:
    # Defines the disk buffer and media that is available to each client.
    client1
    
  4. 开始标识将与客户机共享的介质。以 indent media 形式开始一个新行,其中 indent 是一个或多个空格,media 是 SAM-Remote 关键字:

    [server1]root@solaris:~# vi /etc/opt/SUNWsamfs/samremote
    # Server Configuration File:
    # Defines the disk buffer and media that is available to each client.
    client1
            media
    
  5. indent equipment-number media-type VSNs 形式的新行标识每个介质类型和源,其中:

    • indent 是一个或多个空格。

    • equipment-number 是在 mcf 文件中标识归档存储设备的设备序号。

    • media-type 是该设备使用的磁带介质的介质标识符(有关 Oracle HSM 介质类型的完整列表,请参见附录 A 设备类型词汇表)。

    • VSNs 是一个或多个卷序列号的空格分隔列表,这些序列号是最多包含 31 个字符的字母数字字符串。

    在示例中,标识一个共享介质源:位于设备序号为 800 的磁带库中的一系列磁带卷(类型为 tp)。可用卷以括号中的正则表达式指定:表达式 VOL0[0-1][0-9]client1 限制为卷 VOL000-VOL019

    client1
           media
             800 tp (VOL0[0-1][0-9])
    

    请注意,每行只能指定一种介质类型。因此,如果库要支持多种介质类型,您应在新条目中指定每种类型:

          media
             800 ti VOL500 VOL501
             800 li (VOL0[0-1][0-9])
    
  6. 标识好将与客户机共享的介质后,请输入 SAM-Remote 关键字 endmedia 来关闭该列表。

    在示例中,client1 现已完全配置好:

    client1
           media
             800 tp (VOL0[0-1][0-9])
           endmedia
    
  7. 如果您需要配置其他客户机,请现在进行操作。为每台客户机添加新的客户机配置记录,最多可以添加十 (10) 条记录。然后保存文件并关闭编辑器。

    为防止卷争用以及可能的数据丢失,请确保客户机不共享相同的可移除介质卷

    在示例中,配置另一台客户机 client2。第二台客户机可访问与 client1 相同的磁带库(设备序号为 800)中的一系列磁带卷。但配置中的正则表达式指定不同的一组卷:VOL020-VOL039

    # Server Configuration File:
    # Defines the disk buffer and media that is available to each client.
    client1
           media
             800 tp (VOL0[0-1][0-9])
           endmedia
    client2
           media
             800 tp (VOL02-3][0-9])
           endmedia
    :wq
    [server1]root@solaris:~# 
    
  8. 接下来,配置 SAM-Remote 客户机

配置 SAM-Remote 客户机

针对每台 SAM-Remote 客户机,请执行以下任务:

在 SAM-Remote 客户机的 MCF 文件中定义远程归档设备

  1. root 用户身份登录到 SAM-Remote 客户机主机。

    在示例中,SAM-Remote 客户机名为 client1

    [client1]root@solaris:~# 
    
  2. 在客户机上,在文本编辑器中打开 /etc/opt/SUNWsamfs/mcf 文件,并向下滚动到归档设备定义。

    在示例中,使用 vi 编辑器。该文件定义一个 Oracle HSM 归档文件系统 fs100。本地副本存储在磁盘归档 DISKVOL1(一个本地 ZFS 文件系统)中。请注意,示例中包括实际文件中可能没有的说明标题,且会缩写较长的设备路径。

    [client1]root@solaris:~# vi /etc/opt/SUNWsamfs/mcf
    # Client's /etc/opt/SUNWsamfs/mcf file
    #=======================================================================
    # Oracle HSM archiving file system "fs100"
    # Equipment                Equipment Equipment Family  Device Additional
    # Identifier               Ordinal   Type      Set     State  Parameters
    #------------------------  --------- --------- ------  ------ ----------
    fs100                      100       ms        fs100   on
     /dev/dsk/c10t60...7Bd0s7   110       md        fs100   on
     /dev/dsk/c10t60...48d0s7   111       md        fs100   on
    #=======================================================================
    # Disk archive "/diskvols/DISKVOL1" stores local archive copies
    
  3. 在归档设备定义的结尾,添加一个条目,指明服务器将允许客户机使用的设备。在 Equipment Identifier 字段中输入 SAM-Remote 服务器配置文件的路径,并分配设备序号。

    在本示例中,我们指定客户机配置 /etc/opt/SUNWsamfs/sc400,并为客户机分配设备序号 400。再添加一些标题作为注释:

    [client1]root@solaris:~# vi /etc/opt/SUNWsamfs/mcf
    ...
    # Disk archive "/diskvols/DISKVOL1" stores local archive copies
    #
    #=======================================================================
    # Client "sc400" accesses tape resources on server "samremote" (ss500)
    # Equipment                Equipment Equipment Family  Device Additional
    # Identifier               Ordinal   Type      Set     State  Parameters
    #------------------------  --------- --------- ------  ------ ----------
    /etc/opt/SUNWsamfs/sc400   400     
      
    
  4. 在新条目的 Equipment Type 字段中,输入 sc 表示 SAM-Remote 客户机设备。

    [client1]root@solaris:~# vi /etc/opt/SUNWsamfs/mcf
    ...
    #=======================================================================
    # Client "sc400" accesses tape resources on server "samremote" (ss500)
    # Equipment                Equipment Equipment Family  Device Additional
    # Identifier               Ordinal   Type      Set     State  Parameters
    #------------------------  --------- --------- ------  ------ ----------
    /etc/opt/SUNWsamfs/ss500   400       sc
    
  5. 分配一个在所有主机和服务器中唯一的 Family Set 名称,并将设备设置为 on

    在示例中,为新设备分配系列集名称 ss500

    [client1]root@solaris:~# vi /etc/opt/SUNWsamfs/mcf
    ...
    #=======================================================================
    # Client "sc400" accesses tape resources on server "samremote" (ss500)
    # Equipment                Equipment Equipment Family  Device Additional
    # Identifier               Ordinal   Type      Set     State  Parameters
    #------------------------  --------- --------- ------  ------ ----------
    /etc/opt/SUNWsamfs/ss500   400       sc        ss500   on     
    
  6. 针对 SAM-Remote 服务器设为可用的每个磁带机,在 SAM-Remote 客户机 sc 设备中添加一个 SAM-Remote 伪设备。在 Equipment Identifier 字段中,添加一个 /dev/samrd/rddevice-number 形式的条目,其中 device-number 是一个整数。

    在示例中,为两个伪设备 /dev/samrd/rd 0/dev/samrd/rd 1 开始条目:

    [client1]root@solaris:~# vi /etc/opt/SUNWsamfs/mcf
    ...
    #=======================================================================
    # Client "sc400" accesses tape resources on server "samremote" (ss500)
    # Equipment                Equipment Equipment Family  Device Additional
    # Identifier               Ordinal   Type      Set     State  Parameters
    #------------------------  --------- --------- ------  ------ ----------
    /etc/opt/SUNWsamfs/sc400   400       sc        sc400   on     
     /dev/samrd/rd0
     /dev/samrd/rd1
    
  7. 在每个伪设备的 Equipment Ordinal 字段中,输入您分配给 sc 设备的范围中的数字。

    在示例中,将设备序号 410 分配给 /dev/samrd/rd0,将设备序号 420 分配给 /dev/samrd/rd1

    [client1]root@solaris:~# vi /etc/opt/SUNWsamfs/mcf
    ...
    #=======================================================================
    # Client "sc400" accesses tape resources on server "samremote" (ss500)
    # Equipment                Equipment Equipment Family  Device Additional
    # Identifier               Ordinal   Type      Set     State  Parameters
    #------------------------  --------- --------- ------  ------ ----------
    /etc/opt/SUNWsamfs/ss500   400       sc        ss500   on     
     /dev/samrd/rd0             410
     /dev/samrd/rd1             420
    
  8. 在每个 SAM-Remote 伪设备的 Equipment Type 字段中,输入 rd 表示 SAM-Remote 伪设备的设备类型。

    [client1]root@solaris:~# vi /etc/opt/SUNWsamfs/mcf
    ...
    #=======================================================================
    # Client "sc400" accesses tape resources on server "samremote" (ss500)
    # Equipment                Equipment Equipment Family  Device Additional
    # Identifier               Ordinal   Type      Set     State  Parameters
    #------------------------  --------- --------- ------  ------ ----------
    /etc/opt/SUNWsamfs/ss500   400       sc        ss500   on     
     /dev/samrd/rd0             410       rd
     /dev/samrd/rd1             420       rd
    
  9. 在每个伪设备的 Family Set 字段中,输入 sc 设备的系列集名称。

    在示例中,使用系列集名称 ss500

    [client1]root@solaris:~# vi /etc/opt/SUNWsamfs/mcf
    ...
    #=======================================================================
    # Client "sc400" accesses tape resources on server "samremote" (ss500)
    # Equipment                Equipment Equipment Family  Device Additional
    # Identifier               Ordinal   Type      Set     State  Parameters
    #------------------------  --------- --------- ------  ------ ----------
    /etc/opt/SUNWsamfs/ss500   400       sc        ss500   on     
     /dev/samrd/rd0             410       rd        ss500
     /dev/samrd/rd1             420       rd        ss500
    
  10. 在每个伪设备的 Device State 字段中,输入 on。然后保存文件并关闭编辑器。

    在示例中,将设备序号 410 分配给 /dev/samrd/rd 0,将设备序号 420 分配给 /dev/samrd/rd 1

    [client1]root@solaris:~# vi /etc/opt/SUNWsamfs/mcf
    ...
    #=======================================================================
    # Client "sc400" accesses tape resources on server "samremote" (ss500)
    # Equipment                Equipment Equipment Family  Device Additional
    # Identifier               Ordinal   Type      Set     State  Parameters
    #------------------------  --------- --------- ------  ------ ----------
    /etc/opt/SUNWsamfs/ss500   400       sc        ss500   on
     /dev/samrd/rd0             410       rd        ss500   on
     /dev/samrd/rd1             420       rd        ss500   on
    :wq
    [client1]root@solaris:~# 
    
  11. 接下来,创建 SAM-Remote 客户机配置文件

创建 SAM-Remote 客户机配置文件

对于每个SAM-Remote 客户机,请执行如下操作:

  1. root 用户身份登录到 SAM-Remote 客户机主机。

    在示例中,SAM-Remote 客户机名为 client1

    [client1]root@solaris:~# 
    
  2. 在客户机上,在文本编辑器中创建 /etc/opt/SUNWsamfs/family-set-name 文件,其中 family-set-name 是在 mcf 文件中使用的远程设备的系列集名称。

    在示例中,使用 vi 编辑器创建文件,并为其指定系列集名称 ss500。我们还在文件中记录一些以井号 (#) 开头的描述性注释:

    [client1]root@solaris:~# vi /etc/opt/SUNWsamfs/sc400
    # Client's SAM-Remote client configuration file: /opt/SUNWsamfs/sc400
    # This file identifies the host of the SAM-Remote server.
    
  3. 开始一个新行并在第一列中输入服务器的主机名、IP 地址或全限定域名,来为服务器添加一个条目。然后保存文件并关闭编辑器。

    该行必须以非空格字符开头。在示例中,使用主机名 server1 标识服务器:

    [client1]root@solaris:~# vi /etc/opt/SUNWsamfs/samremote
    # Client's SAM-Remote server configuration file: /opt/SUNWsamfs/sc400
    # This file identifies the host of the SAM-Remote server.
    server1
    :wq
    [client1]root@solaris:~# 
    
  4. 接下来,在 SAM-Remote 客户机上配置 archiver.cmd 文件

在 SAM-Remote 客户机上配置 archiver.cmd 文件

  1. root 用户身份登录到 SAM-Remote 客户机主机。

    在示例中,SAM-Remote 客户机名为 client1

    [client1]root@solaris:~# 
    
  2. 在文本编辑器中打开 /etc/opt/SUNWsamfs/archiver.cmd 文件,向下滚动到副本参数指令(从关键字 params 开始,到关键字 endparams 结束)。

    在示例中,用 vi 编辑器打开文件:

    [client1]root@solaris:~# vi /etc/opt/SUNWsamfs/archiver.cmd
    ...
    #-----------------------------------------------------------------------
    # Copy Parameter Directives
    params
    allsets -sort path -offline_copy direct
    allfiles.1 -startage 10m -startsize 500M -drives 10
    allfiles.2 -startage 24h -startsize 20G -drives 2 -reserve set
    endparams
    
  3. 检查将在远程介质上归档的所有归档集的副本参数。如果其中任何参数包括 -tapenonstop 和/或 -offline_copy direct 指令,请立即删除这些指令。

    在示例中,all 参数为所有副本指定了 -offline_copy direct 指令。因此,为想要发送到远程介质的副本 allfiles.3 指定 -offline_copy none 来覆盖该指令:

    #-----------------------------------------------------------------------
    # Copy Parameter Directives
    # Copy Parameter Directives
    params
    allsets -sort path -offline_copy direct
    allfiles.1 -startage 10m -startsize 500M -drives 10
    allfiles.2 -startage 24h -startsize 20G -drives 2 -reserve set offline_copy none
    endparams
    
  4. 向下滚动到 VSN 指令(从 SAM-Remote 关键字 vsns 开始,到关键字 endvsns 结束)。

    在示例中,使用 vi 编辑器。当前已分配介质的唯一副本 allfiles.1 将使用本地磁盘归档卷 qfs200 创建:

    ...
    endparams
    #-----------------------------------------------------------------------
    # VSN Directives
    vsns
    allfiles.1 dk qfs200
    endvsns
    
  5. 将归档副本分配给在服务器的 /etc/opt/SUNWsamfs/samremote 文件中为该客户机指定的远程介质。然后保存文件并关闭编辑器。

    在示例中,将配置 client1。副本 allfiles.2 将使用 VOL000-VOL019 范围内的远程磁带卷(在 samremote 服务器配置文件中指定)创建:

    ...
    endparams
    #-----------------------------------------------------------------------
    # VSN Directives
    vsns
    allfiles.1 dk qfs200
    allfiles.2 tp VOL0[0-1][0-9]
    endvsns
    :wq
    [client1]root@solaris:~# 
    
  6. 接下来,在 SAM-Remote 服务器上验证归档配置

在 SAM-Remote 服务器上验证归档配置

  1. root 用户身份登录到 SAM-Remote 服务器主机。

    在示例中,SAM-Remote 服务器名为 server1

    [server1]root@solaris:~# 
    
  2. 在服务器上启动 Oracle HSM 进程。使用命令 samd start

    [server1]root@solaris:~# samd start
    
  3. 在服务器主机上,检查共享设备服务器的状态。使用命令 samcmd s

    在示例中,设备序号为 500 的 SAM-Remote 服务器设备(类型 ss)处于 on 状态且在正常运行:

    [server1]root@solaris:~# samcmd s
    Device status samcmd     6.0  11:20:34 Feb 20 2015
    samcmd on server1
    ty    eq  state   device_name                      fs     status
    rb    800 on      /dev/scsi/changer/c1t0d5         800    m--------r
    tp    801 on      /dev/rmt/0cbn                    800    ---------p
      empty
    tp    802 on      /dev/rmt/1cbn                    800    ---------p
      empty
    tp    803 on      /dev/rmt/2cbn                    800    ---------p
      empty
    tp    804 on      /dev/rmt/3cbn                    800    ---------p
      empty
    ss    500 on      /etc/opt/SUNWsamfs/samremote     ss500  -------o-r
    [server1]root@solaris:~# 
    
  4. 如果共享设备服务器未处于 on 状态,请确保已在服务器主机的 /etc/opt/SUNWsamfs/mcf 文件中正确对其进行了定义。确保 /etc/opt/SUNWsamfs/samremote 文件是正确的并处于正确的位置。

    请参见过程在 SAM-Remote 服务器的 mcf 文件中定义远程共享归档设备创建 samremote 服务器配置文件

  5. 在服务器上,检查 SAM-Remote 客户机的连接状态。使用命令 samcmd R

    在示例中,client1client2 都处于 0005 状态,因此为 connected 状态(0004 状态表示无连接):

    [server1]root@solaris:~# samcmd R
    Remote server eq: 500 addr: 00003858 samcmd 6.0  11:20:44 Feb 20 2015
    samcmd on server1
    message:
    Client IPv4: client1 192.10.10.3 port - 5000
     client index - 0 port - 31842 flags - 0005 connected
    Client IPv4: client2 10.1.229.97 port - 5000
     client index - 1 port - 32848 flags - 0005 connected
    [server1]root@solaris:~# 
    
  6. 如果共享设备客户机未连接(0004 状态),请检查网络连接。确保服务器和客户机可以解析彼此的主机名和地址。确保服务器和客户机可以相互连接。

    在示例中,将 sshgetentping 命令配合使用,以检查 SAM-Remote 配置中的每台主机与每台其他主机之间的连接:

    [server1]root@solaris:~# getent hosts client1
    192.10.10.3      client1
    [server1]root@solaris:~# getent hosts 192.10.10.3
    192.10.10.3      client1
    [server1]root@solaris:~# ping 192.10.10.3
    192.10.10.31 is alive
    [server1]root@solaris:~# getent hosts client2
    10.1.229.97 client2
    [server1]root@solaris:~# getent hosts 10.1.229.97
    10.1.229.97 client2
    [server1]root@solaris:~# ping 10.1.229.97
    192.10.10.31 is alive
    [server1]root@solaris:~# ssh root@client1
    Password: ...
    [client1]root@solaris:~# getent hosts server1
    192.10.201.12    server1
    ...
    [client1]root@solaris:~# exit
    [server1]root@solaris:~# ssh root@client2
    Password: ...
    [client2]root@solaris:~# getent hosts server1
    192.10.201.12    server1
    ...
    [client2]root@solaris:~# exit
    [server1]root@solaris:~# 
    
  7. 如果共享设备客户机未连接(0004 状态),请确保它已在客户机主机的 /etc/opt/SUNWsamfs/mcf 文件中正确定义。请确保服务器主机已在 /etc/opt/SUNWsamfs/family-set-name 文件中正确标识,且该文件处于客户机主机中的正确位置。然后,确保客户机主机已在服务器主机上的 /etc/opt/SUNWsamfs/samremote 文件中正确标识。

    请参见过程在 SAM-Remote 客户机的 MCF 文件中定义远程归档设备创建 SAM-Remote 客户机配置文件

  8. 在客户机上,请确保服务器主机已在 /etc/opt/SUNWsamfs/family-set-name 文件中正确标识,且该文件处于客户机主机中的正确位置。

    请参见过程创建 SAM-Remote 客户机配置文件

  9. 如果共享设备客户机未连接(0004 状态),且客户端配置文件没有问题,请检查服务器。确保客户机主机已在 /etc/opt/SUNWsamfs/samremote 文件中正确标识。

    请参见过程创建 samremote 服务器配置文件

  10. 在服务器上,确保每台客户机可以访问共享磁带库的目录并查看可用的卷。使用命令 samcmd v equipment-number,其中 equipment-number 是客户机的 mcf 文件分配给 SAM-Remote 客户机设备的设备序号。

    在示例中,检查 client1,显示 400 是 SAM-Remote 客户机设备 /etc/opt/SUNWsamfs/sc400 的设备序号。输出正确列出了 client1 可以访问的卷(VOL000VOL019):

    [server1]root@solaris:~# samcmd v 400 
    Robot catalog samcmd     6.0  12:20:40 Feb 20 2015
    samcmd on server1
    Robot VSN catalog by slot       : eq 400
    slot     access time  count use flags         ty vsn
       3     none         0     0%  -il-o-b-----  li VOL000 
       7     none         0     0%  -il-o-b-----  li VOL001
    ...
      24     none         0     0%  -il-o-b-----  li VOL019 
    [server1]root@solaris:~# 
    
  11. 如果共享设备客户机无法查看正确的卷,请检查主机文件。在服务器主机上,确保分配的卷已在 /etc/opt/SUNWsamfs/samremote 文件中正确标识。在客户机主机上,确保 /etc/opt/SUNWsamfs/family-set-name 文件已正确标识服务器主机。

    请参见过程创建 samremote 服务器配置文件创建 SAM-Remote 客户机配置文件

  12. 接下来,在每台 SAM-Remote 客户机上验证归档配置

在每台 SAM-Remote 客户机上验证归档配置

对于每个SAM-Remote 客户机,请执行如下操作:

  1. root 用户身份登录到 SAM-Remote 客户机主机。

    在示例中,SAM-Remote 客户机名为 client1

    [client1]root@solaris:~# 
    
  2. 在客户机主机上启动 Oracle HSM 进程。使用命令 samd start

    [client1]root@solaris:~# samd start
    [client1]root@solaris:~# 
    
  3. 在客户机主机上,检查共享设备客户机的状态。使用命令 samcmd s

    在示例中,设备序号为 400 的 SAM-Remote 客户机设备(类型 sc)处于 on 状态且在正常运行:

    [client1]root@solaris:~# samcmd s
    Device status samcmd     6.0  12:20:49 Feb 20 2015
    samcmd on client1
    ty    eq  state   device_name                      fs     status
    sc    400 on      /etc/opt/SUNWsamfs/sc400         sc400  -------o-r
    
  4. 如果共享设备客户机未处于 on 状态,请确保 sc 设备已正确定义。在客户机主机上,检查 /etc/opt/SUNWsamfs/mcf 文件,确保 /etc/opt/SUNWsamfs/family-set-name 文件正确且处于正确位置。

    请参见过程在 SAM-Remote 客户机的 MCF 文件中定义远程归档设备创建 SAM-Remote 客户机配置文件

  5. 在客户机主机上,确认 /etc/opt/SUNWsamfs/archiver.cmd 文件为远程介质指定了正确的卷序列号。使用命令 archiver -A 列出文件。

    在示例中,将配置 client1。系统将使用 VOL000-VOL019 范围内的一个远程磁带卷(在 samremote 服务器配置文件中指定)创建副本 allfiles.2

    [client1]root@solaris:~# archiver -A
    Reading '/etc/opt/SUNWsamfs/archiver.cmd'.
    1: # archiver.cmd
    2: #-----------------------------------------------------------------------
    3: # Global Directives
    4: archivemeta = off
    5: examine = noscan
    ...
    30: #-----------------------------------------------------------------------
    31: # VSN Directives
    32: vsns
    33: allfiles.1 dk qfs200
    34: allfiles.2 tp VOL0[0-1][0-9]
    36: endvsns
    [client1]root@solaris:~# 
    
  6. 如果您在 archiver.cmd 文件中发现了任何差异,请先更正问题再继续。

  7. 如果您想配置回收,请参见为 SAM-Remote 配置回收

为 SAM-Remote 配置回收

配置 SAM-Remote 时,必须确保一台主机上的回收不会销毁另一台主机上的有效数据。您在 SAM-Remote 服务器上配置的任何回收指令必须仅回收该服务器用于其自己的归档集的介质。该服务器不得尝试回收其已供 SAM-Remote 客户机使用的介质卷。同样,您在 SAM-Remote 客户机上配置的任何回收指令必须仅回收存放归档的客户机数据的介质(在本地或在服务器设为可用的指定卷中)。

尝试在 SAM-Remote 环境中使用回收过程之前,您应全面了解回收过程。因此,请阅读回收 以及 sam-recyclerarchiver.cmdrecycler.cmdrecycler.sh 手册页。

然后在熟悉回收过程后执行以下任务:

在 SAM-Remote 服务器上配置回收

如果您需要为 SAM-Remote 服务器托管的文件系统配置回收,请执行如下操作:

  1. root 用户身份登录到 SAM-Remote 服务器。

    在示例中,SAM-Remote 服务器名为 server1

    [server1]root@solaris:~# 
    
  2. 在文本编辑器中打开 /etc/opt/SUNWsamfs/archiver.cmd 文件。向下滚动到 params 部分。

    在示例中,用 vi 编辑器打开文件:

    [client1]root@solaris:~# vi /etc/opt/SUNWsamfs/archiver.cmd
    ...
    #-----------------------------------------------------------------------
    # Copy Parameter Directives
    params
    allsets -sort path -offline_copy direct
    allfiles.1 -startage 10m -startsize 500M -drives 10
    allfiles.2 -startage 24h -startsize 20G -drives 2 -reserve set
    endparams
    
  3. archive-set directive-list 形式按归档集输入您的回收程序指令,其中 archive-set 是归档集之一,directive-list 是指令名称/值对的空格分隔列表(有关回收指令的完整列表,请参见 archiver.cmd 手册页)。

    如果使用 SAM-Remote,必须在 archiver.cmd 文件的 params 部分配置按归档集回收。您无法指定按库回收。

    在示例中,我们为归档集 allfiles.1allfiles.2 添加回收指令。仅当至少有 90% 的卷容量可以恢复时,-recycle_mingain 90 指令才会回收卷。当可移除介质的已用容量达到 60% 时,-recycle_hwm 60 指令开始回收。-recycle_vsncount 1 一次只能调度一个要回收的可移除介质卷:

    #---------------------------------------------------------------------
    #  Copy Parameters Directives
    params
    allsetsallfiles. -sort path -offline_copy direct
    allfiles.1 -startage 10m -startsize 500M -drives 10
    allfiles.1 -recycle_mingain 90
    allfiles.2 -startage 24h -startsize 20G -drives 2 -reserve set offline_copy none
    allfiles.2 -recycle_hwm 60 -recycle_mingain 90 -recycle_vsncount 1
    endparams
    

    请注意,在 SAM-Remote 服务器上定义的回收指令仅适用于该服务器用于其自己的归档集的归档卷。该服务器的回收指令不适用于可从客户机访问的卷。

    在本示例中,该服务器针对副本 allfiles.2 的回收指令适用于 VSN Directives 部分中针对服务器使用列出的磁带卷 (VOL100-VOL199)。该服务器的回收指令不适用于卷 VOL000-VOL019(该卷是为 client1 保留的),也不适用于卷 VOL020-VOL039(该卷是为 client2 保留的):

    ...
    endparams
    #-----------------------------------------------------------------------
    # VSN Directives
    vsns
    allfiles.1 dk DISKVOL1
    allfiles.2 tp VOL1[0-9][0-9]
    endvsns
    
  4. 保存 archiver.cmd 文件并关闭编辑器。

    ...
    endvsns
    :wq
    [server1]root@solaris:~# 
    
  5. 在服务器上,在文本编辑器中创建 recycler.cmd 文件。指定回收程序日志的路径和文件名。

    在示例中,使用 vi 编辑器。为日志文件指定默认位置:

    [server1]root@solaris:~# vi /etc/opt/SUNWsamfs/recycler.cmd
    logfile = /var/adm/recycler.log
    
  6. 在服务器上的 recycler.cmd 文件中,添加 no-recyle media-type volumes 形式的指令,其中 media-type 是在附录 A 设备类型词汇表中指定的介质类型之一,volumes 是以空格分隔的列表或正则表达式,用于指定您已分配给 SAM-Remote 客户机的每个归档存储卷的卷序列号。保存文件并关闭编辑器。

    no-recyle 指令为专供客户机使用的存储资源提供了额外的保护。该指令会显式命令主机回收过程跳过指定的卷。

    在本示例中,我们针对处于范围 VOL000-VOL019VOL020-VOL039 内的介质类型 tp(磁带)卷添加 no-recyle 指令:

    [server1]root@solaris:~# vi /etc/opt/SUNWsamfs/recycler.cmd
    logfile = /var/opt/SUNWsamfs/recycler/recycler.log
    no_recycle tp VOL0[0-1][0-9] VOL0[2-3][0-9] 
    :wq
    [server1]root@solaris:~# 
    
  7. 现在,在 SAM-Remote 客户机上配置回收

在 SAM-Remote 客户机上配置回收

针对每个客户机,执行如下操作:

  1. root 用户身份登录到 SAM-Remote 客户机。

    在示例中,SAM-Remote 客户机名为 client1

    [client1]root@solaris:~# 
    
  2. 在客户机上,在文本编辑器中打开 /etc/opt/SUNWsamfs/archiver.cmd 文件,向下滚动到副本 params 部分。

    在示例中,用 vi 编辑器打开文件。

    [client1]root@solaris:~# vi /etc/opt/SUNWsamfs/archiver.cmd
    ...
    #-----------------------------------------------------------------------
    # Copy Parameters Directives
    params
    allsets -sort path -offline_copy stageahead
    allfiles.1 -startage 6h  -startsize 6G  -startcount 500000
    allfiles.2 -startage 24h -startsize 20G -startcount 500000 -archmax 24G
    endparams
    #-----------------------------------------------------------------------
    # VSN Directives
    vsns
    allfiles.1 dk qfs200
    allfiles.2 tp VOL0[0-1][0-9]
    endvsns
    
  3. archiver.cmd 文件的 params 部分中,按归档集输入您的回收程序指令,格式为 archive-set directive-list,其中,archive-set 是其中一个归档集,directive-list 是指令名称/值对的空格分隔列表(有关回收指令的列表,请参见 archiver.cmd 手册页)。然后保存文件并关闭编辑器。

    在使用 SAM-Remote 时,必须在 archiver.cmd 文件的 params 部分中配置按归档集回收。您无法指定按库回收。

    在示例中,我们为归档集 allfiles.1allfiles.2 添加回收指令。仅当至少有 90% 的卷容量可以恢复时,-recycle_mingain 90 指令才会回收卷。当可移除介质的已用容量达到 60% 时,-recycle_hwm 60 指令开始回收。-recycle_vsncount 1 指令一次只能调度一个要回收的可移除介质卷。

    #-----------------------------------------------------------------------
    # Copy Parameters Directives
    params
    allsets -sort path -offline_copy stageahead
    allfiles.1 -startage 6h  -startsize 6G  -startcount 500000
    allfiles.1 -recycle_mingain 90
    allfiles.2 -startage 24h -startsize 20G -startcount 500000 -archmax 24G
    allsets.2 -recycle_hwm 60 -recycle_mingain 90 -recycle_vsncount 1
    endparams
    

    请注意,在客户机上定义的回收指令仅适用于该客户机用于其自己的归档集的介质。在本示例中,客户机针对副本 allfiles.2 的回收指令适用于服务器提供的处于范围 VOL000-VOL019 内的远程磁带卷。这些指令不适用于处于范围 VOL020-VOL039 内的卷(这些卷是为 client2 保留的),也不适用于处于范围 VOL100-VOL119 内的卷(这些卷是为服务器保留的):

    ...
    endparams
    #-----------------------------------------------------------------------
    # VSN Directives
    vsns
    allfiles.1 dk qfs200
    allfiles.2 tp VOL0[0-1][0-9]
    endvsns
    :wq
    [client1]root@solaris:~# 
    
  4. 保存 archiver.cmd 文件并关闭编辑器。

    ...
    endvsns
    :wq
    [client]root@solaris:~# 
    
  5. 在客户机上,在文本编辑器中创建 recycler.cmd 文件。指定回收程序日志的路径和文件名。然后保存文件并关闭编辑器。

    已配置服务器和客户机,使客户机无法访问服务器或 client2 使用的任何归档介质。因此,不需要添加 no-recyle 指令。

    在示例中,使用 vi 编辑器。为日志文件指定默认位置:

    [client1]root@solaris:~# vi /etc/opt/SUNWsamfs/recycler.cmd
    logfile = /var/adm/recycler.log
    :wq
    [client1]root@solaris:~# 
    
  6. 重复此过程直到完成所有 SAM-Remote 客户机的配置。

  7. 输入命令 sam-recycler -dvxn,其中的参数具有以下作用:

    • -d 会显示卷选择消息,指示每个卷为何已被选择或未被选择进行回收。

    • -v 会列出位于标记为要回收的每个卷中且需要移动的文件。

    • -x 会返回错误并停止(如果列出的任何归档副本比卷的标记时间要早而不可恢复)。

    • -n 会阻止实际回收。回收过程会表现得好像 archiver.cmd 文件中的所有归档集定义都包括 -recycle_ignore 一样,以便您可以对回收配置进行非破坏性测试。

  8. 在配置好所有 SAM-Remote 客户机和服务器之后,如果您打算使用边带数据库功能,请转至配置报告数据库

  9. 否则,请转至配置通知和日志记录