Oracle® Hierarchical Storage Manager and StorageTek QFS Software 安装和配置指南 发行版 6.0 E56770-02 |
|
上一页 |
下一页 |
在执行 Oracle HSM 安装和配置之前,请先执行本章概述的存储配置任务。本章概述了以下主题:
在 Oracle HSM 文件系统中,主要磁盘或固态磁盘设备用于存储目前使用和修改的文件。请按照以下准则为高速缓存配置磁盘或固态磁盘设备。
要估算主高速缓存的起始容量,请确定每个文件系统在填满时会存储多少数据。
将该起始容量增加 10% 以便为文件系统元数据留出空间。
如果您正在为高性能 ma
类型文件系统做准备,请为 mm
元数据设备配置硬件。理想情况是为每个 mm
元数据设备配置一个硬件控制的四磁盘 RAID 10 (1+0) 卷组。为实现最高性能,请考虑使用固态磁盘设备。
条带镜像 RAID 10 阵列的特征适合存储 Oracle HSM 元数据。RAID 10 存储硬件高度冗余,因此关键元数据将得到保护。与大多数其他 RAID 配置相比,吞吐量更高且延迟更低。
与由使用共享的通用处理器运行的软件所控制的阵列相比,由专用控制器硬件所控制的阵列通常可提供更高性能。
固态设备特别适合存储本质上会频繁更新并被频繁读取的元数据。
如果您使用外部磁盘阵列进行主要高速缓存存储,请为文件系统配置中的每台 md
或 mr
设备配置 3+1 或 4+1 RAID 5 卷组。在每个卷组上配置一个逻辑卷 (LUN)。
对于给定数量的磁盘,较小的 3+1 和 4+1 RAID 5 卷组比较大的卷组提供的并行性很好,因此可提供更高的输入/输出 (input/output, I/O) 性能。RAID 5 卷组中的各个磁盘设备不会独立操作-从 I/O 角度看,每个卷组就像一台设备一样操作。因此,与等效的较大配置相比,将给定数量的磁盘划分为 3+1 和 4+1 卷组可产生更独立的设备、更好的并行性和更少的 I/O 争用。
由于奇偶校验与存储的比率较高,较小的 RAID 组的容量也较低。但是,对于大多数用户而言,性能的提高足以抵消这点。在归档文件系统中,磁盘高速缓存容量的小幅降低通常会被归档中相对而言无限的可用容量所完全抵消。
在一个卷组上配置多个逻辑卷 (LUN) 会使逻辑上分离的卷的 I/O 争用一次只能为一个 I/O 服务的一组资源。这会增加 I/O 相关系统开销并降低吞吐量。
接下来,开始配置归档存储。
执行以下任务:
对存储区域网络 (storage area network, SAN) 进行分区,以允许驱动器和主机总线适配器进行通信。
确保主机可以发现 SAN 上的设备。输入 Solaris 配置管理命令 cfgadm
以及 -al
(挂接点列表)和 -o show_SCSI_LUN
选项。检查驱动器端口的全局名称 (World Wide Name, WWN) 的输出。
输出的第一列显示挂接点 ID (Ap_id
),其中包括主机总线适配器的控制器编号和 WWN(以冒号分隔)。如果节点是通过 ADI 接口控制介质转换器的桥接驱动器,-o show_SCSI_LUN
选项会显示节点上的所有 LUN。
root@solaris:~#cfgadm
-al
-o
show_SCSI_LUN
Ap_Id Type Receptacle Occupant Condition c2::500104f000937528 tape connected configured unknown c3::50060160082006e2,0 tape connected unconfigured unknown
如果驱动器的 WWN 未列在 cfgadm -al
-o show_SCSI_LUN
的输出中,则表明驱动器不可见。SAN 配置出现错误。因此,请再次检查 SAN 连接和区域划分配置。然后重复上述步骤。
如果 cfgadm -al
命令的输出表明某驱动器未配置,请再次运行该命令,但这次使用 -c
(配置)开关。
该命令会在 /dev/rmt
中生成必要的设备文件:
root@solaris:~#cfgadm
-al
Ap_Id Type Receptacle Occupant Condition c2::500104f000937528 tape connected configured unknown c3::50060160082006e2,0 tape connected unconfigured unknown root@solaris:~#cfgadm
-c
configure
50060160082006e2,0
验证设备名称与全局名称之间的关联。使用命令 ls
-al
/dev/rmt | grep
WWN
,其中 WWN
是全局名称。
root@solaris:~#ls
-al
/dev/rmt
|
grep
50060160082006e2,0
lrwxrwxrwx 1 root root 94 May 20 05:05 3un -> \ ../../devices/pci@1f,700000/SUNW,qlc@2/fp@0,0/st@w50060160082006e2,0:
如果您安装了建议的最低级别的 Solaris 修补程序,请在此处停止,转到配置归档磁盘存储。
否则,请获取您设备的目标 ID。
编辑 /kernel/drv/st.conf
。在 tape-config-list
中添加供应商指定的条目,以指定上面所确定的目标 ID。
强制重新装入 st
模块。使用命令 update_drv -f st
。
root@solaris:~# update_drv -f st
root@solaris:~#
接下来,转至配置归档磁盘存储。
您可以为磁盘归档中的卷使用 ZFS、UFS、QFS 或 NFS 文件系统。为实现最佳归档和回写性能,请配置文件系统和底层存储以最大程度地提高归档和回写的可用带宽,同时最大程度地减少归档和回写作业之间的争用以及 Oracle HSM 和其他应用程序之间的争用。遵循以下准则:
使用专用文件系统,以便 Oracle HSM 不会与其他应用程序和用户争用对文件系统的访问。
为每个文件系统或 ZFS 数据集配置一个 Oracle HSM 归档磁盘卷,并为归档磁盘卷可占用的存储空间量设置一个配额。
从共享磁盘设备的池中动态分配归档卷的存储空间时,请确保底层物理存储不会被超额使用。配额可防止 Oracle HSM 归档进程试图使用超过其可用聚合存储的量。
将每个文件系统大小设置为 10 到 20 兆兆字节之间(如果可能)。
如果有足够的可用磁盘资源,请配置多个文件系统,以便各个 Oracle HSM 归档和回写作业不会相互争用对文件系统的访问。最好配置十五个到三十个归档文件系统。
在专用设备上配置每个文件系统,以便各个归档和回写作业不会相互争用对相同底层硬件的访问。
请勿使用一个文件系统的子目录作为独立的归档卷。
请勿在位于相同物理驱动器或 RAID 组上的 LUN 上配置两个或更多个文件系统。
现在,请转至配置归档磁带存储。
执行以下任务:
配置直接连接的库(如果有)。
如果自动化库包含多个驱动器,则这些驱动器在 Oracle HSM 主配置文件 (mcf
) 中的顺序必须与库控制器看到它们的顺序相同。此顺序可以不同于在主机上看到这些设备的顺序和在主机 /var/adm/messages
文件中报告这些设备的顺序。
对于每台 Oracle HSM 元数据服务器和数据移动器主机,请执行下列任务以决定驱动器顺序:
查阅库文档。记下如何识别驱动器和目标。如果有本地操作面板,请了解可以如何使用它来确定驱动器顺序。
如果库上装有一个本地操作面板,请使用它来确定驱动器连接到控制器的顺序。确定每个驱动器的 SCSI 目标标识符或全局名称。
以 root
用户身份登录到 Solaris 主机。
root@solaris:~#
列出 /dev/scsi/changer/
中的 Solaris 逻辑设备名称,将输出重定向到一个文本文件。
在示例中,将 /dev/rmt/
中的列表重定向到 root
用户的主目录中的 device-mappings.txt
文件:
root@solaris:~#ls
-l
/dev/rmt/
>
/root/device-mappings.txt
现在,将直接连接的库中的驱动器映射到 Solaris 设备名称 或将 ACSLS 连接的库中的驱动器映射到 Solaris 设备名称。
针对 /dev/rmt/
中列出的每个 Solaris 逻辑设备名称和库分配给 Oracle HSM 服务器主机的每个驱动器,执行以下过程:
如果您尚未登录到 Oracle HSM Solaris 主机,请以 root
用户身份登录。
root@solaris:~#
在文本编辑器中,打开您在为库和 Solaris 主机收集驱动器信息过程中创建的设备映射文件,将其整理为一个简单表。
在后续步骤中,您需要参考此信息。在示例中,使用 vi
编辑器从 /dev/rmt/
列表中删除权限、所有权和日期属性,同时为库设备信息添加标题并预留空间:
root@solaris:~#vi
/root/device-mappings.txt
LIBRARY SOLARIS SOLARIS DEVICE LOGICAL PHYSICAL NUMBER DEVICE DEVICE ------- ---------- ------------------------------------------- /dev/rmt/0 -> ../../devices/pci@1f,4000/scsi@2,1/st@2,0: /dev/rmt/1 -> ../../devices/pci@1f,4000/scsi@4,1/st@5,0: /dev/rmt/2 -> ../../devices/pci@1f,4000/scsi@4,1/st@6,0: /dev/rmt/3 -> ../../devices/pci@1f,4000/scsi@4/st@1,0: lrwxrwxrwx 1 root root 40 Mar 18 2014 /dev/rmt/4 -> ../../devices/pci@1f,4000/scsi@4/st@2,0:
在库中,确保所有驱动器都是空的。
将一个磁带装入到磁带库中您尚未映射到 Solaris 逻辑设备名称的第一个驱动器中。
为了下面示例的需要,将一个 LTO4 磁带装入到 HP Ultrium LTO4 磁带机中。
确定与挂载磁带的驱动器对应的 Solaris /dev/rmt/
条目。在确定驱动器之前,请运行命令 mt
-f
/dev/rmt/
number
status
,其中 number
标识 /dev/rmt/
中的驱动器。
在示例中,位于 /dev/rmt/0
的驱动器为空,但位于 /dev/rmt/1
的驱动器装有磁带。因此,磁带库标识为驱动器 1 的驱动器对应于 Solaris /dev/rmt/1
:
root@solaris:~#mt -f /dev/rmt/0 status
/dev/rmt/0: no tape loaded or drive offline root@solaris:~#mt -f /dev/rmt/1 status
HP Ultrium LTO 4 tape drive: sense key(0x0)= No Additional Sense residual= 0 retries= 0 file no= 0 block no= 3
在设备映射文件中,找到与装有磁带的 Solaris 设备对应的条目,并在所提供的空间中输入库的设备标识符。然后保存文件。
在示例中,在 /dev/rmt/1
对应的行的 LIBRARY DEVICE NUMBER
字段中输入 1
:
root@solaris:~# vi /root/device-mappings.txt
LIBRARY SOLARIS SOLARIS
DEVICE LOGICAL PHYSICAL
NUMBER DEVICE DEVICE
------- ---------- -------------------------------------------
/dev/rmt/0 -> ../../devices/pci@1f,4000/scsi@2,1/st@2,0:
1
/dev/rmt/1 -> ../../devices/pci@1f,4000/scsi@4,1/st@5,0:
/dev/rmt/2 -> ../../devices/pci@1f,4000/scsi@4,1/st@6,0:
/dev/rmt/3 -> ../../devices/pci@1f,4000/scsi@4/st@1,0:
:w
卸载磁带。
重复该过程,直到设备映射文件中包含了库为 Oracle HSM 主机分配的所有设备的 Solaris 逻辑设备名称。然后保存文件并关闭编辑器。
root@solaris:~# vi /root/device-mappings.txt LIBRARY SOLARIS SOLARIS DEVICE LOGICAL PHYSICAL NUMBER DEVICE DEVICE ------- ---------- -------------------------------------------2
/dev/rmt/0 -> ../../devices/pci@1f,4000/scsi@2,1/st@2,0: 1 /dev/rmt/1 -> ../../devices/pci@1f,4000/scsi@4,1/st@5,0:3
/dev/rmt/2 -> ../../devices/pci@1f,4000/scsi@4,1/st@6,0:4
/dev/rmt/3 -> ../../devices/pci@1f,4000/scsi@4/st@1,0::wq
root@solaris:~#
保留映射文件。
您将需要配置基本文件系统(第 6 章)的信息,并且您在备份 Oracle HSM 配置(第 13 章)时可能需要包括该信息。
接下来,转至配置直接连接的库。
如果您尚未登录到 Oracle HSM Solaris 主机,请以 root
用户身份登录。
root@solaris:~#
在文本编辑器中,打开您在为库和 Solaris 主机收集驱动器信息过程中创建的设备映射文件,将其整理为一个简单表。
在后续步骤中,您需要参考此信息。在示例中,使用 vi
编辑器从 /dev/rmt/
列表中删除权限、所有权和日期属性,同时为库设备信息添加标题并预留空间:
root@solaris:~# vi /root/device-mappings.txt
LOGICAL DEVICE DEVICE SERIAL NUMBER ACSLS DEVICE ADDRESS
-------------- -------------------- ----------------------------------
/dev/rmt/0
/dev/rmt/1
/dev/rmt/2
/dev/rmt/3
对于 /dev/rmt/
中所列的每个逻辑设备名称,显示设备序列号。使用命令 luxadm
display
/dev/rmt/
number
,其中 number
标识 /dev/rmt/
中的驱动器。
在示例中,获取了设备 /dev/rmt/0
的序列号 HU92K00200
:
root@solaris:~#luxadm
display
/dev/rmt/0
DEVICE PROPERTIES for tape: /dev/rmt/0 Vendor: HP Product ID: Ultrium 4-SCSI Revision: G25W Serial Num: HU92K00200 ... Path status: Ready root@solaris:~#
在 device-mappings.txt
文件的相应行中输入序列号。
在示例中,在逻辑设备 /dev/rmt/0
的对应行中输入设备 /dev/rmt/0
的序列号 HU92K00200
。
root@solaris:~#vi
/root/device-mappings.txt
LOGICAL DEVICE DEVICE SERIAL NUMBER ACSLS DEVICE ADDRESS -------------- -------------------- ---------------------------------- /dev/rmt/0HU92K00200
/dev/rmt/1 /dev/rmt/2 /dev/rmt/3:wq
root@solaris:~#
重复前面两个步骤,直到您为 /dev/rmt/
中所列的所有逻辑设备标识设备序列号,并将结果记录在 device-mappings.txt
文件中。
在示例中,有四个逻辑设备:
root@solaris:~#vi
/root/device-mappings.txt
LOGICAL DEVICE DEVICE SERIAL NUMBER ACSLS DEVICE ADDRESS -------------- -------------------- ---------------------------------- /dev/rmt/0 HU92K00200 /dev/rmt/1 HU92K00208 /dev/rmt/2 HU92K00339 /dev/rmt/3 HU92K00289 :w root@solaris:~#
对于映射到 /dev/rmt/
的每个设备序列号,获取对应的 ACSLS 驱动器地址。使用 ACSLS 命令 display
drive
*
-f
serial_num
。
在示例中,获取了设备 HU92K00200
(/dev/rmt/0
)、HU92K00208
(/dev/rmt/1
)、HU92K00339
(/dev/rmt/2
)、HU92K00289
(/dev/rmt/3
) 的 ACSLS 地址:
ACSSA>display drive * -f serial_num
2014-03-29 10:49:12 Display Drive Acs Lsm Panel Drive Serial_num 0 2 10 12 331000049255 0 2 10 16 3310020313520 2 10 17
HU92K00200
0 2 10 18
HU92K00208
0 3 10 10
HU92K00339
0 3 10 11 HU92K001890 3 10 12 HU92K00289
在 device-mappings.txt
文件的相应行中记录每个 ACSLS 驱动器地址。保存文件并关闭文本编辑器。
root@solaris:~#vi /root/device-mappings.txt
LOGICAL DEVICE DEVICE SERIAL NUMBER ACSLS DEVICE ADDRESS -------------- -------------------- ---------------------------------- /dev/rmt/0 HU92K00200(acs=0, lsm=2, panel=10, drive=17)
/dev/rmt/1 HU92K00208(acs=0, lsm=2, panel=10, drive=18)
/dev/rmt/2 HU92K00339(acs=0, lsm=2, panel=10, drive=10)
/dev/rmt/3 HU92K00289(acs=0, lsm=2, panel=10, drive=12)
:wq
保留映射文件。
您将需要配置基本文件系统(第 6 章)的信息,并且您在备份 Oracle HSM 配置(第 13 章)时可能需要包括该信息。
您在配置归档文件系统时需要配置 Oracle StorageTek ACSLS 网络连接库。因此,如果您要规划高可用性文件系统,请转至为高可用性系统配置存储。否则,请转至安装 Oracle HSM and QFS Software。
要配置直接连接的磁带库,您必须物理连接硬件并(在某些情况下)配置 SCSI 驱动程序(Oracle HSM 通过通用 sgen
驱动程序(而不是发行版 5.4 之前的 SAM-QFS 使用的 samst
驱动程序)控制库机械装置)。执行如下操作:
以物理方式将库和驱动器连接到 Oracle HSM 服务器主机。
如果您是第一次安装 Oracle HSM 或是在 Solaris 11 上升级 Oracle HSM 或 SAM-QFS 5.4 配置,请在以物理方式连接硬件后就停止。
在 Solaris 11 下,sgen
是默认的 SCSI 驱动程序,因此 Oracle HSM 安装软件可以自动更新驱动程序别名和配置文件。
如果您要在 Solaris 10 系统上安装 Oracle HSM,则查看是否为 sgen
驱动程序分配了以下列表中的驱动程序别名之一。使用命令 grep
scs.*,08
/etc/driver_aliases
。
可以为 sgen
驱动程序分配以下任何别名:
scsa,08.bfcp"
和/或 scsa,08.bvhci
scsiclass,08
在示例中,Solaris 将 scsiclass,08
别名用于 sgen
驱动程序:
root@solaris:~#grep
scs.*,08
/etc/driver_aliases
sgen "scsiclass,08" root@solaris:~#
如果 grep
命令返回 sgen
"
alias
"
(其中 alias
是上面的列表中的别名),则安装 sgen
驱动程序并将其正确地分配给该别名。因此,如果您要配置高可用性文件系统,请参见为高可用性系统配置存储。否则,请转至安装 Oracle HSM and QFS Software。
如果 grep
命令返回 some-driver
"
alias
"
,其中 some-driver
是 sgen
之外的某个驱动程序,alias
是上述列表中的一个别名,则该别名已分配给其他驱动程序。因此,请为 sgen
驱动程序创建面向路径的别名。
如果命令 grep
scs.*,08
/etc/driver_aliases
未返回任何输出,则表明 sgen
驱动程序并未安装。因此,请安装该驱动程序。使用命令 add_drv
-i
scsiclass,08
sgen
。
在示例中,grep
命令未返回任何输出。因此,我们安装 sgen
驱动程序:
root@solaris:~# grep scs.*,08 /etc/driver_aliases root@solaris:~#add_drv
-i
scsiclass,08
sgen
如果命令 add_drv
-i
scsiclass,08
sgen
返回消息 Driver (sgen) is already installed
,则表明该驱动程序已安装但未连接。因此,请立即连接该驱动程序。使用命令 update_drv
-a
-i
scsiclass,08 sgen
。
在示例中,add_drv
命令表明该驱动程序已安装。因此,我们附加驱动程序:
root@solaris:~# add_drv -i scsiclass,08 sgen Driver (sgen) is already installed. root@solaris:~#update_drv
-a
-i
scsiclass,08 sgen
如果命令 grep
scs.*,08
/etc/driver_aliases
显示已将别名 scsiclass,08
分配给 sgen
驱动程序,则表明已正确配置该驱动程序。
root@solaris:~# grep scs.*,08 /etc/driver_aliases sgen "scsiclass,08" root@solaris:~#
如果您要配置高可用性文件系统,请参见为高可用性系统配置存储。
sgen
驱动程序创建面向路径的别名如果所需的 sgen
别名已分配给其他驱动程序,您需要创建面向路径的别名来使用 sgen
连接指定的库,而不会干扰现有的驱动程序分配。执行如下操作:
以 root
用户身份登录到 Oracle HSM 服务器主机。
root@solaris:~#
显示系统配置。使用命令 cfgadm
-vl
。
请注意,cfgadm
输出会使用双行标题(每条记录两行)的格式:
root@solaris:~#cfgadm
-vl
Ap_Id Receptacle Occupant Condition Information When Type Busy Phys_Id c3 connected configured unknown unavailable scsi-sas n /devices/pci@0/pci@0/pci@2/scsi@0:scsi c5::500104f0008e6d78 connected configured unknown unavailable med-changer y /devices/pci@0/.../SUNW,qlc@0,1/fp@0,0:fc::500104f0008e6d78 ... root@solaris:~#
在 cfgadm
-vl
的输出中,找到库的记录。在每个记录第二行的 Type
列中查找 med-changer
。
在示例中,我们在第二条记录中找到了该库:
root@solaris:~# cfgadm -vl
Ap_Id Receptacle Occupant Condition Information When
Type Busy Phys_Id
c3 connected configured unknown unavailable
scsi-sas n /devices/pci@0/pci@0/pci@2/scsi@0:scsi
c5::500104f0008e6d78 connected configured unknown unavailable
med-changer
y /devices/pci@0/.../SUNW,qlc@0,1/fp@0,0:fc::500104f0008e6d78
...
root@solaris:~#
获取将作为新的面向路径的别名的物理路径。在 cfgadm
-vl
的输出中,从 Phys_Id
列的条目中,删除子字符串 /devices
。
在示例中,介质转换器记录的 Phys_Id
列包含路径 /devices/pci@0/pci@0/pci@9/SUNW,qlc@0,1/fp@0,0:fc::500104f0008e6d78
,因此,我们选择 /devices/
后面的部分字符串作为别名(请注意,为适合下面的可用空间,该物理路径已缩写):
root@solaris:~# grep scsiclass,08 /etc/driver_aliases
sdrv "scsiclass,08"
root@solaris:~# cfgadm -vl
Ap_Id Receptacle Occupant Condition Information When
Type Busy Phys_Id
c3 connected configured unknown unavailable
scsi-sas n /devices/pci@0/pci@0/pci@2/scsi@0:scsi
c5::500104f0008e6d78 connected configured unknown unavailable
med-changer y /devices/pci@0/.../SUNW,qlc@0,1/fp@0,0:fc::500104f0008e6d78
...
root@solaris:~#
创建面向路径的别名,并将其分配给 sgen
驱动程序。使用命令 update_drv
-d
-i
'"/
path-to-library
"'
sgen
,其中 path-to-library
是您在上一步中标识的路径。
在示例中,使用库路径创建面向路径的别名 '"/pci@0/pci@0/pci@9/SUNW,qlc@0,1/fp@0,0:fc::500104f0008e6d78"'
(请注意单引号和双引号)。该命令在一行中,但为了适合页面布局,已处理为两行格式:
root@solaris:~#update_drv
-d
-i
\'"/pci@0/pci@0/pci@9/SUNW,qlc@0,1/fp@0,0:fc::500104f0008e6d78"'
sgen
root@solaris:~#
现在,库已使用 sgen
驱动程序进行配置。
如果您要配置高可用性文件系统,请转至为高可用性系统配置存储。
要配置高可用性共享文件系统,必须小心地遵循您的 Solaris Cluster 软件版本硬件管理手册中的建议。这些建议包括提供冗余路径和存储设备。
确保存储区域网络连接不会遇到单点故障。提供多个互连和冗余切换。在每个节点上安装多个主机总线适配器 (host bus adapter, HBA) 并使用 Oracle Solaris I/O 多路径软件(有关其他详细信息,请参见 Oracle Solaris 客户文档库中的 Oracle Solaris SAN 配置和多路径指南和 stmsboot
手册页)。
配置完全冗余的主存储设备。将 Oracle HSM 文件系统元数据和配置文件放置在镜像设备(硬件控制的 RAID-10 卷组或 RAID-1 Solaris Volume Manager 卷)上。将文件系统数据放置在硬件控制的 RAID-10 或 RAID-5 卷组上,或放置在 RAID-1 Solaris Volume Manager 卷上。
如果您计划使用 Solaris Volume Manager (SVM) 多属主磁盘组提供设备冗余,请注意:对于当前的 Solaris 操作系统发行版,默认不再安装 SVM 软件。您必须下载并安装 Solaris 10 9/10 发行版随附的软件版本。然后遵循 Solaris Cluster 文档中的配置建议。