Oracle® Hierarchical Storage Manager and StorageTek QFS Software 安装和配置指南 发行版 6.0 E56770-02 |
|
上一页 |
下一页 |
Oracle Hierarchical Storage Manager and StorageTek QFS Software 高可用性配置设计用于维持不中断的文件系统和归档服务。在高可用性解决方案中,Oracle Hierarchical Storage Manager 或 QFS 软件与 Oracle Solaris Cluster 软件、冗余硬件和冗余通信相集成。因此,如果主机系统或组件出现故障或由管理员停止服务,则 Oracle HSM 服务将自动故障转移到用户和应用程序可以访问的备用主机。高可用性配置因而可最大程度地减少由设备和系统故障导致的停机时间。
但是,高可用性配置比较复杂,必须仔细进行设计和部署以防发生无法预料的交互和可能的数据损坏。因此,本章将首先对支持的配置进行说明。对本节进行学习并选择最能满足您的可用性要求的配置。后续各节将说明如何设置所选配置。
请注意,无法在共享 Oracle Solaris Cluster 配置中混用硬件体系结构。所有节点必须使用 SPARC 体系结构、x86-64 体系结构(仅限 Solaris 11.1)或 32 位 x86 体系结构(Solaris 10 和更早版本)。
在群集多主机解决方案中,必须仔细控制文件系统、应用程序、操作系统、群集软件和存储之间的交互,以确保存储数据的完整性。为使复杂性和潜在风险降至最低,专门针对四个特定的部署要求集量身定制了支持的高可用性 Oracle HSM 配置:
高可用性 QFS (High Availability QFS, HA-QFS) 配置可确保 QFS 非共享的独立文件系统在主机发生故障时仍然可以访问。该文件系统在双节点群集中的两个节点上都进行配置,Solaris Cluster 软件将此群集作为 SUNW.HAStoragePlus
类型的资源来管理。但是,在任意给定时间,只有一个节点挂载 QFS 文件系统。如果挂载文件系统的节点出现故障,则群集软件将自动启动故障转移并在剩余节点上重新挂载文件系统。
客户机通过网络文件系统 (Network File System, NFS)、高可用性 NFS (High-Availability NFS, HA-NFS) 或 SMB/CIFS 共享访问数据,活动群集节点充当文件服务器。
有关实施说明,请参见高可用性 QFS 非共享文件系统。
群集外部的高可用性客户机 (High Availability-Clients Outside the Cluster, HA-COTC) 配置可维持 QFS 元数据服务器的可用性,以便 QFS 文件系统客户机可以在服务器出现故障时继续访问其数据。文件系统是共享的。在由 Solaris Cluster 软件管理的双节点群集上托管 QFS 活动元数据服务器和潜在元数据服务器。SUNW.qfs
类型的 Oracle HSM 高可用性资源可管理群集中共享文件系统服务器的故障转移。所有客户机均托管在群集外部。群集服务器可确保元数据的可用性、签发 I/O 许可证并维持文件系统的一致性。
如果托管活动元数据服务器的节点出现故障,则 Solaris Cluster 软件将自动激活运行正常的节点上的潜在 MDS 并启动故障转移。QFS 文件系统是共享的,因此它已经挂载到新激活的元数据服务器节点上,并在客户机上保持挂载状态。客户机继续接收元数据更新和 I/O 租约,因此,文件系统可无中断地继续运行。
HA-COTC 配置必须将高性能 ma
文件系统与物理独立的 mm
元数据设备和 mr
数据设备配合使用。通用 ms
文件系统和 md
设备不受支持。
您可以使用标准网络文件系统 (Network File System, NFS) 或 SMB/CIFS 与不运行 Oracle HSM 的客户机共享 HA-COTC 文件系统。但不支持 HA-NFS。
有关实施说明,请参见高可用性 QFS 共享文件系统,群集外部的客户机。
高可用性 Oracle Hierarchical Storage Manager (HA-SAM) 配置可通过确保 QFS 元数据服务器和 Oracle Hierarchical Storage Manager 应用程序在服务器主机发生故障的情况下仍能继续运行来维持归档文件系统的可用性。该文件系统在由 Solaris Cluster 软件管理的双节点群集上托管的活动 QFS 元数据服务器和潜在 QFS 元数据服务器之间共享。类型为 SUNW.qfs
的 Oracle HSM 高可用性资源管理服务器的故障转移。
如果活动 Oracle HSM 元数据服务器节点发生故障,则群集软件将自动激活潜在元数据服务器节点并启动故障转移。由于 QFS 文件系统是共享的并已挂载到所有节点上,因此仍可无中断地访问数据和元数据。
客户机通过高可用性网络文件系统 (high-availability Network File System, HA-NFS)、NFS 或 SMB/CIFS 共享访问数据,活动群集节点充当文件服务器。
有关实施说明,请参见高可用性 Oracle HSM 共享归档文件系统 。
Solaris Cluster-Oracle Real Application Cluster (SC-RAC) 配置支持使用 QFS 文件系统的高可用性数据库解决方案。RAC 软件协调 I/O 请求、分配工作负荷,并且为群集节点上运行的多个 Oracle 数据库实例维护一组一致的数据库文件。在 SC-RAC 配置中,Oracle 数据库、Oracle Real Application Cluster (RAC) 和 QFS 软件在群集中的两个或更多节点上运行。Solaris Cluster 软件将群集作为 SUNW.qfs
类型的资源进行管理。一个节点配置为 QFS 共享文件系统的元数据服务器 (metadata server, MDS)。剩余节点配置为将文件系统共享为客户机的潜在元数据服务器。如果活动元数据服务器节点发生故障,则 Solaris Cluster 软件将自动激活运行正常的节点上的潜在元数据服务器并启动故障转移。由于 QFS 文件系统是共享的并已挂载到所有节点上,因此仍可无中断地访问数据。
要配置高可用性 QFS (high-availability QFS, HA-QFS) 文件系统,需在作为 SUNW.HAStoragePlus
类型的资源进行管理的双节点 Solaris Cluster 中设置两个相同的主机。然后,在两个节点上配置 QFS 非共享文件系统。在任意给定时间,只有一个节点挂载文件系统。但是,如果一个节点发生故障,则群集软件将自动启动故障转移并将文件系统重新挂载在留存下来的节点上。
要设置高可用性 QFS (high-availability QFS, HA-QFS) 文件系统,请执行如下操作:
如果需要,配置高可用性网络文件系统 (High-Availability Network File System, HA-NFS) 共享。
Oracle Solaris Cluster 联机文档库包含的《Oracle Solaris Cluster Data Service for Network File System (NFS) Guide》中提供了设置 HA-NFS 的详细步骤。
以 root
用户身份登录到其中一个群集节点。
在示例中,主机为 qfs1mds-node1
和 qfs1mds-node2
。登录主机 qfs1mds-node1
:
[qfs1mds-node1]root@solaris:~#
在主机上配置所需的 QFS 文件系统,但不进行挂载。
使用配置通用 ms
文件系统或配置高性能 ma
文件系统中的说明配置文件系统。HA-QFS 配置不支持 QFS 共享文件系统。
以 root
用户身份登录其余群集节点。
在示例中,使用 ssh
登录到 qfs1mds-node2
主机:
[qfs1mds-node1]root@solaris:~#ssh
root@qfs1mds-node2
Password: [qfs1mds-node2]root@solaris:~#
在第二个节点上配置相同的 QFS 文件系统。
接下来,配置高可用性 QFS 文件系统。
执行如下操作:
以 root
用户身份登录到其中一个群集节点。
在示例中,主机为 qfs1mds-node1
和 qfs1mds-node2
。登录主机 qfs1mds-node1
:
[qfs1mds-node1]root@solaris:~#
为 Solaris Cluster 软件定义 SUNW.HAStoragePlus
资源类型(如果尚未执行此操作)。使用命令 clresourcetype
register
SUNW.HAStoragePlus
。
HAStoragePlus
是用于定义和管理磁盘设备组、群集文件系统和本地文件系统之间依赖性的 Solaris Cluster 资源类型。它会协调故障转移后数据服务的启动,以便所有必需组件在服务尝试重新启动时准备就绪。有关详细信息,请参见 SUNW.HAStoragePlus
手册页。
[qfs1mds-node1]root@solaris:~#clresourcetype
register
SUNW.HAStoragePlus
[qfs1mds-node1]root@solaris:~#
创建 SUNW.HAStoragePlus
类型的新 Solaris Cluster 资源以及包含该资源的新资源组。使用命令 /usr/global/bin/clresource
create
-g
resource-group
-t
SUNW.HAStoragePlus
-x
FilesystemMountPoints=/global/
mount-point
-x
FilesystemCheckCommand=/bin/true
QFS-resource
,其中:
resource-group
是您为文件系统资源组选择的名称。
mount-point
是挂载 QFS 文件系统的目录。
QFS-resource
是您为 SUNW.HAStoragePlus
资源选择的名称。
在示例中,使用挂载点目录 /global/qfs1
和 SUNW.HAStoragePlus
资源 haqfs
创建资源组 qfsrg
(请注意,下面的命令在一行中输入-换行符用反斜杠字符来转义):
[qfs1mds-node1]root@solaris:~#clresource
create
-g
qfsrg
-t
SUNW.HAStoragePlus
\-x
FilesystemMountPoints=
/global/hsmqfs1/qfs1
\-x
FilesystemCheckCommand=
/bin/true
haqfs
[qfs1mds-node1]root@solaris:~#
显示群集中的节点。使用命令 clresourcegroup
status
。
在示例中,QFS 文件系统主机节点为 qfs1mds-1
和 qfs1mds-2
。节点 qfs1mds-1
处于 Online
状态,因此它是挂载文件系统并托管 qfsrg
资源组的主节点:
[qfs1mds-node1]root@solaris:~#clresourcegroup
status
=== Cluster Resource Groups === Group Name Node Name Suspended Status ---------- --------- --------- ------qfsrg
qfs1mds-1
No
Online
qfs1mds-2 No Offline [qfs1mds-node1]root@solaris:~#
通过将资源组移动到辅助节点确保资源组正确地故障转移。使用 Solaris Cluster 命令 clresourcegroup
switch
-n
node2
group-name
,其中 node2
是辅助节点的名称,group-name
是您为 HA-QFS 资源组选择的名称。然后,使用 clresourcegroup status
检查结果。
在示例中,我们将 haqfs
资源组移动到 qfs1mds-node2
并确认资源组在指定节点上处于联机状态:
[qfs1mds-node1]root@solaris:~#clresourcegroup
switch
-n
qfs1mds-node2
qfsrg
[qfs1mds-node1]root@solaris:~#clresourcegroup
status
=== Cluster Resource Groups === Group Name Node Name Suspended Status ---------- --------- --------- ------qfsrg
qfs1mds-1 No Offlineqfs1mds-2
No
Online
[qfs1mds-node1]root@solaris:~#
将资源组移回到主节点。使用 Solaris Cluster 命令 clresourcegroup
switch
-n
node1
group-name
,其中 node1
是主节点的名称,group-name
是您为 HA-QFS 资源组选择的名称。然后,使用 clresourcegroup status
检查结果。
在示例中,我们将 qfsrg
资源组成功移回到 qfs1mds-node1
:
[qfs1mds-node1]root@solaris:~#clresourcegroup
switch
-n
qfs1mds-node1
qfsrg
[qfs1mds-node1]root@solaris:~#clresourcegroup
status
=== Cluster Resource Groups === Group Name Node Name Suspended Status ---------- ------------- --------- ------qfsrg
qfs1mds-node1
No
Online
qfs1mds-node2 No Offline [qfs1mds-node1]root@solaris:~#
如果您需要配置高可用性网络文件系统 (High-Availability Network File System, HA-NFS) 共享,请立即执行此操作。有关说明,请参见Oracle Solaris Cluster 联机文档库包含的《Oracle Solaris Cluster Data Service for Network File System (NFS) Guide》。
如果计划使用边带数据库功能,请转至配置报告数据库。
否则,请转至配置通知和日志记录。
群集外部的高可用性客户机 (High Availability-Clients Outside the Cluster, HA-COTC) 配置是非归档 QFS 共享文件系统,用于在 Solaris Cluster 软件所管理的高可用性群集的节点上托管至关紧要的元数据服务器 (metadata server, MDS)。这种安排可为 QFS 元数据和文件访问租约提供故障转移保护,因此,文件系统客户机在服务器出现故障时不会丢失对其数据的访问。但是,文件系统客户机和数据设备保留在群集外部,这样 Solaris Cluster 会与 QFS 软件争夺 QFS 共享数据的控制权。
要配置 HA-COTC 文件系统,请执行以下任务:
如果需要,按使用 NFS 和 SMB/CIFS 从多台主机访问文件系统中所述配置网络文件系统 (Network File System, NFS) 共享。不支持高可用性 NFS (High-Availability NFS, HA-NFS)。
在 QFS 共享文件系统中,您必须在元数据服务器上配置 hosts 文件,以便所有主机都能访问文件系统的元数据。hosts 文件与 mcf
文件一起存储在 /etc/opt/SUNWsamfs/
目录中。在共享文件系统的初始创建过程中,sammkfs
-S
命令使用该文件中存储的设置配置共享。因此,现在请使用下面的过程创建该文件。
以 root
用户身份登录到 HA-COTC 群集的主节点。
在示例中,主机为 qfs1mds-node1
和 qfs1mds-node2
。登录主机 qfs1mds-node1
:
[qfs1mds-node1]root@solaris:~#
显示群集配置。使用 /usr/global/bin/cluster
show
命令。找出每个 Node Name
的记录,然后记下 privatehostname
、Transport Adapter
名称和每个网络适配器的 ip_address
属性。
命令的输出可能非常冗长,因此,下面的示例将使用省略号 (...) 对较长的显示进行了缩写。
在示例中,每个节点都有两个网络接口,qfe3
和 hme0
:
hme0
适配器具有群集用于节点间内部通信的专用网络的 IP 地址。Solaris Cluster 软件会分配与每个专用地址相对应的专用主机名。
默认情况下,主节点和辅助节点的专用主机名分别为 clusternode1-priv
和 clusternode2-priv
。
qfe3
适配器具有公共 IP 地址和主机名(即 qfs1mds-node1
和 qfs1mds-node2
),群集使用它们来进行数据传输。
[qfs1mds-node1]root@solaris:~#cluster
show
... === Cluster Nodes === Node Name: qfs1mds-node1... privatehostname: clusternode1-priv... Transport Adapter List: qfe3, hme0... Transport Adapter: qfe3... Adapter Property(ip_address): 172.16.0.12... Transport Adapter: hme0... Adapter Property(ip_address): 10.0.0.129... Node Name: qfs1mds-node2... privatehostname: clusternode2-priv... Transport Adapter List: qfe3, hme0... Adapter Property(ip_address): 172.16.0.13... Transport Adapter: hme0 Adapter Property(ip_address): 10.0.0.122
使用文本编辑器在元数据服务器上创建文件 /etc/opt/SUNWsamfs/hosts.
family-set-name
,其中 family-set-name
为文件系统的系列集名称。
在示例中,使用 vi
文本编辑器创建文件 hosts.qfs1
。我们添加一些可选标题以显示主机表中的列,每行以井号 (#) 开头表示该行为注释:
[qfs1mds-node1]root@solaris:~#vi
/etc/opt/SUNWsamfs/hosts.qfs1
# /etc/opt/SUNWsamfs/hosts.qfs1 # Server On/ Additional #Host Name Network Interface Ordinal Off Parameters #------------ ----------------------------- ------- --- ----------
在表的第一列中,输入主元数据服务器节点和辅助元数据服务器节点的主机名,后跟一些空格。将每个条目放在单独一行上。
在 hosts 文件中,行即为行(记录),空格为列(字段)分隔符。在本示例中,Host Name
列的前两行包含值 qfs1mds-node1
和 qfs1mds-node2
,它们是托管文件系统元数据服务器的群集节点的主机名:
# Server On/ Additional #Host Name Network Interface Ordinal Off Parameters #------------ ----------------------------- ------- --- ----------qfs1mds-node1
qfs1mds-node2
在每行的第二列,开始提供主机 Host Name
的 Network Interface
信息。输入各个 HA-COTC 群集节点的 Solaris Cluster 专用主机名或专用网络地址,后跟一个逗号。
HA-COTC 服务器节点使用专用主机名在高可用性群集内进行服务器间的通信。在示例中,使用专用主机名 clusternode1-priv
和 clusternode2-priv
,这些是 Solaris Cluster 软件分配的默认名称:
# Server On/ Additional #Host Name Network Interface Ordinal Off Parameters #------------ ----------------------------- ------- --- ---------- qfs1mds-node1clusternode1-priv,
qfs1mds-node2clusternode2-priv,
在每行第二列中的逗号后面,输入活动元数据服务器的虚拟公共主机名,后跟空格。
HA-COTC 服务器节点使用公共数据网络与客户机通信,所有这些客户机都位于在群集之外。由于活动元数据服务器的 IP 地址和主机名在故障转移期间会发生更改(从 qfs1mds-node1
更改为 qfs1mds-node2
,反之亦然),因此,我们对二者都使用虚拟主机名 qfs1mds
。稍后,我们将配置 Solaris Cluster 软件配置为始终将 qfs1mds
的请求路由到活动元数据服务器:
# Server On/ Additional #Host Name Network Interface Ordinal Off Parameters #------------ ----------------------------- ------- --- ---------- qfs1mds-node1clusternode1-priv,qfs1mds
qfs1mds-node2clusternode2-priv,qfs1mds
在每行的第三列中,输入服务器的序号(1
表示活动元数据服务器,2
表示潜在元数据服务器),后跟空格。
在本示例中,只有一个元数据服务器,主节点 qfs1mds-node1
是活动元数据服务器,因此其序号为 1
,辅助节点 qfs1mds-node2
的序号为 2
:
# Server On/ Additional #Host Name Network Interface Ordinal Off Parameters #------------ ----------------------------- ------- --- ---------- qfs1mds-node1 clusternode1-priv,qfs1mds1
qfs1mds-node2 clusternode2-priv,qfs1mds2
在每行的第四列中,输入 0
(零),后跟空格。
第四列中的值为 0
(零)、-
(连字符)或空表示该主机处于 on 状态-配置为对共享文件系统有访问权限。1
(数字一)表示该主机处于 off 状态-配置为对文件系统没有访问权限(有关在管理共享文件系统时使用这些值的信息,请参见 samsharefs
手册页)。
# Server On/ Additional #Host Name Network Interface Ordinal Off Parameters #------------ ----------------------------- ------- --- ---------- qfs1mds-node1 clusternode1-priv,qfs1mds 10
qfs1mds-node2 clusternode2-priv,qfs1mds 20
在主节点行的第五列中,输入关键字 server
。
server
关键字用于标识默认的活动元数据服务器:
# Server On/ Additional
#Host Name Network Interface Ordinal Off Parameters
#------------ ----------------------------- ------- --- ----------
qfs1mds-node1 clusternode1-priv,qfs1mds 1 0 server
qfs1mds-node2 clusternode2-priv,qfs1mds 2 0
为每个客户机主机都添加一行,并将 Server Ordinal
值设置为 0
。然后保存文件并关闭编辑器。
服务器序号为 0
表示该主机是一个客户机而非服务器。HA-COTC 客户机不是群集成员,因此只能通过群集的公共数据网络进行通信。它们仅具有公共 IP 地址。在示例中,使用客户机的公共 IP 地址 172.16.0.133
和 172.16.0.147
(而不是主机名)添加两个客户机 qfs1client1
和 qfs1client2
:
# Server On/ Additional #Host Name Network Interface Ordinal Off Parameters #------------ ----------------------------- ------- --- ---------- qfs1mds-node1 clusternode1-priv,qfs1mds 1 0 server qfs1mds-node2 clusternode2-priv,qfs1mds 2 0qfs1client1
172.16.0.133
0
0qfs1client2
172.16.0.147
0
0:wq
[qfs1mds-node1]root@solaris:~#
将全局 /etc/opt/SUNWsamfs/hosts.
family-set-name
文件的一个副本放在 QFS 潜在元数据服务器(第二个 HA-COTC 群集节点)上。
在与群集外客户机共享文件系统的高可用性配置中,您需要确保客户机仅与使用 Solaris Cluster 软件定义的公共数据网络的文件系统服务器通信。为此,需要使用专门配置的 QFS 本地 hosts 文件选择性地在客户机和服务器的多个网络接口之间路由网络流量。
每个文件系统主机通过首先查看元数据服务器上的 /etc/opt/SUNWsamfs/hosts.
family-set-name
文件来确定用于其他主机的网络接口。然后,主机检查自己的特定 /etc/opt/SUNWsamfs/hosts.
family-set-name
.local
文件。如果没有本地 hosts 文件,则主机将按照全局 hosts 文件中指定的顺序使用该全局文件中指定的接口地址。但是,如果存在本地 hosts 文件,则主机会将其与全局文件进行比较并按照本地文件中指定的顺序仅使用两个文件中同时列出的那些接口。通过在不同的安排下使用各文件中的 IP 地址,您可以控制不同主机使用的接口。
要配置本地 hosts 文件,请使用下面概述的过程:
以 root
用户身份登录到 HA-COTC 群集的主节点。
在示例中,主机为 qfs1mds-node1
和 qfs1mds-node2
。登录主机 qfs1mds-node1
:
[qfs1mds-node1]root@solaris:~#
在每个活动元数据服务器和潜在元数据服务器上创建一个本地 hosts 文件。使用路径和文件名 /etc/opt/SUNWsamfs/hosts.
family-set-name
.local
,其中 family-set-name
是共享文件系统的设备标识符。请仅包括您希望活动服务器和潜在服务器使用的网络的接口。
在示例中,我们希望活动元数据服务器和潜在元数据服务器通过专用网络互相通信,并通过公共网络与客户机通信。因此活动服务器和潜在服务器上的本地 hosts 文件 hosts.qfs1.local
仅列出活动服务器和潜在服务器的群集专用地址:
[qfs1mds-node1]root@solaris:~#vi
/etc/opt/SUNWsamfs/hosts.qfs1.local
# /etc/opt/SUNWsamfs/hosts.qfs1.local # Server On/ Additional #Host Name Network Interface Ordinal Off Parameters #------------ ----------------------------- ------- --- ---------- qfs1mds-node1clusternode1-priv
1 0 server qfs1mds-node2clusternode2-priv
2 0 qfs1client1 172.16.0.133 0 0 qfs1client2 172.16.0.147 0 0:wq
[qfs1mds-node1]root@solaris:~#ssh
root@qfs1mds-node2
Password:
[qfs1mds-node2]root@solaris:~#vi
/etc/opt/SUNWsamfs/hosts.qfs1.local
# /etc/opt/SUNWsamfs/hosts.qfs1.local # Server On/ Additional #Host Name Network Interface Ordinal Off Parameters #------------ ----------------------------- ------- --- ---------- qfs1mds-node1clusternode1-priv
1 0 server qfs1mds-node2clusternode2-priv
2 0 qfs1client1 172.16.0.133 0 0 qfs1client2 172.16.0.147 0 0:wq
[qfs1mds-node2]root@solaris:~#exit
[qfs1mds-node1]root@solaris:~#
使用文本编辑器在每个客户机上创建一个本地 hosts 文件。使用路径和文件名 /etc/opt/SUNWsamfs/hosts.
family-set-name
.local
,其中 family-set-name
是共享文件系统的设备标识符。请仅包括您希望客户机使用的网络的接口。然后保存文件并关闭编辑器。
在示例中,使用 vi
编辑器。我们希望客户机仅与服务器通信,并且仅通过公共数据网络通信。所以文件仅包括活动元数据服务器 qfs1mds
的虚拟主机名。Solaris Cluster 软件将 qfs1mds
的请求路由至处于活动状态的任何一个服务器节点:
[qfs1mds-node1]root@solaris:~#ssh
root@qfsclient1
Password: [qfs1client1]root@solaris:~#vi
/etc/opt/SUNWsamfs/hosts.qfs1.local
# /etc/opt/SUNWsamfs/hosts.qfs1.local # Server On/ Additional #Host Name Network Interface Ordinal Off Parameters #------------ ----------------------------- ------- --- ----------qfs1mds
qfs1mds
1 0 server:wq
qfs1client1]root@solaris:~#exit
[qfs1mds-node1]root@solaris:~#ssh
root@
qfs1client2
Password: [qfs1client2]root@solaris:~#vi
/etc/opt/SUNWsamfs/hosts.qfs1.local
# /etc/opt/SUNWsamfs/hosts.qfs1.local # Server On/ Additional #Host Name Network Interface Ordinal Off Parameters #------------ ----------------------------- ------- --- ----------qfs1mds
qfs1mds
1 0 server:wq
[qfs1client2]root@solaris:~#exit
[qfs1mds-node1]root@solaris:~#
要配置活动元数据服务器,请执行以下任务:
选择将同时充当 HA-COTC 群集的主节点和 QFS 共享文件系统的活动元数据服务器的群集节点。以 root
用户身份登录。
在示例中,qfs1mds-node1
是主节点和活动元数据服务器:
[qfs1mds-node1]root@solaris:~#
选择要用于 QFS 文件系统的全局存储设备。使用 Solaris Cluster 命令 /usr/global/bin/cldevice
list
-v
。
Solaris Cluster 软件向连接到群集节点的所有设备分配唯一的设备标识符 (Device Identifier, DID)。全局设备可以从群集中的所有节点进行访问,而本地设备仅可以从挂载它们的主机进行访问。全局设备在故障转移后仍然可以访问。本地设备则不然。
在示例中,请注意 d1
、d2
、d7
和 d8
设备从两个节点都无法访问。所以在配置高可用性 QFS 共享文件系统时,我们从 d3
、d4
和 d5
设备中进行选择:
[qfs1mds-node1]root@solaris:~#cldevice
list
-v
DID Device Full Device Path ---------- ---------------- d1 qfs1mds-node1:/dev/rdsk/c0t0d0 d2 qfs1mds-node1:/dev/rdsk/c0t6d0d3
qfs1mds-node1
:/dev/rdsk/c1t1d0d3
qfs1mds-node2
:/dev/rdsk/c1t1d0d4
qfs1mds-node1
:/dev/rdsk/c1t2d0d4
qfs1mds-node2
:/dev/rdsk/c1t2d0d5
qfs1mds-node1
:/dev/rdsk/c1t3d0d5
qfs1mds-node2
:/dev/rdsk/c1t3d0 d6 qfs1mds-node2:/dev/rdsk/c0t0d0 d7 qfs1mds-node2:/dev/rdsk/c0t1d0
在选定的主节点上,创建使用 md
或 mr
数据服务的高性能 ma
文件系统。在文本编辑器中,打开 /etc/opt/SUNWsamfs/mcf
文件。
在示例中,我们配置文件系统 qfs1
。我们将设备 d3
配置为元数据设备(设备类型 mm
),并将 d4
和 d5
用作数据设备(设备类型 mr
):
[qfs1mds-node1]root@solaris:~#vi
/etc/opt/SUNWsamfs/mcf
# Equipment Equipment Equipment Family Device Additional # Identifier Ordinal Type Set State Parameters #------------------ --------- --------- ------- ------ ----------------qfs1
100ma
qfs1 -/dev/did/dsk/d3s0
101mm
qfs1 -/dev/did/dsk/d4s0
102mr
qfs1 -/dev/did/dsk/d5s1
103mr
qfs1 -
在 /etc/opt/SUNWsamfs/mcf
文件的文件系统条目的 Additional Parameters
列中输入 shared
参数。保存文件。
[qfs1mds-node1]root@solaris:~# vi /etc/opt/SUNWsamfs/mcf # Equipment Equipment Equipment Family Device Additional # Identifier Ordinal Type Set State Parameters #------------------ --------- --------- ------- ------ ---------------- qfs1 100 ma qfs1 -shared
/dev/did/dsk/d3s0 101 mm qfs1 - /dev/did/dsk/d4s0 102 mr qfs1 - /dev/did/dsk/d5s1 103 mr qfs1 -:wq
[qfs1mds-node1]root@solaris:~#
检查 mcf
文件中是否存在错误。使用命令 /opt/SUNWsamfs/sbin/sam-fsd
并更正发现的任何错误。
sam-fsd
命令会读取 Oracle HSM 配置文件并初始化文件系统。如果遇到错误,该命令将停止。在示例中,检查主机 qfs1mds-node1
上的 mcf
文件:
[qfs1mds-node1]root@solaris:~# sam-fsd
...
Would start sam-archiverd()
Would start sam-stagealld()
Would start sam-stagerd()
Would start sam-amld()
[qfs1mds-node1]root@solaris:~#
创建文件系统。使用命令 /opt/SUNWsamfs/sbin/
sammkfs
-S
family-set-name
,其中 family-set-name
是文件系统的设备标识符。
sammkfs
命令读取 qfs1mds-node1
主节点上的 hosts.
family-set-name
和 mcf
文件,并创建具有指定属性的共享文件系统。
[qfs1mds-node1]root@solaris:~#sammkfs
-S
qfs1
Building 'qfs1' will destroy the contents of devices: ... Do you wish to continue? [y/N]yes
... [qfs1mds-node1]root@solaris:~#
现在,从群集控制中排除数据设备。
默认情况下,Solaris Cluster 软件隔离磁盘设备以专供群集使用。但是在 HA-COTC 配置中,仅元数据 (mm
) 设备属于群集的一部分。数据 (mr
) 设备与群集外的文件系统客户机共享,并且直接连接到客户机主机。因此您必须将数据 (mr
) 设备置于群集软件的控制之外。这可以通过以下两种方法之一实现:
登录到 HA-COTC 群集的主节点和 QFS 共享文件系统的活动元数据服务器。以 root
用户身份登录。
在示例中,qfs1mds-node1
是主节点和活动元数据服务器:
[qfs1mds-node1]root@solaris:~#
针对 /etc/opt/SUNWsamfs/mcf
文件中定义的每台数据 (mr
) 设备,禁用隔离。使用命令 cldevice
set
-p
default_fencing=
nofencing-noscrub
device-identifier
,其中 device-identifier
是针对 mcf
文件第一列中的设备列出的设备标识符。
请勿针对元数据 (mm
) 设备禁用隔离!在 HA-COTC 配置中,QFS 元数据 (mm
) 设备属于群集的一部分,而 QFS 共享数据 (mr
) 设备则不属于。数据设备直接连接到群集外的客户机。出于这个原因,HA-COTC 数据 (mr
) 设备必须作为不受 Solaris Cluster 软件管理的本地设备进行管理。否则,Solaris Cluster 软件和 QFS 可能会发生冲突并损坏数据。
在上面的示例中,我们将 d4
和 d5
设备配置为 qfs1
文件系统的数据设备。因此我们针对这些设备全局禁用隔离(请注意,下面的命令是作为单行输入的-使用反斜杠字符对换行符进行转义):
[qfs1mds-node1]root@solaris:~#cldevice
set
-p
\default_fencing=
nofencing-noscrub
d4
[qfs1mds-node1]root@solaris:~#cldevice
set
-p
\default_fencing=
nofencing-noscrub
d5
登录到 HA-COTC 群集的主节点和 QFS 共享文件系统的活动元数据服务器。以 root
用户身份登录。
在示例中,qfs1mds-node1
是主节点和活动元数据服务器:
[qfs1mds-node1]root@solaris:~#
将属于文件系统的所有数据 (mr
) 设备放置在 localonly
设备组中。使用命令 cldevicegroup
set
-d
device-identifier-list
-p
localonly=
true
-n
active-mds-node
device-group
,其中 device-list
是逗号分隔的设备标识符列表,active-mds-node
是活动元数据服务器通常所在的主节点,device-group
是您为设备组选择的名称。
在以下示例中,我们将数据设备 d4
和 d5
(mcf
设备编号 102
和 103
)放置在主节点上的本地设备组 mdsdevgrp
中(请注意,下面的命令是作为单行输入的-使用反斜杠字符对换行符进行转义):
[qfs1mds-node1]root@solaris:~#cldevicegroup
set
-d
d4,d5
-p
localonly=
true
\-n
node1mds
mdsdevgrp
[qfs1mds-node1]root@solaris:~#
登录到 HA-COTC 群集的主节点和 QFS 共享文件系统的活动元数据服务器。以 root
用户身份登录。
在示例中,qfs1mds-node1
是主节点和活动元数据服务器:
[qfs1mds-node1]root@solaris:~#
备份操作系统的 /etc/vfstab
文件。
[qfs1mds-node1]root@solaris:~#cp
/etc/vfstab
/etc/vfstab.backup
在文本编辑器中打开操作系统的 /etc/vfstab
文件,并为新的文件系统添加一行。在第一列 (Device
to
Mount
) 中输入文件系统名称,后跟一个或多个空格。
在示例中,使用 vi
文本编辑器。我们为 qfs1
文件系统添加了一行:
[qfs1mds-node1]root@solaris:~#vi
/etc/vfstab
#File #Device Device Mount System fsck Mount Mount #to Mount to fsck Point Type Pass at Boot Options #-------- ------- ------------ ------ ---- ------- --------------------- /devices - /devices devfs - no - /proc - /proc proc - no - ...qfs1
-
在 /etc/vfstab
文件的第二列 (Device
to
fsck
) 中,输入一个连字符 (-
),后跟一个或多个空格。
连字符告知操作系统跳过文件系统完整性检查。这些检查是针对 UFS 文件系统的,而不是针对 SAMFS 文件系统。
[qfs1mds-node1]root@solaris:~# vi /etc/vfstab
#File
#Device Device Mount System fsck Mount Mount
#to Mount to fsck Point Type Pass at Boot Options
#-------- ------- ------------ ------ ---- ------- ---------------------
/devices - /devices devfs - no -
/proc - /proc proc - no -
...
qfs1 -
在 /etc/vfstab
文件的第三列中,输入相对于群集的文件系统挂载点。选择并非直接位于系统根目录下的子目录。
将共享 QFS 文件系统直接挂载到根目录下可能会在使用 SUNW.qfs
资源类型时导致故障转移问题。在示例中,我们将群集上的挂载点设置为 /global/ha-cotc/qfs1
:
#File
#Device Device Mount System fsck Mount Mount
#to Mount to fsck Point Type Pass at Boot Options
#-------- ------- -------------------- ------ ---- ------- --------------
/devices - /devices devfs - no -
/proc - /proc proc - no -
...
qfs1 - /global/ha-cotc/qfs1
像处理任何共享 QFS 文件系统那样,填充 /etc/vfstab
文件记录的剩余字段。然后保存文件并关闭编辑器。
#File #Device Device Mount System fsck Mount Mount #to Mount to fsck Point Type Pass at Boot Options #-------- ------- -------------------- ------ ---- ------- -------------- /devices - /devices devfs - no - /proc - /proc proc - no - ... qfs1 - /global/ha-cotc/qfs1samfs
-
no
shared
:wq
[qfs1mds-node1]root@solaris:~#
创建高可用性共享文件系统的挂载点。
带有 -p
(parents) 选项的 mkdir
命令可以在 /global
目录不存在的情况下创建该目录:
[qfs1mds-node1]root@solaris:~#mkdir
-p
/global/ha-cotc/qfs1
在主节点上挂载高可用性共享文件系统。
[qfs1mds-node1]root@solaris:~#mount
/global/ha-cotc/qfs1
双节点群集的辅助节点充当潜在元数据服务器。潜在元数据服务器是可以访问元数据设备的主机,因此可以承担元数据服务器的职责。因此,如果主节点上的活动元数据服务器发生故障,则 Solaris Cluster 软件可以故障转移到辅助节点并激活潜在元数据服务器。要配置潜在元数据服务器,请执行以下任务:
以 root
用户身份登录到 HA-COTC 群集的辅助节点。
在示例中,qfs1mds-node2
是辅助节点和潜在元数据服务器:
[qfs1mds-node2]root@solaris:~#
将 /etc/opt/SUNWsamfs/mcf
文件从主节点复制到辅助节点中。
检查 mcf
文件中是否存在错误。使用命令 /opt/SUNWsamfs/sbin/sam-fsd
并更正发现的任何错误。
sam-fsd
命令会读取 Oracle HSM 配置文件并初始化文件系统。如果遇到错误,该命令将停止。在示例中,检查主机 qfs1mds-node1
上的 mcf
文件:
[qfs1mds-node2]root@solaris:~# sam-fsd
...
Would start sam-archiverd()
Would start sam-stagealld()
Would start sam-stagerd()
Would start sam-amld()
[qfs1mds-node2]root@solaris:~#
以 root
用户身份登录到 HA-COTC 群集的辅助节点。
在示例中,qfs1mds-node2
是辅助节点:
[qfs1mds-node2]root@solaris:~#
备份操作系统的 /etc/vfstab
文件。
[qfs1mds-node2]root@solaris:~#cp
/etc/vfstab
/etc/vfstab.backup
在文本编辑器中,打开操作系统的 /etc/vfstab
文件,并为新的文件系统添加一行。然后保存文件并关闭编辑器。
在示例中,使用 vi
编辑器:
[qfs1mds-node2]root@solaris:~#vi
/etc/vfstab
#File #Device Device Mount System fsck Mount Mount #to Mount to fsck Point Type Pass at Boot Options #-------- ------- -------------------- ------ ---- ------- ------------- /devices - /devices devfs - no - /proc - /proc proc - no - ...qfs1
-
/global/ha-cotc/qfs1
samfs
-
no
shared
:wq
[qfs1mds-node2]root@solaris:~#
在辅助节点上创建高可用性共享文件系统的挂载点。
[qfs1mds-node2]root@solaris:~#mkdir
-p
/global/ha-cotc/qfs1
[qfs1mds-node2]root@solaris:~#
在辅助节点上挂载高可用性共享文件系统。
[qfs1mds-node2]root@solaris:~#mount
/global/ha-cotc/qfs1
[qfs1mds-node2]root@solaris:~#
当您在 Solaris Cluster 软件管理的群集中托管 Oracle HSM 共享文件系统时,可以通过创建 SUNW.qfs
群集资源来配置元数据服务器的故障转移,该群集资源为 Oracle HSM 软件定义的一种资源类型(有关详细信息,请参见 SUNW.qfs
手册页)。要创建并配置 HA-COTC 配置的资源,请执行如下操作:
以 root
用户身份登录到 HA-COTC 群集的主节点。
在示例中,qfs1mds-node1
是主节点:
[qfs1mds-node1]root@solaris:~#
为 Solaris Cluster 软件定义 QFS 资源类型 SUNW.qfs
。使用命令 clresourcetype
register
SUNW.qfs
。
[qfs1mds-node1]root@solaris:~#clresourcetype
register
SUNW.qfs
[qfs1mds-node1]root@solaris:~#
如果注册因找不到注册文件而失败,则将 /opt/SUNWsamfs/sc/etc/
目录的符号链接放置到 Solaris Cluster 存放资源类型注册文件的 /opt/cluster/lib/rgm/rtreg/
目录中。
您在安装 Oracle HSM 软件之前未安装 Oracle Solaris Cluster 软件。通常,Oracle HSM 会在安装期间检测到 Solaris Cluster 时自动提供 SUNW.qfs
注册文件的位置。因此您需要手动创建一个链接。
[qfs1mds-node1]root@solaris:~#cd
/opt/cluster/lib/rgm/rtreg/
[qfs1mds-node1]root@solaris:~#ln
-s
/opt/SUNWsamfs/sc/etc/SUNW.qfs
SUNW.qfs
[qfs1mds-node1]root@solaris:~#
创建 QFS 元数据服务器的资源组。使用 Solaris Cluster 命令 clresourcegroup
create
-n
node-list
group-name
,其中 node-list
是逗号分隔的两个群集节点名称的列表,group-name
是我们想要用于资源组的名称。
在示例中,使用 HA-COTC 服务器节点作为成员创建资源组 qfsrg
(请注意,下面的命令是作为单行输入的-使用反斜杠字符对换行符进行转义):
[qfs1mds-node1]root@solaris:~#clresourcegroup
create
-n
\qfs1mds-node1,qfs1mds-node2
qfsrg
[qfs1mds-node1]root@solaris:~#
在新的资源组中,设置活动元数据服务器的虚拟主机名。使用 Solaris Cluster 命令 clreslogicalhostname
create
-g
group-name
virtualMDS
,其中 group-name
是 QFS 资源组的名称,而 virtualMDS
是虚拟主机名。
使用您在 hosts 文件中用于共享文件系统的相同虚拟主机名。在示例中,我们在 qfsr
资源组中创建 qfs1mds
虚拟主机:
[qfs1mds-node1]root@solaris:~#clreslogicalhostname
create
-g
qfsrg
qfs1mds
向资源组中添加 QFS 文件系统资源。使用命令 clresource
create
-g
group-name
-t
SUNW.qfs
-x
QFSFileSystem=
mount-point
-y
Resource_dependencies=
virtualMDS
resource-name
,其中:
group-name
是 QFS 资源组的名称。
mount-point
是群集中文件系统的挂载点,即并非直接位于系统根目录下的子目录。
将共享 QFS 文件系统直接挂载到根目录下可能会在使用 SUNW.qfs
资源类型时导致故障转移问题。
virtualMDS
是活动元数据服务器的虚拟主机名。
resource-name
是您想要赋予资源的名称。
在本示例中,我们在 qfsrg
资源组中创建名为 hasqfs
的 SUNW.qfs
类型的资源。我们将 SUNW.qfs
扩展属性 QFSFileSystem
设置为 /global/ha-cotc/qfs1
挂载点,将标准属性 Resource_dependencies
设置为活动元数据服务器 qfs1mds
的逻辑主机(请注意,下面的命令是作为单行输入的-使用反斜杠字符对换行符进行转义):
[qfs1mds-node1]root@solaris:~#clresource
create
-g
qfsrg
-t
SUNW.qfs
\-x
QFSFileSystem=
/global/ha-cotc/qfs1
-y
Resource_dependencies=
qfs1mds
hasqfs
使资源组联机。使用命令 clresourcegroup
online
-emM
group-name
,其中 group-name
是 QFS 资源组的名称。
在示例中,我们使 qfsr
资源组联机:
[qfs1mds-node1]root@solaris:~#clresourcegroup
manage
qfsrg
[qfs1mds-node1]root@solaris:~#clresourcegroup
online
-emM
qfsrg
确保 QFS 资源组处于联机状态。使用 Solaris Cluster clresourcegroup
status
命令。
在示例中,主节点 sam1mds-node1
上的 qfsrg
资源组处于 online
状态:
[qfs1mds-node1]root@solaris:~#clresourcegroup
status
=== Cluster Resource Groups === Group Name Node Name Suspended Status ---------- ------------- --------- ------qfsrg
qfs1mds-node1
No
Online
qfs1mds-node2 No Offline
通过将资源组移动到辅助节点确保资源组正确地故障转移。使用 Solaris Cluster 命令 clresourcegroup
switch
-n
node2
group-name
,其中 node2
是辅助节点的名称,group-name
是您为 HA-QFS 资源组选择的名称。然后,使用 clresourcegroup status
检查结果。
在示例中,我们将 qfsrg
资源组移动到 qfs1mds-node2
并确认资源组在指定节点上处于联机状态:
[qfs1mds-node1]root@solaris:~#clresourcegroup
switch
-n
qfs1mds-node2
qfsrg
[qfs1mds-node1]root@solaris:~#clresourcegroup
status
=== Cluster Resource Groups === Group Name Node Name Suspended Status ---------- ------------- --------- ------qfsrg
qfs1mds-node1 No Offlineqfs1mds-node2
No
Online
将资源组移回到主节点。使用 Solaris Cluster 命令 clresourcegroup
switch
-n
node1
group-name
,其中 node1
是主节点的名称,group-name
是您为 HA-QFS 资源组选择的名称。然后,使用 clresourcegroup status
检查结果。
在示例中,我们将 qfsrg
资源组成功移回到 qfs1mds-node1
:
[qfs1mds-node1]root@solaris:~#clresourcegroup
switch
-n
qfs1mds-node1
qfsrg
[qfs1mds-node1]root@solaris:~#clresourcegroup
status
=== Cluster Resource Groups === Group Name Node Name Suspended Status ---------- ------------- --------- ------qfsrg
qfs1mds-node1
No
Online
qfs1mds-node2 No Offline
将每台主机配置为不具有文件系统元数据设备访问权限的 QFS 客户机,以便这些客户机不会影响群集内元数据服务器的高可用性配置。
对于每台 HA-COTC 共享文件系统客户机,请执行如下操作:
登录到 HA-COTC 群集的主节点。以 root
用户身份登录。
[qfs1mds-node1]root@solaris:~#
显示群集的设备配置。使用 Solaris Cluster 命令 /usr/global/bin/cldevice
list
-v
。
[qfs1mds-node1]root@solaris:~#cldevice
list
-v
DID Device Full Device Path ---------- ---------------- d1 qfs1mds-node1:/dev/rdsk/c0t0d0 d2 qfs1mds-node1:/dev/rdsk/c0t6d0 ... d7 qfs1mds-node2:/dev/rdsk/c0t1d0 [qfs1mds-node1]root@solaris:~#
检查 cldevice
list
-v
命令的输出。记下与每个 QFS 数据 (mr
) 设备的设备标识符对应的 /dev/rdsk/
路径。
在示例中,QFS 数据设备为 d4
和 d5
:
[qfs1mds-node1]root@solaris:~# cldevice list -v DID Device Full Device Path ---------- ---------------- d1 qfs1mds-node1:/dev/rdsk/c0t0d0 d2 qfs1mds-node1:/dev/rdsk/c0t6d0 d3 qfs1mds-node1:/dev/rdsk/c1t1d0 d3 qfs1mds-node2:/dev/rdsk/c1t1d0d4
qfs1mds-node1:/dev/rdsk/c1t2d0
d4 qfs1mds-node2:/dev/rdsk/c1t2d0d5
qfs1mds-node1:/dev/rdsk/c1t3d0
d5 qfs1mds-node2:/dev/rdsk/c1t3d0 d6 qfs1mds-node2:/dev/rdsk/c0t0d0 d7 qfs1mds-node2:/dev/rdsk/c0t1d0 [qfs1mds-node1]root@solaris:~#
以 root
用户身份登录到 HA-COTC 群集的客户机主机。
在示例中,qfs1client1
为客户机主机:
[qfs1mds-node1]root@solaris:~#ssh
root@
qfs1client1
[qfs1client1]root@solaris:~#
在客户机主机上,检索共享文件系统的配置信息。使用 samfsconfig
/dev/rdsk/*
命令。
samfsconfig
/dev/rdsk/*
命令在指定路径中搜索属于 QFS 文件系统的已连接设备。在示例中,该命令找到了 qfs1
数据 (mr
) 设备的路径。如预期的那样,它找不到元数据 (mm
) 设备,因此它在列出共享数据设备之前返回 Missing
slices
和 Ordinal
0
消息:
[qfs1client1]root@solaris:~#samfsconfig
/dev/rdsk/*
# Family Set 'qfs1' Created Thu Dec 21 07:17:00 2013 # Missing slices # Ordinal 0 #/dev/rdsk/c1t2d0
s0102
mr
qfs1
- #/dev/rdsk/c1t3d0
s1103
mr
qfs1
-
将 samfsconfig
命令的输出与服务器上 Solaris Cluster cldevice
list
命令的输出进行比较。确保两个输出针对 mr
数据设备报告相同的设备路径。
samfsconfig
和 cldevice
list
命令应该显示相同的设备,但是控制器编号 (c
N
) 可能不同。在示例中,samfsconfig
和 cldevice
list
命令确实指向相同的设备。
在元数据服务器节点上,/etc/opt/SUNWsamfs/mcf
文件使用群集设备标识符 d4
和 d5
标识共享 mr
数据设备 102
和 103
:
/dev/did/dsk/d4
s0 102 mr qfs1 - /dev/did/dsk/d5
s1 103 mr qfs1 -
元数据服务器节点上的 cldevice
list
命令将群集设备标识符 d4
和 d5
映射到路径 /dev/rdisk/c1t2d0
和 /dev/rdisk/c1t3d0
:
d4
qfs1mds-node1:/dev/rdsk/c1t2d0
d5
qfs1mds-node1:/dev/rdsk/c1t3d0
在客户机节点上,samfsconfig
命令也通过路径 /dev/rdisk/c1t2d0
和 /dev/rdisk/c1t3d0
标识共享 mr
数据设备 102
和 103
:
/dev/rdsk/c1t2d0
s0 102 mr qfs1 -/dev/rdsk/c1t3d0
s1 103 mr qfs1 -
在文本编辑器中打开客户机的 /etc/opt/SUNWsamfs/mcf
文件。针对 HA-COTC 共享文件系统添加一个条目。该条目应与元数据服务器 mcf
文件中的对应条目精确匹配。
在示例中,使用 vi
编辑器为文件 QFS 共享系统 qfs1
(设备序号为 100
)创建一个条目:
[qfs1client1]root@solaris:~#vi
/etc/opt/SUNWsamfs/mcf
# Equipment Equipment Equipment Family Device Additional # Identifier Ordinal Type Set State Parameters #------------------ --------- --------- ------- ------ ----------------qfs1
100
ma
qfs1
-
shared
在新行中,针对 HA-COTC 共享文件系统的元数据 (mm
) 设备添加一个条目。在第一列 (Equipment
Identifier
) 中,输入关键字 nodev
。
# Equipment Equipment Equipment Family Device Additional
# Identifier Ordinal Type Set State Parameters
#------------------ --------- --------- ------- ------ ----------------
qfs1 100 ma qfs1 - shared
nodev
使用元数据服务器 mcf
文件中使用的相同设备序号、系列集和设备状态参数填充 HA-COTC 文件系统元数据 (mm
) 设备的其余字段。
# Equipment Equipment Equipment Family Device Additional # Identifier Ordinal Type Set State Parameters #------------------ --------- --------- ------- ------ ---------------- qfs1 100 ma qfs1 - sharednodev
101
mm
qfs1
-
从 samfsconfig
输出复制数据 (mr
) 设备的完整条目。将这些条目粘贴到客户机的 /etc/opt/SUNWsamfs/mcf
文件中。删除 samfsconfig
插入的前导注释 (#
) 标记。然后保存文件并关闭编辑器。
# Equipment Equipment Equipment Family Device Additional # Identifier Ordinal Type Set State Parameters #------------------ --------- --------- ------- ------ ----------------- qfs1 100 ma qfs1 - shared nodev 101 mm qfs1 -/dev/rdsk/c1t2d0s0
102
mr
qfs1
-
/dev/rdsk/c1t3d0
s1103
mr
qfs1
-
:wq
[qfs1client1]root@solaris:~#
检查 mcf
文件中是否存在错误。使用命令 /opt/SUNWsamfs/sbin/sam-fsd
并更正发现的任何错误。
sam-fsd
命令会读取 Oracle HSM 配置文件并初始化文件系统。如果遇到错误,该命令将停止。在示例中,检查主机 qfs1client1
上的 mcf
文件:
[qfs1client1]root@solaris:~# sam-fsd
...
Would start sam-archiverd()
Would start sam-stagealld()
Would start sam-stagerd()
Would start sam-amld()
[qfs1client1]root@solaris:~#
在文本编辑器中打开客户机操作系统的 /etc/vfstab
文件,并使用在服务器上使用的相同参数针对新文件系统添加一个条目。然后保存文件并关闭编辑器。
在示例中,使用 vi
编辑器:
[qfs1client1]root@solaris:~#vi
/etc/vfstab
#File #Device Device Mount System fsck Mount Mount #to Mount to fsck Point Type Pass at Boot Options #-------- ------- -------------------- ------ ---- ------- ------------- /devices - /devices devfs - no - /proc - /proc proc - no - ...qfs1
-
/global/ha-cotc/qfs1
samfs
-
no
shared
:wq
[qfs1client1]root@solaris:~#
在客户机上创建高可用性共享文件系统的挂载点。
[qfs1client1]root@solaris:~#mkdir
-p
/global/qfs1
[qfs1client1]root@solaris:~#
在客户机上挂载高可用性共享文件系统。
在示例中
[qfs1client1]root@solaris:~#mount
/global/qfs1
[qfs1client1]root@solaris:~#
重复此过程直到完成所有 HA-COTC 客户机的配置。
如果计划使用边带数据库功能,请转至配置报告数据库。
否则,请转至配置通知和日志记录。
高可用性 Oracle Hierarchical Storage Manager (HA-SAM) 配置可通过确保 QFS 元数据服务器和 Oracle Hierarchical Storage Manager 应用程序在服务器主机发生故障的情况下仍能继续运行来维持归档文件系统的可用性。该文件系统在由 Solaris Cluster 软件管理的双节点群集上托管的活动 QFS 元数据服务器和潜在 QFS 元数据服务器之间共享。如果活动群集节点发生故障,则群集软件自动激活正常运行节点上的潜在 Oracle HSM 服务器并转移正在运行操作的控制权。由于 QFS 文件系统和 Oracle HSM 应用程序的本地存储目录是共享的并且已挂载,因此仍可无中断地访问数据和元数据。
凭借通过活动元数据服务器发送所有 I/O,HA-SAM 配置可确保群集环境中的文件系统一致性。仅出于可访问性原因共享 HA-SAM 文件系统。您无法像在其他 SAM-QFS 共享文件系统配置中那样将潜在元数据服务器主机用作文件系统客户机。除非在节点故障转移期间激活了潜在元数据服务器,否则潜在元数据服务器不执行 I/O。可以使用 NFS 与客户机共享 HA-SAM 文件系统。但您必须确保以独占方式从活动元数据服务器节点导出共享。
高可用性归档文件系统依赖三种 Solaris Cluster 资源类型:
SUNW.hasam
如果主要主机发生故障,则 SUNW.hasam
资源管理 Oracle Hierarchical Storage Manager 应用程序的故障转移。SUNW.hasam
软件随附在 Oracle HSM 软件分发中。
SUNW.qfs
如果主要主机发生故障,则 SUNW.qfs
资源管理 QFS 元数据服务器的故障转移。SUNW.qfs
软件随附在 Oracle HSM 软件分发中(有关更多信息,请参见 SUNW.qfs
手册页)。
SUNW.HAStoragePlus
如果主要主机发生故障,则 SUNW.HAStoragePlus
资源管理 Oracle Hierarchical Storage Manager 本地存储的故障转移。Oracle HSM 应用程序在服务器主机的本地文件系统中维护易失性归档信息(作业队列和可移除介质目录)。SUNW.HAStoragePlus
作为标准资源类型随附在 Solaris Cluster 软件中(有关资源类型的更多信息,请参见 Oracle Solaris Cluster 文档库中的 Data Services Planning and Administration(数据服务规划和管理)文档。
要配置所需组件的实例并将它们整合成一个有效的 HA-SAM 归档配置,请执行以下任务:
如果需要,配置高可用性网络文件系统 (High-Availability Network File System, HA-NFS) 共享。
Oracle Solaris Cluster 联机文档库包含的《Oracle Solaris Cluster Data Service for Network File System (NFS) Guide》中提供了设置 HA-NFS 的详细步骤。
在归档 Oracle HSM 共享文件系统中,您必须在元数据服务器上配置一个 hosts 文件,以便两个节点上的主机都能访问文件系统的元数据。hosts 文件与 mcf
文件一起存储在 /etc/opt/SUNWsamfs/
目录中。在共享文件系统的初始创建过程中,sammkfs
-S
命令使用该文件中存储的设置配置共享。因此,现在请使用下面的过程创建该文件。
以 root
用户身份登录到 HA-SAM 群集的主节点。
在示例中,sam1mds-node1
是主节点:
[sam1mds-node1]root@solaris:~#
显示群集配置。使用 /usr/global/bin/cluster
show
命令。在输出中,找到每个 Node
Name
的记录,并记下 privatehostname
和 Transport
Adapter
名称,以及每个网络适配器的 ip_address
属性。
在示例中,每个节点都有两个网络接口,hme0
和 qfe3
:
hme0
适配器具有群集用于节点间内部通信的专用网络的 IP 地址。Solaris Cluster 软件会分配与每个专用地址相对应的 privatehostname
。
默认情况下,主节点和辅助节点的专用主机名分别为 clusternode1-priv
和 clusternode2-priv
。
qfe3
适配器具有公共 IP 地址和公共主机名(即 sam1mds-node1
和 sam1mds-node2
),群集使用它们来进行数据传输。
请注意,使用省略号 (...
) 标记简化了显示内容:
[sam1mds-node1]root@solaris:~#cluster
show
... === Cluster Nodes === Node Name: sam1mds-node1... privatehostname: clusternode1-priv... Transport Adapter List: qfe3, hme0... Transport Adapter: qfe3... Adapter Property(ip_address): 172.16.0.12... Transport Adapter: hme0... Adapter Property(ip_address): 10.0.0.129... Node Name: sam1mds-node2... privatehostname: clusternode2-priv... Transport Adapter List: qfe3, hme0... Adapter Property(ip_address): 172.16.0.13... Transport Adapter: hme0... Adapter Property(ip_address): 10.0.0.122
使用文本编辑器,创建文件 /etc/opt/SUNWsamfs/hosts.
family-set-name
,其中 family-set-name
是 /etc/opt/SUNWsamfs/mcf
文件分配给文件系统设备的系列集名称。
在示例中,使用 vi
文本编辑器创建文件 hosts.sam1
。我们添加一些可选标题以显示主机表中的列,每行以井号 (#
) 开头表示该行为注释:
[sam1mds-node1]root@solaris:~#vi
/etc/opt/SUNWsamfs/hosts.sam1
# /etc/opt/SUNWsamfs/hosts.sam1 # Server On/ Additional #Host Name Network Interface Ordinal Off Parameters #------------ ----------------------------- ------- --- ----------
在表的第一列中,输入主元数据服务器节点和辅助元数据服务器节点的主机名称,后面跟有一些空格,让每个条目都独占一行。
在 hosts 文件中,行即为行(记录),空格为列(字段)分隔符。在本示例中,Host Name
列的前两行包含值 sam1mds-node1
和 sam1mds-node2
,它们是托管文件系统元数据服务器的群集节点的主机名:
# Server On/ Additional #Host Name Network Interface Ordinal Off Parameters #------------ ----------------------------- ------- --- ----------sam1mds-node1
sam1mds-node2
在每行的第二列中,开始为 Host Name
列中列出的主机提供 Network Interface
信息。输入各个 HA-SAM 群集节点的 Solaris Cluster 专用主机名或专用网络地址,后跟一个逗号。
HA-SAM 服务器节点使用专用主机名在高可用性群集内进行服务器间的通信。在示例中,使用专用主机名 clusternode1-priv
和 clusternode2-priv
,这些是 Solaris Cluster 软件分配的默认名称:
# Server On/ Additional #Host Name Network Interface Ordinal Off Parameters #------------ ----------------------------- ------- --- ---------- sam1mds-node1clusternode1-priv,
sam1mds-node2clusternode2-priv,
在每行第二列中的逗号后面,输入活动元数据服务器的公共主机名,后跟空格。
HA-SAM 服务器节点使用公共数据网络与群集外的主机通信。由于活动元数据服务器的 IP 地址和主机名在故障转移期间会发生更改(从 sam1mds-node1
更改为 sam1mds-node2
,反之亦然),因此,我们对二者都使用虚拟主机名 sam1mds
。稍后,我们将 Solaris Cluster 软件配置为始终将 sam1mds
的请求路由到活动元数据服务器:
# Server On/ Additional #Host Name Network Interface Ordinal Off Parameters #------------ ----------------------------- ------- --- ---------- sam1mds-node1clusternode1-priv,sam1mds
sam1mds-node2clusternode2-priv,sam1mds
在每行的第三列中,输入服务器的序号(1
表示活动元数据服务器,2
表示潜在元数据服务器),后跟空格。
在本示例中,只有一个元数据服务器,主节点 sam1mds-node1
是活动元数据服务器,因此其序号为 1
,辅助节点 sam1mds-node2
的序号为 2
:
# Server On/ Additional #Host Name Network Interface Ordinal Off Parameters #------------ ----------------------------- ------- --- ---------- sam1mds-node1 clusternode1-priv,sam1mds1
sam1mds-node2 clusternode2-priv,sam1mds2
在每行的第四列中,输入 0
(零),后跟空格。
第四列中的值为 0
、-
(连字符)或空表示该主机处于 on 状态-配置为对共享文件系统有访问权限。1
(数字一)表示该主机处于 off 状态-配置为对文件系统没有访问权限(有关在管理共享文件系统时使用这些值的信息,请参见 samsharefs
手册页)。
# Server On/ Additional #Host Name Network Interface Ordinal Off Parameters #------------ ----------------------------- ------- --- ---------- sam1mds-node1 clusternode1-priv,sam1mds 10
sam1mds-node2 clusternode2-priv,sam1mds 20
在主节点行的第五列中,输入关键字 server
。然后保存文件并关闭编辑器。
server 关键字用于标识默认的活动元数据服务器:
# Server On/ Additional #Host Name Network Interface Ordinal Off Parameters #------------ ----------------------------- ------- --- ---------- sam1mds-node1 clusternode1-priv,sam1mds 1 0server
sam1mds-node2 clusternode2-priv,sam1mds 2 0:wq
[sam1mds-node1]root@solaris:~#
将全局 /etc/opt/SUNWsamfs/hosts.
family-set-name
文件的副本放置在潜在元数据服务器上。
在高可用性归档共享文件系统中,您需要使用 Solaris Cluster 软件定义的专用网络确保服务器可以互相通信。为此,需要使用专门配置的本地 hosts 文件选择性地在服务器的网络接口之间路由网络流量。
每个文件系统主机通过首先查看元数据服务器上的 /etc/opt/SUNWsamfs/hosts.
family-set-name
文件来确定用于其他主机的网络接口。然后,主机检查自己的特定 /etc/opt/SUNWsamfs/hosts.
family-set-name
.local
文件。如果没有本地 hosts 文件,则主机将按照全局 hosts 文件中指定的顺序使用该全局文件中指定的接口地址。但是,如果存在本地 hosts 文件,则主机会将其与全局文件进行比较并按照本地文件中指定的顺序仅使用两个文件中同时列出的那些接口。通过在不同的安排下使用各文件中的 IP 地址,您可以控制不同主机使用的接口。
要配置本地 hosts 文件,请使用下面概述的过程:
以 root
用户身份登录到 HA-SAM 群集的主节点。
在示例中,sam1mds-node1
是主节点:
[sam1mds-node1]root@solaris:~#
使用文本编辑器通过路径和文件名 /etc/opt/SUNWsamfs/hosts.
family-set-name
.local
在活动元数据服务器上创建本地 hosts 文件,其中 family-set-name
是 /etc/opt/SUNWsamfs/mcf
文件分配给文件系统设备的系列集名称。仅包括您希望活动服务器与潜在服务器通信时使用的网络接口。然后保存文件并关闭编辑器。
在示例中,我们希望活动元数据服务器和潜在元数据服务器通过专用网络互相通信。因此活动元数据服务器上的本地 hosts 文件 hosts.sam1.local
仅列出活动服务器和潜在服务器的群集专用地址:
[sam1mds-node1]root@solaris:~#vi
/etc/opt/SUNWsamfs/hosts.sam1.local
# Server On/ Additional #Host Name Network Interface Ordinal Off Parameters #------------ ----------------------------- ------- --- ---------- sam1mds-node1clusternode1-priv
1 0 server sam1mds-node2clusternode2-priv
2 0:wq
[sam1mds-node1]root@solaris:~#
以 root
用户身份登录辅助群集节点。
在示例中,sam1mds-node2
是辅助节点:
[sam1mds-node1]root@solaris:~#ssh
root@
sam1mds-node2
Password: [sam1mds-node2]root@solaris:~#
使用文本编辑器在潜在元数据服务器上创建一个本地 hosts 文件。使用路径和文件名 /etc/opt/SUNWsamfs/hosts.
family-set-name
.local
,其中 family-set-name
是 /etc/opt/SUNWsamfs/mcf
文件分配给文件系统设备的系列集名称。仅包括您希望潜在服务器与活动服务器通信时使用的网络接口。然后保存文件并关闭编辑器。
在示例中,我们希望活动元数据服务器和潜在元数据服务器通过专用网络互相通信。因此潜在元数据服务器上的本地 hosts 文件 hosts.sam1.local
仅列出活动服务器和潜在服务器的群集专用地址:
[sam1mds-node2]root@solaris:~#vi
/etc/opt/SUNWsamfs/hosts.sam1.local
# Server On/ Additional #Host Name Network Interface Ordinal Off Parameters #------------ ----------------------------- ------- --- ---------- sam1mds-node1clusternode1-priv
1 0 server sam1mds-node2clusternode2-priv
2 0:wq
[sam1mds-node2]root@solaris:~#exit
[sam1mds-node1]root@solaris:~#
选择将同时充当 HA-SAM 群集的主节点和 QFS 共享文件系统的活动元数据服务器的群集节点。以 root
用户身份登录。
在示例中,sam1mds-node1
是主节点:
[sam1mds-node1]root@solaris:~#
选择要用于 QFS 文件系统的全局存储设备。使用命令 /usr/global/bin/cldevice
list
-v
。
Solaris Cluster 软件向连接到群集节点的所有设备分配唯一的设备标识符 (Device Identifier, DID)。全局设备可以从群集中的所有节点进行访问,而本地设备仅可以从挂载它们的主机进行访问。全局设备在故障转移后仍然可以访问。本地设备则不然。
在示例中,请注意 d1
、d2
、d7
和 d8
设备从两个节点都无法访问。所以在配置高可用性 QFS 共享文件系统时,我们从 d3
、d4
和 d5
设备中进行选择:
[sam1mds-node1]root@solaris:~#cldevice
list
-v
DID Device Full Device Path ---------- ---------------- d1 sam1mds-node1:/dev/rdsk/c0t0d0 d2 sam1mds-node1:/dev/rdsk/c0t6d0d3
sam1mds-node1
:/dev/rdsk/c1t1d0d3
sam1mds-node2
:/dev/rdsk/c1t1d0d4
sam1mds-node1
:/dev/rdsk/c1t2d0d4
sam1mds-node2
:/dev/rdsk/c1t2d0d5
sam1mds-node1
:/dev/rdsk/c1t3d0d5
sam1mds-node2
:/dev/rdsk/c1t3d0 d6 sam1mds-node2:/dev/rdsk/c0t0d0 d7 sam1mds-node2:/dev/rdsk/c0t1d0
在选定的主节点上,创建使用 mr
数据设备的高性能 ma
文件系统。在文本编辑器中,打开 /etc/opt/SUNWsamfs/mcf
文件。
在示例中,我们配置文件系统 sam1
。我们将设备 d3
配置为元数据设备(设备类型 mm
),并将 d4
和 d5
用作数据设备(设备类型 mr
):
[sam1mds-node1]root@solaris:~#vi
/etc/opt/SUNWsamfs/mcf
# Equipment Equipment Equipment Family Device Additional # Identifier Ordinal Type Set State Parameters #------------------ --------- --------- ------- ------ -----------------sam1
100ma
sam1 -/dev/did/dsk/d3s0
101mm
sam1 -/dev/did/dsk/d4s0
102mr
sam1 -/dev/did/dsk/d5s1
103mr
sam1 -
在 /etc/opt/SUNWsamfs/mcf
文件的文件系统条目的 Additional Parameters
列中输入 shared
参数。保存文件。
[sam1mds-node1]root@solaris:~# vi /etc/opt/SUNWsamfs/mcf # Equipment Equipment Equipment Family Device Additional # Identifier Ordinal Type Set State Parameters #------------------ --------- --------- ------- ------ ----------------- sam1 100 ma sam1 -shared
/dev/did/dsk/d3s0 101 mm sam1 - /dev/did/dsk/d4s0 102 mr sam1 - /dev/did/dsk/d5s1 103 mr sam1 -:wq
[sam1mds-node1]root@solaris:~#
检查 mcf
文件中是否存在错误。使用命令 /opt/SUNWsamfs/sbin/sam-fsd
并更正发现的任何错误。
sam-fsd
命令会读取 Oracle HSM 配置文件并初始化文件系统。如果遇到错误,该命令将停止。在示例中,检查主机 sam1mds-node1
上的 mcf
文件:
[sam1mds-node1]root@solaris:~# sam-fsd
...
Would start sam-archiverd()
Would start sam-stagealld()
Would start sam-stagerd()
Would start sam-amld()
[sam1mds-node1]root@solaris:~#
创建文件系统。使用命令 /opt/SUNWsamfs/sbin/sammkfs
-S
family-set-name
,其中 family-set-name
是 /etc/opt/SUNWsamfs/mcf
文件分配给文件系统设备的系列集名称。
sammkfs
命令读取 hosts.
family-set-name
和 mcf
文件,并创建具有指定属性的 Oracle HSM 文件系统。
[sam1mds-node1]root@solaris:~#sammkfs
-S
sam1
Building 'sam1' will destroy the contents of devices: ... Do you wish to continue? [y/N]yes
... [sam1mds-node1]root@solaris:~#
在文本编辑器中打开操作系统的 /etc/vfstab
文件,并为新的文件系统添加一行。在第一列中输入文件系统名称,然后输入几个空格,在第二列中输入一个连字符,然后输入更多的空格。
在示例中,使用 vi
文本编辑器。我们为 sam1
文件系统添加了一行。连字符阻止操作系统尝试使用 UFS 工具检查文件系统的完整性:
[sam1mds-node1]root@solaris:~#vi
/etc/vfstab
#File #Device Device Mount System fsck Mount Mount #to Mount to fsck Point Type Pass at Boot Options #-------- ------- ------------ ------ ---- ------- --------------------- /devices - /devices devfs - no - /proc - /proc proc - no - ...sam1
-
在 /etc/vfstab
文件的第三列中,输入相对于群集的文件系统挂载点。选择并非直接位于系统根目录下的子目录。
将共享 QFS 文件系统直接挂载到根目录下可能会在使用 SUNW.qfs
资源类型时导致故障转移问题。在示例中,我们将群集上的挂载点设置为 /global/ha-sam/sam1
:
#File
#Device Device Mount System fsck Mount Mount
#to Mount to fsck Point Type Pass at Boot Options
#-------- ------- ------------------- ------ ---- ------- ---------------
/devices - /devices devfs - no -
/proc - /proc proc - no -
...
sam1 - /global/ha-sam/sam1
像处理任何共享 Oracle HSM 共享文件系统那样,填充 /etc/vfstab
文件记录的剩余字段。然后保存文件并关闭编辑器。
#File #Device Device Mount System fsck Mount Mount #to Mount to fsck Point Type Pass at Boot Options #-------- ------- ------------------- ------ ---- ------- --------------- /devices - /devices devfs - no - /proc - /proc proc - no - ... sam1 - /global/ha-sam/sam1samfs
-
no
shared
:wq
[sam1mds-node1]root@solaris:~#
创建高可用性文件系统的挂载点。
带有 -p
(parents) 选项的 mkdir
命令可以在 /global
目录不存在的情况下创建该目录:
[sam1mds-node1]root@solaris:~#mkdir
-p
/global/ha-sam/sam1
在主节点上挂载高可用性共享文件系统。
[sam1mds-node1]root@solaris:~#mount
/global/ha-sam/sam1
双节点群集的辅助节点充当潜在元数据服务器。潜在元数据服务器是可以访问元数据设备的主机,因此可以承担元数据服务器的职责。因此,如果主节点上的活动元数据服务器发生故障,则 Solaris Cluster 软件可以故障转移到辅助节点并激活潜在元数据服务器。
以 root
用户身份登录到 HA-SAM 群集的辅助节点。
在示例中,sam1mds-node2
是辅助节点:
[sam1mds-node2]root@solaris:~#
将 /etc/opt/SUNWsamfs/mcf
文件从主节点复制到辅助节点中。
检查 mcf
文件中是否存在错误。使用命令 /opt/SUNWsamfs/sbin/sam-fsd
并更正发现的任何错误。
sam-fsd
命令会读取 Oracle HSM 配置文件并初始化文件系统。如果遇到错误,该命令将停止。在示例中,检查主机 sam1mds-node1
上的 mcf
文件:
[sam1mds-node2]root@solaris:~# sam-fsd
...
Would start sam-archiverd()
Would start sam-stagealld()
Would start sam-stagerd()
Would start sam-amld()
[sam1mds-node2]root@solaris:~#
创建文件系统。使用命令 /opt/SUNWsamfs/sbin/sammkfs
-S
family-set-name
,其中 family-set-name
是 /etc/opt/SUNWsamfs/mcf
文件分配给文件系统设备的系列集名称。
sammkfs
命令读取 hosts.
family-set-name
和 mcf
文件,并创建具有指定属性的 Oracle HSM 文件系统。
[sam1mds-node2]root@solaris:~#sammkfs
sam1
Building 'sam1' will destroy the contents of devices: ... Do you wish to continue? [y/N]yes
... [sam1mds-node2]root@solaris:~#
在文本编辑器中,打开操作系统的 /etc/vfstab
文件,并为新的文件系统添加一行。然后保存文件并关闭编辑器。
在示例中,使用 vi
编辑器:
[sam1mds-node2
]root@solaris:~#vi
/etc/vfstab
#File #Device Device Mount System fsck Mount Mount #to Mount to fsck Point Type Pass at Boot Options #-------- ------- ------------------- ------ ---- ------- -------------- /devices - /devices devfs - no - /proc - /proc proc - no - ...sam1
-
/global/ha-sam/sam1
samfs
-
no
shared
:wq
[sam1mds-node2
]root@solaris:~#
在辅助节点上创建高可用性共享文件系统的挂载点。
[sam1mds-node2
]root@solaris:~#mkdir
-p
/global/ha-sam/sam1
在辅助节点上挂载高可用性共享文件系统。
[sam1mds-node2
]root@solaris:~#mount
/global/ha-sam/sam1
现在,创建 HA-SAM 群集资源组。
创建将管理 HA-SAM 解决方案的高可用性资源的资源组。
以 root
用户身份登录到 HA-SAM 群集的主群集节点。
在示例中,主节点是 sam1mds-node1
:
[sam1mds-node1]root@solaris:~#
创建 Solaris Cluster 资源组以管理 HA-SAM 解决方案资源。使用命令 clresourcegroup
create
-n
node1
,node2
groupname
,其中:
node1
是主群集节点的主机名。
node2
是辅助群集节点的主机名。
groupname
是您为 HA-SAM 资源组选择的名称。
在本示例中,我们创建名为 has-rg
的资源组并包含主机 sam1mds-node1
和 sam1mds-node2
(请注意,下面的命令是作为单行输入的-使用反斜杠字符对换行符进行转义):
[sam1mds-node1]root@solaris:~#clresourcegroup
create
\-n
sam1mds-node1
,sam1mds-node2
has-rg
要成功恢复以下故障转移,Oracle HSM 软件必须重新启动在故障转移发生时运行的归档操作。要重新启动归档操作,该软件必须对系统配置和状态信息具有访问权限,该信息通常存储在活动元数据服务器的本地文件系统中。因此您必须将所需的信息移动到高可用性本地文件系统中,始终可以从群集中的两个节点访问该文件系统。
要创建所需的文件系统,请执行如下操作:
以 root
用户身份登录到 HA-SAM 群集的主节点。
在示例中,主节点是 sam1mds-node1
:
[sam1mds-node1]root@solaris:~#
在主群集节点上,在全局设备的空闲分片上创建 UFS 文件系统。使用命令 newfs
/dev/global/dsk/d
X
s
Y
,其中 X
是全局设备的设备标识符 (Device Identifier, DID) 编号,Y
是分片编号。
在本示例中,我们在 /dev/global/dsk/d10s0
上创建新文件系统:
[sam1mds-node1]root@solaris:~#newfs
/dev/global/dsk/d10s0
newfs: construct a new file system /dev/global/dsk/d10s0: (y/n)?y
/dev/global/dsk/d10s0: 1112940 sectors in 1374 cylinders of 15 tracks, 54 sectors 569.8MB in 86 cyl groups (16 c/g, 6.64MB/g, 3072 i/g) super-block backups(for fsck -b #) at: 32, 13056, 26080, 39104, 52128, 65152, 78176, 91200, 104224, . . . [sam1mds-node1]root@solaris:~#
在主群集节点上,在文本编辑器中打开操作系统的 /etc/vfstab
文件。针对新 UFS 文件系统添加一行。保存文件并关闭编辑器。
新行应为 /dev/global/dsk/d
X
s
Y
/dev/global/dsk/d
X
s
Y
/global/
mount_point
ufs
5
no
global
形式的空格分隔的列表,其中:
X
是存放文件系统的全局设备的设备标识符 (Device Identifier, DID) 编号。
Y
是存放文件系统的分片的编号。
/dev/global/dsk/d
X
s
Y
是将要挂载的文件系统设备的名称。
/dev/global/dsk/d
X
s
Y
是将由 fsck
命令进行检查的文件系统设备的名称。
mount_point
是要挂载 UFS 文件的子目录的名称。
ufs
是文件系统类型。
5
是建议的 fsck
传递号。
no
告知操作系统不应在启动时挂载文件系统。
global
挂载文件系统,以便两个节点都具有访问权限。
在示例中,使用 vi
编辑器。文件系统名称为 /dev/global/dsk/d10s0
,挂载点为 /global/
hasam_cfg
(请注意,文件系统条目是单行-为了适应页面,插入了一个换行符并使用反斜杠字符对其进行了转义):
[sam1mds-node1]root@solaris:~#vi
/etc/vfstab
#File #Device Device Mount System fsck Mount Mount #to Mount to fsck Point Type Pass at Boot Options #-------- ------- ------------------- ------ ---- ------- -------------- /devices - /devices devfs - no - /proc - /proc proc - no - ... sam1 - /global/ha-samsam1 samfs - no shared/dev/global/dsk/d10s0
/dev/global/rdsk/d10s0
/global/
hasam_cfg
ufs
5
\no
global
:wq
[sam1mds-node2]root@solaris:~#
在主群集节点上,为高可用性本地文件系统创建挂载点。使用命令 mkdir
-p
/global/
mount_point
,其中 mount_point
是选择的挂载点目录。
在本示例中,我们创建目录 /global/hasam_cfg
:
[sam1mds-node1]root@solaris:~#mkdir
-p
/global/
hasam_cfg
以 root
用户身份登录辅助群集节点。
在示例中,辅助节点是 sam1mds-node2
。我们使用 ssh
登录:
[sam1mds-node1]root@solaris:~#ssh
root@
sam1mds-node2
Password: [sam1mds-node2]root@solaris:~#
在辅助节点上,在文本编辑器中打开操作系统的 /etc/vfstab
文件。针对新 UFS 文件系统添加一个相同的条目。保存文件并关闭编辑器。
[sam1mds-node1]root@solaris:~#ssh
root@sam1mds-node2
Password: [sam1mds-node2]root@solaris:~#vi
/etc/vfstab
#File #Device Device Mount System fsck Mount Mount #to Mount to fsck Point Type Pass at Boot Options #-------- ------- ------------------- ------ ---- ------- -------------- /devices - /devices devfs - no - /proc - /proc proc - no - ... sam1 - /global/ha-samsam1 samfs - no shared/dev/global/dsk/d10s0
/dev/global/rdsk/d10s0
/global/hasam_cfg
ufs
5
\no
global
:wq
[sam1mds-node1]root@solaris:~#
在辅助节点上,创建相同的挂载点。
在本示例中,我们创建 /global/hasam_cfg
目录。然后,我们关闭 ssh
会话并恢复在主节点上的工作:
[sam1mds-node2]root@solaris:~#mkdir
-p
/global/hasam_cfg
[sam1mds-node2]root@solaris:~#exit
[sam1mds-node1]root@solaris:~#
在主节点上,挂载高可用性本地文件系统。使用命令 mount
/global/
mount_point
,其中 mount_point
是选择的挂载点目录。
该命令在两个节点上挂载 UFS 文件系统。在本示例中,我们在 /global/
hasam_cfg
上挂载文件系统:
[sam1mds-node1]root@solaris:~#mount
/global/hasam_cfg
[sam1mds-node1]root@solaris:~#
在主节点上,创建用于存放 Oracle HSM 回写信息的子目录。使用命令 mkdir
-p
/global/
mount_point
/catalog
,其中 mount_point
是选择的挂载点目录。
[sam1mds-node1]root@solaris:~#mkdir
/global/hasam_cfg/catalog
[sam1mds-node1]root@solaris:~#
在主节点上,创建用于存放 Oracle HSM 归档目录的子目录。使用命令 mkdir
-p
/global/
mount_point
/stager
,其中 mount_point
是选择的挂载点目录。
[sam1mds-node1]root@solaris:~#mkdir
/global/hasam_cfg/stager
[sam1mds-node1]root@solaris:~#
以 root
用户身份登录到 HA-SAM 群集的主节点。
在示例中,主节点是 sam1mds-node1
:
[sam1mds-node1]root@solaris:~#
在主节点上,将 catalog/
和 stager/
目录从其在 /var/opt/SUNWsamfs/
中的默认位置复制到临时位置。
在本示例中,我们将指令递归复制到 /var/tmp/
中(请注意,下面的第一条命令是作为单行输入的-使用反斜杠字符对换行符进行转义):
[sam1mds-node1]root@solaris:~#cp
-r
/var/opt/SUNWsamfs/catalog
\/var/tmp/catalog
[sam1mds-node1]root@solaris:~#cp
-r
/var/opt/SUNWsamfs/stager
/var/tmp/stager
[sam1mds-node1]root@solaris:~#
在主节点上,从 /var/opt/SUNWsamfs/
中删除 catalog/
和 stager/
目录。
[sam1mds-node1]root@solaris:~#rm
-rf
/var/opt/SUNWsamfs/catalog
[sam1mds-node1]root@solaris:~#rm
-rf
/var/opt/SUNWsamfs/stager
[sam1mds-node1]root@solaris:~#
在主节点上,创建从目录信息的默认位置到高可用性 UFS 本地文件系统中的新位置的符号链接。使用命令 ln
-s
/global/
mount_point
/catalog
/var/opt/SUNWsamfs/catalog
,其中:
mount_point
是将高可用性本地文件系统连接到节点根文件系统的子目录的名称。
/var/opt/SUNWsamfs/catalog
是默认位置。
符号链接会自动将对目录信息的请求重定向至新位置。在本示例中,我们创建一个指向新位置 /global/hasam_cfg/catalog
的 catalog
链接(请注意,下面的命令是作为单行输入的-使用反斜杠字符对换行符进行转义):
[sam1mds-node1]root@solaris:~#ln
-s
/global/hasam_cfg/catalog
\/var/opt/SUNWsamfs/catalog
[sam1mds-node1]root@solaris:~#
在主节点上,创建从回写信息的默认位置到高可用性 UFS 本地文件系统中的新位置的符号链接。使用命令 ln
-s
/global/
mount_point
/stager
/var/opt/SUNWsamfs/stager
,其中:
mount_point
是将高可用性本地文件系统连接到节点根文件系统的子目录的名称。
/var/opt/SUNWsamfs/stager
是默认位置。
符号链接会自动将对回写程序信息的请求重定向至新位置。在本示例中,我们创建一个指向新位置 /global/hasam_cfg/stager
的 stager
链接(请注意,下面的命令是作为单行输入的-使用反斜杠字符对换行符进行转义):
[sam1mds-node1]root@solaris:~#ln
-s
/global/hasam_cfg/stager \ /var/opt/SUNWsamfs/stager
[sam1mds-node1]root@solaris:~#
在主节点上,确保符号链接已替换默认的 /var/opt/SUNWsamfs/catalog
和 /var/opt/SUNWsamfs/stager
目录。确保这些链接指向高可用性文件系统中的新位置。
在示例中,链接正确:
[sam1mds-node1]root@solaris:~#ls
-l
/var/opt/SUNWsamfs/catalog
lrwxrwxrwx 1 root other .../var/opt/SUNWsamfs/catalog
->
/global/hasam_cfg/catalog
[sam1mds-node1]root@solaris:~#ls
-l
/var/opt/SUNWsamfs/stager
lrwxrwxrwx 1 root other .../var/opt/SUNWsamfs/stager -> /global/hasam_cfg/stager
[sam1mds-node1]root@solaris:~#
将 catalog/
和 stager/
目录的内容从临时位置复制到高可用性共享文件系统。
在本示例中,我们将 catalog/
和 stager/
目录从 /var/tmp/
复制到新位置 /global/hasam_cfg/stager
(请注意,下面的命令是作为单行输入的-使用反斜杠字符对换行符进行转义):
[sam1mds-node1]root@solaris:~#cp
-rp
/var/tmp/catalog/*
\/var/opt/SUNWsamfs/catalog
[sam1mds-node1]root@solaris:~#cp
-rp
/var/tmp/stager/*
\/var/opt/SUNWsamfs/stager
[sam1mds-node1]root@solaris:~#
以 root
用户身份登录到 HA-SAM 群集的辅助节点。
在示例中,使用 ssh
(secure shell,安全 shell)登录到 sam1mds-node2
(辅助节点):
[sam1mds-node1]root@solaris:~#ssh
root@
sam1mds-node2
Password: [sam1mds-node2]root@solaris:~#
在辅助节点上,创建从目录信息的默认位置到高可用性 UFS 本地文件系统中的新位置的符号链接。使用命令 ln
-s
/global/
mount_point
/catalog
/var/opt/SUNWsamfs/catalog
,其中:
mount_point
是将高可用性本地文件系统连接到节点根文件系统的子目录的名称。
/var/opt/SUNWsamfs/catalog
是默认位置。
符号链接会自动将对目录信息的请求重定向至新位置。在本示例中,我们创建一个指向新位置 /global/hasam_cfg/catalog
的 catalog
链接(请注意,下面的命令是作为单行输入的-使用反斜杠字符对换行符进行转义):
[sam1mds-node2]root@solaris:~#ln
-s
/global/hasam_cfg/catalog
\/var/opt/SUNWsamfs/catalog
[sam1mds-node2]root@solaris:~#
在辅助节点上,创建从回写信息的默认位置到高可用性 UFS 本地文件系统中的新位置的符号链接。使用命令 ln
-s
/global/
mount_point
/stager
/var/opt/SUNWsamfs/stager
,其中:
mount_point
是将高可用性本地文件系统连接到节点根文件系统的子目录的名称。
/var/opt/SUNWsamfs/stager
是默认位置。
符号链接会自动将对回写程序信息的请求重定向至新位置。在本示例中,我们创建一个指向新位置 /global/hasam_cfg/stager
的 stager
链接(请注意,下面的命令是作为单行输入的-使用反斜杠字符对换行符进行转义):
[sam1mds-node2]root@solaris:~#ln
-s
/global/hasam_cfg/stager \ /var/opt/SUNWsamfs/stager
[sam1mds-node2]root@solaris:~#
在辅助节点上,确保符号链接已替换默认的 /var/opt/SUNWsamfs/catalog
和 /var/opt/SUNWsamfs/stager
目录。确保这些链接指向高可用性文件系统中的新位置。
在示例中,链接正确。因此,我们关闭 ssh
会话并恢复在主节点上的工作:
[sam1mds-node2]root@solaris:~#ls
-l
/var/opt/SUNWsamfs/catalog
lrwxrwxrwx 1 root other .../var/opt/SUNWsamfs/catalog
->
/global/hasam_cfg/catalog
[sam1mds-node2]root@solaris:~#ls
-l
/var/opt/SUNWsamfs/stager
lrwxrwxrwx 1 root other .../var/opt/SUNWsamfs/stager -> /global/hasam_cfg/stager
[sam1mds-node2]root@solaris:~#exit
[sam1mds-node1]root@solaris:~#
在 HA-SAM 群集的主节点上,注册 SUNW.HAStoragePlus
资源类型作为群集配置的一部分。使用 Solaris Cluster 命令 clresourcetype
register
SUNW.HAStoragePlus
。
[sam1mds-node1]root@solaris:~#clresourcetype
register
SUNW.HAStoragePlus
[sam1mds-node1]root@solaris:~#
在主节点上,创建 SUNW.HAStoragePlus
资源类型的新实例并将其与 Solaris Cluster 资源组相关联。使用命令 clresource
create
-g
groupname
-t
SUNW.HAStoragePlus
-x
FilesystemMountPoints=
mountpoint
-x
AffinityOn=TRUE
resourcename
,其中:
groupname
是您为 HA-SAM 资源组选择的名称。
SUNW.HAStoragePlus
是支持本地文件系统故障转移的 Solaris Cluster 资源类型。
mountpoint
是存放目录和回写程序文件的高可用性本地文件系统的挂载点。
resourcename
是您为资源本身选择的名称。
在本示例中,我们创建类型为 SUNW.HAStoragePlus
且名为 has-cfg
的资源。我们将新资源添加到资源组 has-rg
中。然后我们配置资源扩展属性。我们将 FilesystemMountPoints
设置为 /global/hasam_cfg
,将 AffinityOn
设置为 TRUE
(请注意,下面的命令是作为单行输入的-使用反斜杠字符对换行符进行转义):
[sam1mds-node1]root@solaris:~#clresource
create
-g
has-rg
\-t
SUNW.HAStoragePlus
-x
FilesystemMountPoints=
/global/hasam_cfg
\-x
AffinityOn=
TRUE
has-cfg
[sam1mds-node1]root@solaris:~#
通过创建 SUNW.qfs
群集资源配置元数据服务器的故障转移,该群集资源是由 Oracle HSM 软件定义的资源类型(有关详细信息,请参见 SUNW.qfs
手册页)。要创建并配置 HA-SAM 配置的资源,请执行如下操作:
以 root
用户身份登录到 HA-SAM 群集的主群集节点。
在示例中,主节点是 sam1mds-node1
:
[sam1mds-node1]root@solaris:~#
为 Solaris Cluster 软件定义资源类型 SUNW.qfs
。使用命令 clresourcetype
register
SUNW.qfs
。
[sam1mds-node1]root@solaris:~#clresourcetype
register
SUNW.qfs
[qfs1mds-node1]root@solaris:~#
如果注册因找不到注册文件而失败,则将 /opt/SUNWsamfs/sc/etc/
目录的符号链接放置到 Solaris Cluster 存放资源类型注册文件的 /opt/cluster/lib/rgm/rtreg/
目录中。
如果在安装 Oracle HSM 软件之前未安装 Oracle Solaris Cluster 软件,则注册将失败。通常,Oracle HSM 会在安装期间检测到 Solaris Cluster 时自动提供 SUNW.qfs
注册文件的位置。在示例中,我们手动创建链接。
[qfs1mds-node1]root@solaris:~#cd
/opt/cluster/lib/rgm/rtreg/
[qfs1mds-node1]root@solaris:~#ln
-s
/opt/SUNWsamfs/sc/etc/SUNW.qfs
SUNW.qfs
[qfs1mds-node1]root@solaris:~#
在新的资源组中,设置活动元数据服务器的虚拟主机名。使用 Solaris Cluster 命令 clreslogicalhostname
create
-g
group-name
virtualMDS
,其中:
group-name
是 QFS 资源组的名称。
virtualMDS
是虚拟主机名。
使用您在 hosts 文件中用于共享文件系统的相同虚拟主机名。在示例中,我们将虚拟主机名 sam1mds
添加到 has-rg
资源组中:
[sam1mds-node1]root@solaris:~#clreslogicalhostname
create
-g
has-rg
sam1mds
[qfs1mds-node1]root@solaris:~#
向资源组中添加 Oracle HSM 文件系统资源。使用命令 clresource
create
-g
groupname
-t
SUNW.qfs
-x
QFSFileSystem=
mount-point
,其中:
groupname
是您为 HA-SAM 资源组选择的名称。
SUNW.qfs
是支持 QFS 文件系统元数据服务器的故障转移的 Solaris Cluster 资源类型。
mount-point
是群集中文件系统的挂载点,即并非直接位于系统根目录下的子目录。
将共享 QFS 文件系统直接挂载到根目录下可能会在使用 SUNW.qfs
资源类型时导致故障转移问题。
resource-name
是您为资源本身选择的名称。
在示例中,我们在 has-rg
资源组中创建名为 has-qfs
的 SUNW.qfs
类型的资源。我们将 SUNW.qfs
扩展属性 QFSFileSystem
设置为 /global/ha-sam/sam1
挂载点。我们将标准属性 Resource_dependencies
设置为 sam1mds
,这是表示活动元数据服务器的虚拟主机名(请注意,下面的命令是作为单行输入的-使用反斜杠字符对换行符进行转义):
[sam1mds-node1]root@solaris:~#clresource
create
-g
has-rg
-t
SUNW.qfs
\-x
QFSFileSystem=
/global/ha-sam/sam1
-y
Resource_dependencies=
sam1mds
has-qfs
[sam1mds-node1]root@solaris:~#
通过创建 Oracle HSM SUNW.hasam
资源来配置 Oracle Hierarchical Storage Manager 应用程序的故障转移。该资源类型协调按顺序执行的 Oracle HSM 关闭和重新启动过程。
要配置 Oracle HSM 应用程序的故障转移,请执行如下操作:
以 root
用户身份登录到 HA-SAM 群集的主群集节点。
在示例中,主节点是 sam1mds-node1
:
[sam1mds-node1]root@solaris:~#
为 Solaris Cluster 软件定义资源类型 SUNW.hasam
。使用命令 clresourcetype
register
SUNW.hasam
。
[sam1mds-node1]root@solaris:~#clresourcetype
register
SUNW.hasam
[sam1mds-node1]root@solaris:~#
向资源组添加 Oracle HSM SUNW.hasam
资源。使用命令 clresource
create
-g
groupname
-t
SUNW.hasam
-x
QFSName=
fs-name
-x
CatalogFileSystem=
mount-point
resource-name
,其中:
groupname
是您为 HA-SAM 资源组选择的名称。
SUNW.hasam
是支持 Oracle Hierarchical Storage Manager 应用程序故障转移的 Solaris Cluster 资源类型。
mount-point
是存放 Oracle HSM 归档目录的全局文件系统的挂载点。
resource-name
是您为资源本身选择的名称。
在示例中,我们在 has-rg
资源组中创建名为 has-sam
的 SUNW.hasam
类型的资源。我们将 SUNW.hasam
扩展属性 QFSName
设置为在 mcf
文件中指定的 QFS 文件系统名称 sam1
。我们将 SUNW.hasam
扩展属性 CatalogFileSystem
设置为 /global/hasam_cfg
挂载点。
[sam1mds-node1]root@solaris:~#clresource
create
-g
has-rg
-t
SUNW.hasam
\-x
QFSName=
sam1
-x
CatalogFileSystem=
/global/hasam_cfg
has-sam
[sam1mds-node1]root@solaris:~#
以 root
用户身份登录到 HA-SAM 群集的主群集节点。
在示例中,主节点是 sam1mds-node1
:
[sam1mds-node1]root@solaris:~#
除非高可用性本地文件系统可用,否则 QFS 文件系统不应启动。因此使 SUNW.qfs
资源依赖于 SUNW.HAStoragePlus
资源。使用 Solaris Cluster 命令 clresource set -p Resource_dependencies=
dependency
resource-name
,其中:
dependency
是 SUNW.HAStoragePlus
资源的名称。
resource-name
是 SUNW.qfs
资源的名称。
在本示例中,我们使 SUNW.qfs
资源依赖于 SUNW.HAStoragePlus
资源 has-cfg
(请注意,下面的命令是作为单行输入的-使用反斜杠字符对换行符进行转义):
[sam1mds-node1]root@solaris:~#clresource
set
\-p
Resource_dependencies=
has-cfg
has-qfs
[sam1mds-node1]root@solaris:~#
除非 QFS 活动元数据服务器联机,否则群集不应使虚拟主机名可用。因此使虚拟主机名依赖于 SUNW.qfs
资源。使用 Solaris Cluster 命令 clresource set -p Resource_dependencies=
virtualMDS
resource-name
,其中:
virtualMDS
是表示活动 Oracle HSM 元数据服务器的虚拟主机名。
resource-name
是 SUNW.qfs
资源的名称。
在本示例中,在我们设置 SUNW.qfs
资源时创建的虚拟主机名是 sam1mds
。该资源本身名为 has-qfs
(请注意,下面的命令是作为单行输入的-使用反斜杠字符对换行符进行转义):
[sam1mds-node1]root@solaris:~#clresource
set
\-p
Resource_dependencies=
sam1mds
has-qfs
[sam1mds-node1]root@solaris:~#
使 SUNW.qfs
资源依赖于资源组。使用 Solaris Cluster 命令 clresource set -p Resource_dependencies=
dependency
resource-name
,其中:
dependency
是 SUNW.HAStoragePlus
资源的名称。
resource-name
是 SUNW.qfs
资源的名称。
在本示例中,我们使 has-qfs
依赖于 has-rg
资源组(请注意,下面的命令是作为单行输入的-使用反斜杠字符对换行符进行转义):
[sam1mds-node1]root@solaris:~#clresource
set
\-p
Resource_dependencies=
has-qfs
has-rg
[sam1mds-node1]root@solaris:~#
接下来,使 HA-SAM 资源组联机并测试配置。
以 root
用户身份登录到 HA-SAM 群集的主群集节点。
在示例中,主节点是 sam1mds-node1
:
[sam1mds-node1]root@solaris:~#
使资源组联机。使用 Solaris Cluster 命令 clresourcegroup
manage
groupname
, and clresourcegroup
online
-emM
groupname
,其中 groupname
是 HA-SAM 资源组的名称。
在示例中,我们将 has-rg
资源组联机:
[sam1mds-node1]root@solaris:~#clresourcegroup
manage
has-rg
[sam1mds-node1]root@solaris:~#clresourcegroup
online
-emM
has-rg
[sam1mds-node1]root@solaris:~#
确保 HA-SAM 资源组处于联机状态。使用 Solaris Cluster clresourcegroup
status
命令。
在示例中,has-rg
资源组在主节点 sam1mds-node1
上处于 online
状态:
[sam1mds-node1]root@solaris:~#clresourcegroup
status
=== Cluster Resource Groups === Group Name Node Name Suspended Status ---------- ------------- --------- ------has-rg
sam1mds-node1
No
Online
sam1mds-node2 No Offline [sam1mds-node1]root@solaris:~#
接下来,确保资源组正确故障转移。将资源组移到辅助节点。使用 Solaris Cluster 命令 clresourcegroup
switch
-n
node2
groupname
,其中 node2
是辅助节点的名称,groupname
是您为 HA-SAM 资源组选择的名称。然后,使用 clresourcegroup
status
检查结果。
在示例中,我们将 has-rg
资源组移动到 sam1mds-node2
并确认资源组在指定节点上处于联机状态:
[sam1mds-node1]root@solaris:~#clresourcegroup
switch
-n
sam1mds-node2
has-rg
[sam1mds-node1]root@solaris:~#clresourcegroup
status
=== Cluster Resource Groups === Group Name Node Name Suspended Status ---------- ------------- --------- ------has-rg
sam1mds-node1 No Offlinesam1mds-node2
No
Online
[sam1mds-node1]root@solaris:~#
将资源组移回到主节点。使用 Solaris Cluster 命令 clresourcegroup
switch
-n
node1
groupname
,其中 node1
是主节点的名称,groupname
是您为 HA-SAM 资源组选择的名称。然后,使用 clresourcegroup status
检查结果。
在示例中,我们将 has-rg
资源组成功移回到 sam1mds-node1
:
[sam1mds-node1]root@solaris:~#clresourcegroup
switch
-n
sam1mds-node1
has-rg
[sam1mds-node1]root@solaris:~#clresourcegroup status
=== Cluster Resource Groups === Group Name Node Name Suspended Status ---------- ------------- --------- ------has-rg
sam1mds-node1
No
Online
sam1mds-node2 No Offline [sam1mds-node1]root@solaris:~#
如果需要,立即配置高可用性网络文件系统 (High-Availability Network File System, HA-NFS) 共享。
Oracle Solaris Cluster 联机文档库包含的《Oracle Solaris Cluster Data Service for Network File System (NFS) Guide》中提供了设置 HA-NFS 的详细步骤。
如果计划使用边带数据库功能,请转至配置报告数据库。
否则,请转至配置通知和日志记录。
在 Solaris Cluster-Oracle Real Application Cluster (SC-RAC) 配置中,Solaris Cluster 软件将 QFS 共享文件系统作为同时还托管 Oracle 数据库和 Oracle Real Application Cluster (RAC) 软件的节点上挂载的 SUNW.qfs
资源进行管理。所有节点都配置为 QFS 服务器,其中一个为活动元数据服务器,其他的则为潜在元数据服务器。如果活动元数据服务器节点发生故障,则 Solaris Cluster 软件将自动激活运行正常的节点上的潜在元数据服务器并启动故障转移。通过 Oracle RAC 协调 I/O,QFS 文件系统是共享文件系统并且已挂载到所有节点上。因此仍可无中断地访问数据。
在 SC-RAC 配置中,RAC 软件协调 I/O 请求、分配工作负荷,并且为群集节点上运行的多个 Oracle 数据库实例维护一组一致的数据库文件。由于文件系统完整性在 RAC 下得到保证,因此 QFS 潜在元数据服务器可以作为共享文件系统的客户机执行 I/O。有关更多信息,请参见 Oracle Solaris Cluster 联机文档库中适用于 Oracle Real Application Clusters 的 Oracle Solaris Cluster 数据服务文档。
要配置 SC-RAC 文件系统,请执行以下任务:
在主 SC-RAC 群集节点上配置活动 QFS 元数据服务器 或使用软件 RAID 存储在 SC-RAC 节点上配置 QFS 元数据服务器
如果需要,按使用 NFS 和 SMB/CIFS 从多台主机访问文件系统中所述配置网络文件系统 (Network File System, NFS) 共享。不支持高可用性 NFS (High-Availability NFS, HA-NFS)。
在 QFS 共享文件系统中,您必须在元数据服务器上配置 hosts 文件,以便所有主机都能访问文件系统的元数据。hosts 文件与 mcf
文件一起存储在 /etc/opt/SUNWsamfs/
目录中。在共享文件系统的初始创建过程中,sammkfs
-S
命令使用该文件中存储的设置配置共享。因此,现在请使用下面的过程创建该文件。
以 root
用户身份登录到 SC-RAC 群集的主群集节点。
在示例中,主节点是 qfs1rac-node1
:
[qfs1rac-node1]root@solaris:~#
显示群集配置。使用 /usr/global/bin/cluster
show
命令。在输出中,找到每个 Node Name
的记录,然后记下 privatehostname
和 Transport
Adapter
名称,以及每个网络适配器的 ip_address
属性。
在示例中,每个节点都有两个网络接口,qfe3
和 hme0
:
hme0
适配器具有群集用于节点间内部通信的专用网络的 IP 地址。Solaris Cluster 软件会分配与每个专用地址相对应的 privatehostname
。
默认情况下,主节点和辅助节点的专用主机名分别为 clusternode1-priv
和 clusternode2-priv
。
qfe3
适配器具有公共 IP 地址和公共主机名(即 qfs1rac-node1
和 qfs1rac-node2
),群集使用它们来进行数据传输。
请注意,使用省略号 (...
) 标记简化了显示内容:
[qfs1rac-node1]root@solaris:~# cluster show
...
=== Cluster Nodes ===
Node Name: qfs1rac-node1...
privatehostname: clusternode1-priv...
Transport Adapter List: qfe3, hme0...
Transport Adapter: qfe3...
Adapter Property(ip_address): 172.16.0.12...
Transport Adapter: hme0...
Adapter Property(ip_address): 10.0.0.129...
Node Name: qfs1rac-node2...
privatehostname: clusternode2-priv...
Transport Adapter List: qfe3, hme0...
Adapter Property(ip_address): 172.16.0.13...
Transport Adapter: hme0
Adapter Property(ip_address): 10.0.0.122...
Node Name: qfs1rac-node3...
privatehostname: clusternod3-priv...
Transport Adapter List: qfe3, hme0...
Adapter Property(ip_address): 172.16.0.33...
Transport Adapter: hme0
Adapter Property(ip_address): 10.0.0.092
使用文本编辑器,创建文件 /etc/opt/SUNWsamfs/hosts.
family-set-name
,其中 family-set-name
是 /etc/opt/SUNWsamfs/mcf
文件分配给文件系统设备的系列集名称。
在示例中,使用 vi
文本编辑器创建文件 hosts.qfs1rac
。我们添加一些可选标题以显示主机表中的列,每行以井号 (#
) 开头表示该行为注释:
[qfs1rac-node1]root@solaris:~#vi
/etc/opt/SUNWsamfs/hosts.qfs1rac
# /etc/opt/SUNWsamfs/hosts.qfs1rac # Server On/ Additional #Host Name Network Interface Ordinal Off Parameters #------------ -------------------------------- ------- --- ----------
在表的第一列中,输入主元数据服务器节点和辅助元数据服务器节点的主机名,后跟一些空格。将每个条目放在单独一行上。
在 hosts 文件中,行即为行(记录),空格为列(字段)分隔符。在本示例中,Host Name 列的前两行列出了群集节点 qfs1rac-node1
、qfs1rac-node2
和 qfs1rac-node3
的主机名。
# Server On/ Additional #Host Name Network Interface Ordinal Off Parameters #------------ -------------------------------- ------- --- ----------qfs1rac-node1
qfs1rac-node2
qfs1rac-node3
在每行的第二列,开始提供主机 Host Name
的 Network Interface
信息。输入各个 SC-RAC 群集节点的 Solaris Cluster 专用主机名或专用网络地址,后跟一个逗号。
SC-RAC 服务器节点使用专用主机名在高可用性群集内进行服务器间的通信。在示例中,使用专用主机名 clusternode1-priv
、clusternode2-priv
和 clusternode3-priv
,这些是 Solaris Cluster 软件分配的默认名称:
# Server On/ Additional #Host Name Network Interface Ordinal Off Parameters #------------ -------------------------------- ------- --- ---------- qfs1rac-node1clusternode1-priv,
qfs1rac-node2clusternode2-priv,
qfs1rac-node3clusternode3-priv,
在每行第二列中的逗号后面,输入活动元数据服务器的公共主机名,后跟空格。
SC-RAC 服务器节点使用公共数据网络与客户机通信,所有这些客户机都位于在群集之外。由于活动元数据服务器的 IP 地址和主机名会在故障转移期间发生更改(例如,从 qfs1rac-node1
更改为 qfs1rac-node2
),因此我们使用虚拟主机名 qfs1rac-mds
表示活动服务器。稍后,我们将配置 Solaris Cluster 软件,以便始终将 qfs1rac-mds
的请求路由到当前托管活动元数据服务器的节点:
# Server On/ Additional #Host Name Network Interface Ordinal Off Parameters #------------ -------------------------------- ------- --- ---------- qfs1rac-node1clusternode1-priv,qfs1rac-mds
qfs1rac-node2clusternode2-priv,qfs1rac-mds
qfs1rac-node3clusternode3-priv,qfs1rac-mds
在每行的第三列中,输入服务器的序号(1
表示活动元数据服务器,2
表示潜在元数据服务器),后跟空格。
在示例中,主节点 qfs1rac-node1
是活动元数据服务器。因此其序号为 1
。第二个节点 qfs1rac-node2
的序号为 2
,依此类推:
# Server On/ Additional #Host Name Network Interface Ordinal Off Parameters #------------ -------------------------------- ------- --- ---------- qfs1rac-node1 clusternode1-priv,qfs1rac-mds1
qfs1rac-node2 clusternode2-priv,qfs1rac-mds2
qfs1rac-node3 clusternode3-priv,qfs1rac-mds3
在每行的第四列中,输入 0
(零),后跟空格。
第四列中的值为 0
、-
(连字符)或空表示该主机处于 on 状态-配置为对共享文件系统有访问权限。1
(数字一)表示该主机处于 off
状态-配置为对文件系统没有访问权限(有关在管理共享文件系统时使用这些值的信息,请参见 samsharefs
手册页)。
# Server On/ Additional #Host Name Network Interface Ordinal Off Parameters #------------ -------------------------------- ------- --- ---------- qfs1rac-node1 clusternode1-priv,qfs1rac-mds 10
qfs1rac-node2 clusternode2-priv,qfs1rac-mds 20
qfs1rac-node3 clusternode3-priv,qfs1rac-mds 30
在主节点行的第五列中,输入关键字 server
。保存文件并关闭编辑器。
server 关键字用于标识默认的活动元数据服务器:
# Server On/ Additional #Host Name Network Interface Ordinal Off Parameters #------------ -------------------------------- ------- --- ---------- qfs1rac-node1 clusternode1-priv,qfs1rac-mds 1 0server
qfs1rac-node2 clusternode2-priv,qfs1rac-mds 2 0 qfs1rac-node3 clusternode3-priv,qfs1rac-mds 2 0:wq
[qfs1rac-node1]root@solaris:~#
将全局 /etc/opt/SUNWsamfs/hosts.
family-set-name
文件的副本放置在 SC-RAC 群集的每个节点上。
选择将同时充当 SC-RAC 群集的主节点和 QFS 共享文件系统的活动元数据服务器的群集节点。以 root
用户身份登录。
在示例中,主节点是 qfs1rac-node1
:
[qfs1rac-node1]root@solaris:~#
选择要用于 QFS 文件系统的全局存储设备。使用命令 /usr/global/bin/cldevice
list
-v
。
Solaris Cluster 软件向连接到群集节点的所有设备分配唯一的设备标识符 (Device Identifier, DID)。全局设备可以从群集中的所有节点进行访问,而本地设备仅可以从挂载它们的主机进行访问。全局设备在故障转移后仍然可以访问。本地设备则不然。
在示例中,请注意 d1
、d2
、d6
、d7
和 d8
设备从所有节点都无法访问。所以在配置高可用性 QFS 共享文件系统时,我们从 d3
、d4
和 d5
设备中进行选择:
[qfs1rac-node1]root@solaris:~#cldevice
list
-v
DID Device Full Device Path ---------- ---------------- d1 qfs1rac-node1:/dev/rdsk/c0t0d0 d2 qfs1rac-node1:/dev/rdsk/c0t6d0d3
qfs1rac-node1
:/dev/rdsk/c1t1d0d3
qfs1rac-node2
:/dev/rdsk/c1t1d0d3
qfs1rac-node3
:/dev/rdsk/c1t1d0d4
qfs1rac-node1
:/dev/rdsk/c1t2d0d4
qfs1rac-node2
:/dev/rdsk/c1t2d0d4
qfs1rac-node3
:/dev/rdsk/c1t2d0d5
qfs1rac-node1
:/dev/rdsk/c1t3d0d5
qfs1rac-node2
:/dev/rdsk/c1t3d0d5
qfs1rac-node3
:/dev/rdsk/c1t3d0 d6 qfs1rac-node2:/dev/rdsk/c0t0d0 d7 qfs1rac-node2:/dev/rdsk/c0t1d0 d8 qfs1rac-node3:/dev/rdsk/c0t1d0
创建使用 mr
数据设备的共享高性能 ma
文件系统。在文本编辑器中,打开 /etc/opt/SUNWsamfs/mcf
文件。
在示例中,我们配置文件系统 qfs1rac
。我们将设备 d3
配置为元数据设备(设备类型 mm
),并将 d4
和 d5
用作数据设备(设备类型 mr
):
[qfs1rac-node1]root@solaris:~#vi
/etc/opt/SUNWsamfs/mcf
# Equipment Equipment Equipment Family Device Additional # Identifier Ordinal Type Set State Parameters #------------------ --------- --------- ------- ------ --------------qfs1rac
100ma
qfs1rac -/dev/did/dsk/d3s0
101mm
qfs1rac -/dev/did/dsk/d4s0
102mr
qfs1rac -/dev/did/dsk/d5s0
103mr
qfs1rac - ...
在 /etc/opt/SUNWsamfs/mcf
文件的文件系统条目的 Additional Parameters
列中输入 shared
参数。保存文件。
[qfs1rac-node1]root@solaris:~# vi /etc/opt/SUNWsamfs/mcf # Equipment Equipment Equipment Family Device Additional # Identifier Ordinal Type Set State Parameters #------------------ --------- --------- ------- ------ -------------- qfs1rac 100 ma qfs1rac -shared
/dev/did/dsk/d3s0 101 mm qfs1rac - /dev/did/dsk/d4s0 102 mr qfs1rac - /dev/did/dsk/d5s0 103 mr qfs1rac - ...:wq
[qfs1rac-node1]root@solaris:~#
检查 mcf
文件中是否存在错误。使用命令 /opt/SUNWsamfs/sbin/sam-fsd
并更正发现的任何错误。
sam-fsd
命令会读取 Oracle HSM 配置文件并初始化文件系统。如果遇到错误,该命令将停止。在示例中,检查主机 qfs1rac-node1
上的 mcf
文件:
[qfs1rac-node1]root@solaris:~# sam-fsd
...
Would start sam-archiverd()
Would start sam-stagealld()
Would start sam-stagerd()
Would start sam-amld()
[qfs1rac-node1]root@solaris:~#
创建文件系统。使用命令 /opt/SUNWsamfs/sbin/sammkfs
-S
family-set-name
,其中 family-set-name
是文件系统的设备标识符。
sammkfs
命令读取 hosts.
family-set-name
和 mcf
文件,并创建具有指定属性的共享文件系统。
[qfs1rac-node1]root@solaris:~#sammkfs
-S
qfs1rac
Building 'qfs1rac' will destroy the contents of devices: ... Do you wish to continue? [y/N]yes
... [qfs1rac-node1]root@solaris:~#
在文本编辑器中打开操作系统的 /etc/vfstab
文件,并为新的文件系统添加一行。在第一列中输入文件系统名称,然后输入几个空格,在第二列中输入一个连字符,然后输入更多的空格。
在示例中,使用 vi
文本编辑器。我们为 qfs1rac
文件系统添加了一行。连字符阻止操作系统尝试使用 UFS 工具检查文件系统的完整性:
[qfs1rac-node1]root@solaris:~#vi
/etc/vfstab
#File #Device Device Mount System fsck Mount Mount #to Mount to fsck Point Type Pass at Boot Options #-------- ------- --------------- ------ ---- ------- ------------------ /devices - /devices devfs - no - /proc - /proc proc - no - ...qfs1rac -
在 /etc/vfstab
文件的第三列中,输入相对于群集的文件系统挂载点。指定未直接位于系统根目录下的子目录。
将共享 QFS 文件系统直接挂载到根目录下可能会在使用 SUNW.qfs
资源类型时导致故障转移问题。在示例中,qfs1rac
文件系统的挂载点为 /global/sc-rac/qfs1rac
:
#File
#Device Device Mount System fsck Mount Mount
#to Mount to fsck Point Type Pass at Boot Options
#-------- ------- ----------------------- ------ ---- ------- ----------
/devices - /devices devfs - no -
/proc - /proc proc - no -
...
qfs1rac - /global/sc-rac/qfs1rac
在第四列中输入文件系统类型 samfs
,在第五列中输入 -
(连字符),在第六列中输入 no
。
#File #Device Device Mount System fsck Mount Mount #to Mount to fsck Point Type Pass at Boot Options #-------- ------- ----------------------- ------ ---- ------- ---------- /devices - /devices devfs - no - /proc - /proc proc - no - ... qfs1rac - /global/sc-rac/qfs1racsamfs
-
no
:wq
[qfs1rac-node1]root@solaris:~#
在 /etc/vfstab
文件的第七列中,输入下面列出的挂载选项。然后保存文件并关闭编辑器。
建议对 SC-RAC 群集配置使用以下挂载选项。它们可以在 /etc/vfstab
中指定,如果更方便,也可以在文件 /etc/opt/SUNWsamfs/samfs.cmd
中指定:
shared
stripe=1
sync_meta=1
mh_write
qwrite
forcedirectio
notrace
rdlease=300
wrlease=300
aplease=300
在示例中,简化了此列表以适应页面布局:
#File #Device Device Mount System fsck Mount Mount #to Mount to fsck Point Type Pass at Boot Options #-------- ------- -------------------- ------ ---- ------- ------------ /devices - /devices devfs - no - /proc - /proc proc - no - ... qfs1rac - /global/sc-rac/qfs1racsamfs
-
no
shared,...=300
:wq
[qfs1rac-node1]root@solaris:~#
创建高可用性共享文件系统的挂载点。
[qfs1rac-node1]root@solaris:~#mkdir
-p
/global/sc-rac/qfs1rac
[qfs1rac-node1]root@solaris:~#
在主节点上挂载高可用性共享文件系统。
[qfs1rac-node1]root@solaris:~#mount
/global/sc-rac/qfs1rac
[qfs1rac-node1]root@solaris:~#
群集的其余节点充当潜在元数据服务器。潜在元数据服务器是可以访问元数据设备的主机,可以承担元数据服务器的职责。因此,如果主节点上的活动元数据服务器发生故障,则 Solaris Cluster 软件可以故障转移到辅助节点并激活潜在元数据服务器。
对于 SC-RAC 群集中其余的每个节点,请执行如下操作:
以 root
用户身份登录节点。
在示例中,当前节点是 qfs1rac-node2
:
[qfs1rac-node2]root@solaris:~#
将 /etc/opt/SUNWsamfs/mcf
文件从主节点复制到当前节点中。
检查 mcf
文件中是否存在错误。运行命令 /opt/SUNWsamfs/sbin/sam-fsd
并更正发现的任何错误。
sam-fsd
命令会读取 Oracle HSM 配置文件并初始化文件系统。如果遇到错误,该命令将停止。在示例中,检查主机 qfs1rac-node2
上的 mcf
文件:
[qfs1rac-node2]root@solaris:~# sam-fsd
...
Would start sam-archiverd()
Would start sam-stagealld()
Would start sam-stagerd()
Would start sam-amld()
[qfs1rac-node2]root@solaris:~#
在文本编辑器中打开操作系统的 /etc/vfstab
文件,并为新的文件系统添加一行。
在示例中,使用 vi
编辑器:
[qfs1rac-node2]root@solaris:~#vi
/etc/vfstab
#File #Device Device Mount System fsck Mount Mount #to Mount to fsck Point Type Pass at Boot Options #-------- ------- ---------------------- ------ ---- ------- ------------ /devices - /devices devfs - no - /proc - /proc proc - no - ...qfs1rac
-
/global/sc-rac/qfs1rac
samfs
-
no
在 /etc/vfstab
文件的第七列中,输入下面列出的挂载选项。然后保存文件并关闭编辑器。
建议对 SC-RAC 群集配置使用以下挂载选项。它们可以在 /etc/vfstab
中指定,如果更方便,也可以在文件 /etc/opt/SUNWsamfs/samfs.cmd
中指定:
shared
stripe=1
sync_meta=1
mh_write
qwrite
forcedirectio
notrace
rdlease=300
wrlease=300
aplease=300
在示例中,简化了此列表以适应页面布局:
#File #Device Device Mount System fsck Mount Mount #to Mount to fsck Point Type Pass at Boot Options #-------- ------- ---------------------- ------ ---- ------- ------------ /devices - /devices devfs - no - /proc - /proc proc - no - ... qfs1rac - /global/sc-rac/qfs1racsamfs
-
no
shared,...=300
:wq
[qfs1rac-node2]root@solaris:~#
在辅助节点上创建高可用性共享文件系统的挂载点。
[qfs1rac-node2]root@solaris:~#mkdir
-p
/global/sc-rac/qfs1rac
[qfs1rac-node2]root@solaris:~#
在辅助节点上挂载高可用性共享文件系统。
[qfs1rac-node2]root@solaris:~#mount
/global/sc-rac/qfs1rac
[qfs1rac-node2]root@solaris:~#
当您在 Solaris Cluster 软件管理的群集中托管 Oracle HSM 共享文件系统时,可以通过创建 SUNW.qfs
群集资源来配置元数据服务器的故障转移,该群集资源为 Oracle HSM 软件定义的一种资源类型(有关详细信息,请参见 SUNW.qfs
手册页)。要创建并配置 SC-RAC 配置的资源,请执行如下操作:
以 root
用户身份登录到 SC-RAC 群集的主节点。
在示例中,主节点是 qfs1rac-node1
:
[qfs1rac-node1]root@solaris:~#
为 Solaris Cluster 软件定义 QFS 资源类型 SUNW.qfs
。使用命令 clresourcetype
register
SUNW.qfs
。
[qfs1rac-node1]root@solaris:~#clresourcetype
register
SUNW.qfs
[qfs1rac-node1]root@solaris:~#
如果注册因找不到注册文件而失败,则将 /opt/SUNWsamfs/sc/etc/
目录的符号链接放置到 Solaris Cluster 存放资源类型注册文件的 /opt/cluster/lib/rgm/rtreg/
目录中。
您在安装 Oracle HSM 软件之前未安装 Oracle Solaris Cluster 软件。通常,Oracle HSM 会在安装期间检测到 Solaris Cluster 时自动提供 SUNW.qfs
注册文件的位置。因此您需要手动创建一个链接。
[qfs1rac-node1]root@solaris:~#cd
/opt/cluster/lib/rgm/rtreg/
[qfs1rac-node1]root@solaris:~#ln
-s
/opt/SUNWsamfs/sc/etc/SUNW.qfs
SUNW.qfs
[qfs1rac-node1]root@solaris:~#
创建 QFS 元数据服务器的资源组。使用 Solaris Cluster 命令 clresourcegroup
create
-n
node-list
group-name
,其中 node-list
是逗号分隔的群集节点列表,group-name
是我们想要用于资源组的名称。
在示例中,使用 SC-RAC 服务器节点作为成员创建资源组 qfsracrg
(请注意,下面的命令是作为单行输入的-使用反斜杠字符对换行符进行转义):
[qfs1rac-node1]root@solaris:~#clresourcegroup
create
\-n
qfs1rac-node1,qfs1rac-node2
qfsracrg
[qfs1rac-node1]root@solaris:~#
在新的资源组中,设置活动元数据服务器的虚拟主机名。使用 Solaris Cluster 命令 clreslogicalhostname
create
-g
group-name
,其中 group-name
是 QFS 资源组的名称,virtualMDS
是虚拟主机名。
使用您在 hosts 文件中用于共享文件系统的相同虚拟主机名。在本示例中,我们在 qfsracrg
资源组中创建虚拟主机 qfs1rac-mds
(请注意,下面的命令是作为单行输入的-使用反斜杠字符对换行符进行转义):
[qfs1rac-node1]root@solaris:~#clreslogicalhostname
create
\-g
qfsracrg
qfs1rac-mds
[qfs1rac-node1]root@solaris:~#
向资源组中添加 QFS 文件系统资源。使用命令 clresource
create
-g
group-name
-t
SUNW.qfs
-x
QFSFileSystem=
mount-point
-y
Resource_dependencies=
virtualMDS
resource-name
,其中:
group-name
是 QFS 资源组的名称。
mount-point
是群集中文件系统的挂载点,即并非直接位于系统根目录下的子目录。
将共享 QFS 文件系统直接挂载到根目录下可能会在使用 SUNW.qfs
资源类型时导致故障转移问题。
virtualMDS
是活动元数据服务器的虚拟主机名。
resource-name
是您想要赋予资源的名称。
在示例中,我们在 qfsracrg
资源组中创建名为 scrac
的 SUNW.qfs
类型的资源。我们将 SUNW.qfs
扩展属性 QFSFileSystem
设置为 /global/sc-rac/qfs1rac
挂载点。我们将标准属性 Resource_dependencies
设置为活动元数据服务器 qfs1rac-mds
的虚拟主机(请注意,下面的命令是作为单行输入的-使用反斜杠字符对换行符进行转义):
[qfs1rac-node1]root@solaris:~#create
-g
qfsracrg
-t
SUNW.qfs
\-x
QFSFileSystem=
/global/sc-rac/qfs1rac
\-y
Resource_dependencies=
qfs1rac-mds
scrac
[qfs1rac-node1]root@solaris:~#
使资源组联机。使用 Solaris Cluster 命令 clresourcegroup
manage
group-name
and clresourcegroup
online
-emM
group-name
,其中 group-name
是 QFS 资源组的名称。
在示例中,我们将 qfsracrg
资源组联机:
[qfs1rac-node1]root@solaris:~#clresourcegroup
manage
qfsracrg
[qfs1rac-node1]root@solaris:~#clresourcegroup
online
-emM
qfsracrg
[qfs1rac-node1]root@solaris:~#
确保 QFS 资源组处于联机状态。使用 Solaris Cluster 命令clresourcegroup
status
。
在示例中,qfsracrg
资源组在主节点 qfs1rac-node1
上处于 online
状态:
[qfs1rac-node1]root@solaris:~#clresourcegroup
status
=== Cluster Resource Groups === Group Name Node Name Suspended Status ---------- ------------- --------- ------qfsracrg
qfs1rac-node1 No Online
qfs1rac-node2 No Offline qfs1rac-node3 No Offline [qfs1rac-node1]root@solaris:~#
确保资源组正确故障转移。将资源组移到辅助节点。使用 Solaris Cluster 命令 clresourcegroup
switch
-n
node2
group-name
,其中 node2
是辅助节点的名称,group-name
是您为 HA-SAM 资源组选择的名称。然后,使用 clresourcegroup
status
检查结果。
在示例中,我们将 qfsracrg
资源组移到 qfs1rac-node2
和 qfs1rac-node3
,并确认资源组在指定的节点上处于联机状态:
[qfs1rac-node1]root@solaris:~#clresourcegroup
switch
-n
qfs1rac-node2
qfsracrg
[qfs1rac-node1]root@solaris:~#clresourcegroup
status
=== Cluster Resource Groups === Group Name Node Name Suspended Status ---------- ------------- --------- ------qfsracrg
qfs1rac-node1 No Offlineqfs1rac-node2
No Online
qfs1rac-node3 No Offline [qfs1rac-node1]root@solaris:~#clresourcegroup switch -n qfs1rac-node3 qfsracrg
[qfs1rac-node1]root@solaris:~#clresourcegroup status
=== Cluster Resource Groups === Group Name Node Name Suspended Status ---------- ------------- --------- ------qfsracrg
qfs1rac-node1 No Offline qfs1rac-node2 No Offlineqfs1rac-node3 No Online
[qfs1rac-node1]root@solaris:~#
将资源组移回到主节点。使用 Solaris Cluster 命令 clresourcegroup
switch
-n
node1
group-name
,其中 node1
是主节点的名称,group-name
是您为 HA-SAM 资源组选择的名称。然后,使用 clresourcegroup
status
检查结果。
在示例中,我们将 qfsracrg
资源组成功移回到 qfs1rac-node1
:
[qfs1rac-node1]root@solaris:~#clresourcegroup
switch
-n
qfs1rac-node1
qfsracrg
[qfs1rac-node1]root@solaris:~#clresourcegroup
status
=== Cluster Resource Groups === Group Name Node Name Suspended Status ---------- ------------- --------- ------samr
qfs1rac-node1
No
Online
qfs1rac-node2 No Offline qfs1rac-node3 No Offline [qfs1rac-node1]root@solaris:~#
如果计划使用边带数据库功能,请转至配置报告数据库。
否则,请转至配置通知和日志记录。
高可用性文件系统必须在冗余主存储设备上存储数据和元数据。冗余磁盘阵列硬件可以通过将 RAID-1 或 RAID-10 用于存储元数据以及将 RAID-5 用于存储数据来提供此冗余。但是,如果您需要将普通的双端口 SCSI 磁盘设备或 JBOD(just a bunch of disk,简单磁盘捆绑)阵列用作主存储,则需要在软件中提供所需的冗余。
出于此原因,SC-RAC 配置支持基于 Oracle Solaris Volume Manager (SVM) 多属主磁盘集的软件 RAID 配置。此部分介绍设置 SC-RAC 文件系统配置的此变体时需要执行的基本步骤。
请注意,您应该将 Solaris Volume Manager 仅用于管理冗余存储阵列。请勿串联不同设备上的存储。这么做会导致将 I/O 低效分发到组件设备并使 QFS 文件系统性能降级。
执行以下任务:
从 Solaris 11 开始,Solaris Volume Manager (SVM) 不再包含在 Solaris 中。但 Solaris Cluster 4 软件继续支持 Solaris Volume Manager。因此要使用该软件,您必须下载并安装 Solaris 10 9/10 发行版随附的版本。对于群集中的每个节点,请执行如下操作:
以 root
用户身份登录节点。
在下面的示例中,我们使用 Solaris 映像包管理系统 (Image Packaging System, IPS) 配置群集节点 qfs2rac-node1
:
[qfs2rac-node1]root@solaris:~#
检查本地可用的 Solaris Volume Manager (SVM) 软件包。使用命令 pkg
info
svm
。
[qfs2rac-node1]root@solaris:~#pkg
info
svm
pkg: info: no packages matching the following patterns you specified are installed on the system. Try specifying -r to query remotely: svm [qfs2rac-node1]root@solaris:~#
如果本地找不到软件包,则检查 Solaris 映像包管理系统 (Image Packaging System, IPS) 系统信息库。使用命令 pkg
-r
svm
。
[qfs2rac-node1]root@solaris:~#pkg
-r
svm
Name: storage/svm Summary: Solaris Volume Manager Description: Solaris Volume Manager commands Category: System/Core State: Not installed Publisher: solaris Version: 0.5.11 Build Release: 5.11 Branch: 0.175.0.0.0.2.1 Packaging Date: October 19, 2011 06:42:14 AM Size: 3.48 MB FMRI: pkg://solaris/storage/svm@0.5.11,5.11-0.175.0.0.0.2.1:20111019T064214Z [qfs2rac-node1]root@solaris:~#
安装软件包。使用命令 pkg
install
storage/svm
:
[qfs2rac-node1]root@solaris:~#pkg
install
storage/svm
Packages to install: 1 Create boot environment: No Create backup boot environment: Yes Services to change: 1 DOWNLOAD PKGS FILES XFER (MB) Completed 1/1 104/104 1.6/1.6 PHASE ACTIONS Install Phase 168/168 PHASEITEMS Package State Update Phase 1/1 Image State Update Phase 2/2 [qfs2rac-node1]root@solaris:~#
当安装完成后,检查 metadb
的位置。使用命令 which
metadb
。
[qfs2rac-node1]root@solaris:~#which
metadb
/usr/sbin/metadb [qfs2rac-node1]root@solaris:~#
检查安装。使用命令 metadb
。
[qfs2rac-node1]root@solaris:~# metadb
[qfs2rac-node1]root@solaris:~#
如果 metadb
返回错误,则查看 kernel/drv/md.conf
文件是否存在。
[qfs2rac-node1]root@solaris:~#metadb
metadb: <HOST>: /dev/md/admin: No such file or directory [qfs2rac-node1]root@solaris:~#ls
-l
/kernel/drv/md.conf
-rw-r--r-- 1 root sys 295 Apr 26 15:07 /kernel/drv/md.conf [qfs2rac-node1]root@solaris:~#
如果 kernel/drv/md.conf
文件不存在,则创建该文件。使 root
用户成为该文件的所有者,并使 sys
成为组所有者。将权限设置为 644
。
在示例中,用 vi
编辑器创建文件。文件的内容应该如下所示:
[qfs2rac-node1]root@solaris:~#vi
kernel/drv/md.conf
###################################################
#pragma ident "@(#)md.conf 2.1 00/07/07 SMI"
#
# Copyright (c) 1992-1999 by Sun Microsystems, Inc.
# All rights reserved.
#
name="md" parent="pseudo" nmd=128 md_nsets=4;
####################################################
:wq
[qfs2rac-node1]root@solaris:~#chown
root
:
sys
kernel/drv/md.conf
[qfs2rac-node1]root@solaris:~#chmod
644
[qfs2rac-node1]root@solaris:~#
动态重新扫描 md.conf
文件并确保设备树得到更新。使用命令 update_drv
-f
md
:
在示例中,设备树得到更新。因此 Solaris Volume Manager 已安装:
[qfs2rac-node1]root@solaris:~#update_drv
-f
md
[qfs2rac-node1]root@solaris:~#ls
-l
/dev/md/admin
lrwxrwxrwx 1 root root 31 Apr 20 10:12 /dev/md/admin -> ../../devices/pseudo/md@0:admin [qfs2rac-node1]root@solaris:~#
以 root
用户身份登录到 SC-RAC 配置中的所有节点。
在示例中,登录到节点 qfs2rac-node1
。然后我们打开新的终端窗口并使用 ssh
登录到节点 qfs2rac-node2
和 qfs2rac-node3
:
[qfs2rac-node1]root@solaris:~# [qfs2rac-node1]root@solaris:~#ssh
root@
qfs2rac-node2
Password: [qfs2rac-node2]root@solaris:~# [qfs2rac-node1]root@solaris:~#ssh
root@
qfs2rac-node3
Password: [qfs2rac-node3]root@solaris:~#
如果您要在 Solaris 11.x 或更高版本上使用 Oracle Solaris Cluster 4.x,则在继续之前,先在每个节点上执行以下操作(如果尚未执行):在 Solaris 11+ 上安装 Solaris Volume Manager。
从 Solaris 11 开始,默认不安装 Solaris Volume Manager。
在每个节点上,连接新的状态数据库设备并创建三个状态数据库副本。使用命令 metadb
-a
-f
-c3
device-name
,其中 device-name
是 c
X
t
Y
d
Y
s
Z
形式的物理设备名称。
请勿使用 Solaris Cluster 设备标识符 (Device Identifier, DID)。使用物理设备名称。在示例中,我们在全部三个群集节点上创建状态数据库设备。
[qfs2rac-node1]root@solaris:~#metadb
-a
-f
-c3
/dev/rdsk/c0t0d0
[qfs2rac-node2]root@solaris:~#metadb
-a
-f
-c3
/dev/rdsk/c0t6d0
[qfs2rac-node3]root@solaris:~#metadb
-a
-f
-c3
/dev/rdsk/c0t4d0
在一个节点上创建 Solaris Volume Manager 多属主磁盘组。使用命令 metaset
-s
diskset
-M
-a
-h
host-list
,其中 host-list
是空格分隔的属主列表。
Solaris Volume Manager 最多支持每个磁盘集四个主机。在本示例中,我们在 qfs2rac-node1
上创建磁盘组 datadisks
并指定三个节点 qfs2rac-node1
、qfs2rac-node2
和 qfs2rac-node3
作为属主(请注意,下面的命令是作为单行输入的-使用反斜杠字符对换行符进行转义):
[qfs2rac-node1]root@solaris:~#metaset
-s
datadisks
-M
-a
-h
qfs2rac-node1
\qfs2rac-node2
qfs2rac-node3
列出其中一个节点上的设备。使用 Solaris Cluster 命令 cldevice
list
-n
-v
。
[qfs2rac-node1]root@solaris:~#cldevice
list
-n
-v
DID Device Full Device Path ---------- ---------------- d13 qfs2rac-node1:/dev/rdsk/c6t600C0FF00000000000332B62CF3A6B00d0 d14 qfs2rac-node1:/dev/rdsk/c6t600C0FF0000000000876E950F1FD9600d0 d15 qfs2rac-node1:/dev/rdsk/c6t600C0FF0000000000876E9124FAF9C00d0 ... [qfs2rac-node1]root@solaris:~#
在 cldevice
list
-n
-v
命令的输出中,选择要镜像的设备。
在示例中,我们针对四个镜像选择四对设备:d21
和 d13
、d14
和 d17
、d23
和 d16
,以及 d15
和 d19
。
[qfs2rac-node1]root@solaris:~#cldevice
list
-n
-v
DID Device Full Device Path ---------- ----------------d13
qfs2rac-node1:/dev/rdsk/c6t600C0FF00000000000332B62CF3A6B00d0d14
qfs2rac-node1:/dev/rdsk/c6t600C0FF0000000000876E950F1FD9600d0d15
qfs2rac-node1:/dev/rdsk/c6t600C0FF0000000000876E9124FAF9C00d0d16
qfs2rac-node1:/dev/rdsk/c6t600C0FF00000000000332B28488B5700d0d17
qfs2rac-node1:/dev/rdsk/c6t600C0FF000000000086DB474EC5DE900d0 d18 qfs2rac-node1:/dev/rdsk/c6t600C0FF0000000000876E975EDA6A000d0d19
qfs2rac-node1:/dev/rdsk/c6t600C0FF000000000086DB47E331ACF00d0 d20 qfs2rac-node1:/dev/rdsk/c6t600C0FF0000000000876E9780ECA8100d0d21
qfs2rac-node1:/dev/rdsk/c6t600C0FF000000000004CAD5B68A7A100d0 d22 qfs2rac-node1:/dev/rdsk/c6t600C0FF000000000086DB43CF85DA800d0d23
qfs2rac-node1:/dev/rdsk/c6t600C0FF000000000004CAD7CC3CDE500d0 d24 qfs2rac-node1:/dev/rdsk/c6t600C0FF000000000086DB4259B272300d0 .... [qfs2rac-node1]root@solaris:~#
将选定的设备添加到相同节点的磁盘集中。使用命令 metaset
-a
devicelist
,其中 devicelist
是空格分隔的一个或多个群集设备标识符的列表。
在本示例中,我们将列出的磁盘添加到多属主磁盘集 dataset1
中(请注意,下面的命令是作为单行输入的-使用反斜杠字符对换行符进行转义):
[qfs2rac-node1]root@solaris:~#metaset
-s
dataset1
-M
-a
-h
/dev/did/rdsk/d21
\/dev/did/rdsk/d13
/dev/did/rdsk/d14
/dev/did/rdsk/d17
/dev/did/rdsk/d23
\/dev/did/rdsk/d16
/dev/did/rdsk/d15
/dev/did/rdsk/d19
[qfs2rac-node1]root@solaris:~#
接下来,创建 QFS 数据和元数据的镜像卷。
为了使组件之间保持明确的关系,请为 RAID-0 逻辑卷和要创建的 RAID-1 镜像确定命名模式。
一般而言,RAID-1 镜像命名为 d
n
,其中 n
是一个整数。构成 RAID-1 镜像的 RAID-0 卷命名为 d
n
X
,其中 X
是代表镜像中设备位置的整数(对于双向镜像,通常为 0
或 1
)。
在本过程的示例中,我们基于 RAID-0 逻辑卷对创建双向 RAID-1 镜像。因此我们将镜像命名为 d1
、d2
、d3
、d4
等等,依此类推。然后我们命名构成 RAID-1 镜像的每对 RAID-0 卷:d10
和 d11
、d20
和 d21
、d30
和 d31
、d40
和 d41
等等。
登录到您创建多属主磁盘集的节点。以 root
用户身份登录。
在上面的示例中,我们在 qfs2rac-node1
上创建了磁盘集:
[qfs2rac-node1]root@solaris:~#
创建第一个 RAID-0 逻辑卷。使用命令 metainit
-s
diskset-name
device-name
number-of-stripes
components-per-stripe
component-names
,其中:
diskset-name
是您选择的磁盘集名称。
device-name
是您选择的 RAID-0 逻辑卷名称。
number-of-stripes
为 1
。
components-per-stripe
为 1
。
component-name
是要用于 RAID-0 卷的磁盘集组件的设备名称。
在示例中,使用多属主磁盘集 dataset1
中的群集 (DID) 设备 /dev/did/dsk/d21s0
创建 RAID-0 逻辑卷 d10
:
[qfs2rac-node1]root@solaris:~#metainit
-s
dataset1
d10
1
1
/dev/did/dsk/d21s0
[qfs2rac-node1]root@solaris:~#
创建其余的 RAID-0 逻辑卷。
[qfs2rac-node1]root@solaris:~#metainit
-s
dataset1
d11 1 1 /dev/did/dsk/d13s0
[qfs2rac-node1]root@solaris:~#metainit
-s
dataset1
d20 1 1 /dev/did/dsk/d14s0
[qfs2rac-node1]root@solaris:~#metainit
-s
dataset1
d21 1 1 /dev/did/dsk/d17s0
[qfs2rac-node1]root@solaris:~#metainit
-s
dataset1
d30 1 1 /dev/did/dsk/d23s0
[qfs2rac-node1]root@solaris:~#metainit
-s
dataset1
d31 1 1 /dev/did/dsk/d16s0
[qfs2rac-node1]root@solaris:~#metainit
-s
dataset1
d40 1 1 /dev/did/dsk/d15s0
[qfs2rac-node1]root@solaris:~#metainit
-s
dataset1
d41 1 1 /dev/did/dsk/d19s0
... [qfs2rac-node1]root@solaris:~#
创建第一个 RAID-1 镜像。使用命令 metainit
-s
diskset-name
RAID-1-mirrorname
-m
RAID-0-volume0
,其中:
diskset-name
是多属主磁盘集的名称。
RAID-1-mirrorname
是 RAID-1 镜像卷的名称。
RAID-0-volume0
是您添加到镜像的第一个 RAID-0 逻辑卷。
在示例中,我们创建镜像 d1
并将第一个 RAID-0 卷 d10
添加到该镜像中:
[qfs2rac-node1]root@solaris:~#metainit
-s
dataset1
d1
-m
d10
[qfs2rac-node1]root@solaris:~#
将其余的 RAID-0 卷添加到第一个 RAID-1 镜像中。使用命令 metattach
-s
diskset-name
RAID-1-mirrorname
RAID-0-volume
,其中:
diskset-name
是多属主磁盘集的名称
RAID-1-mirrorname
是 RAID-1 镜像卷的名称
RAID-0-volume
是您添加到镜像的 RAID-0 逻辑卷。
在示例中,d1
是一个双向镜像,因此我们添加一个 RAID-0 卷 d11
:
[qfs2rac-node1]root@solaris:~#metattach
-s
dataset1
d11
d1
[qfs2rac-node1]root@solaris:~#
创建其余的镜像。
在示例中,我们创建镜像 d2
、d3
、d4
等等。
[qfs2rac-node1]root@solaris:~#metainit
-s
dataset1
d2
-m
d20
[qfs2rac-node1]root@solaris:~#metattach
-s
dataset1
d21 d2
[qfs2rac-node1]root@solaris:~#metainit
-s
dataset2
d3
-m
d30
[qfs2rac-node1]root@solaris:~#metattach
-s
dataset2
d31 d3
[qfs2rac-node1]root@solaris:~#metainit
-s
dataset2
d4
-m
d40
[qfs2rac-node1]root@solaris:~#metattach
-s
dataset2
d41 d4
... [qfs2rac-node1]root@solaris:~#
选择将存放 QFS 文件系统元数据的镜像。
对于下面的示例,我们选择镜像 d1
和 d2
。
在选定的镜像中,创建软分区来存放 QFS 元数据。对于每个镜像,使用命令 metainit
-s
diskset-name
partition-name
-p
RAID-1-mirrorname
size
,其中:
diskset-name
是多属主磁盘集的名称。
partition-name
是新分区的名称。
RAID-1-mirrorname
是镜像的名称。
size
是分区的大小。
在示例中,我们创建两个 500G 的分区:d53
(位于镜像 d1
上)和 d63
(位于镜像 d2
上):
[qfs2rac-node1]root@solaris:~#metainit
-s
dataset1
d53
-p
d1
500g
[qfs2rac-node1]root@solaris:~#metainit
-s
dataset1
d63
-p
d2
500g
如果您尚未在所有 SC-RAC 群集节点上创建 QFS 共享文件系统 Hosts 文件,请执行该过程。完成后,返回此处。
选择将同时充当 SC-RAC 群集的主节点和 QFS 共享文件系统的活动元数据服务器的群集节点。以 root
用户身份登录。
在示例中,我们选择节点 qfs2rac-node1
:
[qfs2rac-node1]root@solaris:~#
在主节点上,创建共享高性能 ma
文件系统。将 Solaris Volume Manager 镜像磁盘卷用作 mm
元数据设备和 mr
数据设备。在文本编辑器中,打开 /etc/opt/SUNWsamfs/mcf
文件,进行必需的编辑后保存文件。
在示例中,使用 vi
文本编辑器创建文件系统 qfs2rac
。镜像卷 d1
和 d2
上的分区充当文件系统的两个 mm
元数据设备 110
和 120
。镜像卷 d3
和 d4
充当文件系统的两个 mr
数据设备 130
和 140
。
[qfs2rac-node1]root@solaris:~#vi
/etc/opt/SUNWsamfs/mcf
# /etc/opt/SUNWsamfs/mcf file: # # Equipment Equipment Equipment Family Device Additional # Identifier Ordinal Type Set State Parameters # ----------------------- --------- -------- ------- ------ ----------qfs2rac
100
ma
qfs2rac
on
shared
/dev/md/dataset1/dsk/d53
110
mm
qfs2rac
on
/dev/md/dataset1/dsk/d63
120
mm
qfs2rac
on
/dev/md/dataset1/dsk/d3
130
mr
qfs2rac
on
/dev/md/dataset1/dsk/d4
140
mr
qfs2rac
on
:wq
[qfs2rac-node1]root@solaris:~#
检查 mcf
文件中是否存在错误。使用命令 /opt/SUNWsamfs/sbin/
sam-fsd
并更正发现的任何错误。
sam-fsd
命令会读取 Oracle HSM 配置文件并初始化文件系统。如果遇到错误,该命令将停止。在示例中,检查主机 qfs2rac-node1
上的 mcf
文件:
[qfs2rac-node1]root@solaris:~# sam-fsd
...
Would start sam-archiverd()
Would start sam-stagealld()
Would start sam-stagerd()
Would start sam-amld()
[qfs2rac-node1]root@solaris:~#
创建文件系统。使用命令 /opt/SUNWsamfs/sbin/
sammkfs
-S
family-set-name
,其中 family-set-name
是文件系统的设备标识符。
sammkfs
命令读取 hosts.
family-set-name
和 mcf
文件,并创建具有指定属性的共享文件系统。
[qfs2rac-node1]root@solaris:~#sammkfs
-S
qfs2rac
Building 'qfs2rac' will destroy the contents of devices: ... Do you wish to continue? [y/N]yes
... [qfs2rac-node1]root@solaris:~#
在文本编辑器中打开操作系统的 /etc/vfstab
文件,并为新的文件系统添加一行。在第一列中输入文件系统名称,然后输入几个空格,在第二列中输入一个连字符,然后输入更多的空格。
在示例中,使用 vi
文本编辑器。我们为 qfs2rac
文件系统添加了一行。连字符阻止操作系统尝试使用 UFS 工具检查文件系统的完整性:
[qfs2rac-node1]root@solaris:~#vi
/etc/vfstab
#File #Device Device Mount System fsck Mount Mount #to Mount to fsck Point Type Pass at Boot Options #-------- ------- ---------------------- ------ ---- ------- ------------ /devices - /devices devfs - no - /proc - /proc proc - no - ...qfs2rac
-
在 /etc/vfstab
文件的第三列中,输入相对于群集的文件系统挂载点。指定未直接位于系统根目录下的挂载点子目录。
将共享 QFS 文件系统直接挂载到根目录下可能会在使用 SUNW.qfs
资源类型时导致故障转移问题。在示例中,qfs2rac
文件系统的挂载点为 /global/sc-rac/qfs2rac
:
#File #Device Device Mount System fsck Mount Mount #to Mount to fsck Point Type Pass at Boot Options #-------- ------- ---------------------- ------ ---- ------- ------------ /devices - /devices devfs - no - /proc - /proc proc - no - ... qfs2rac -/global/sc-rac/qfs2rac
samfs
-
no
在 /etc/vfstab
文件的第四列中,输入文件系统类型 (samfs
)。
#File
#Device Device Mount System fsck Mount Mount
#to Mount to fsck Point Type Pass at Boot Options
#-------- ------- ---------------------- ------ ---- ------- ------------
/devices - /devices devfs - no -
/proc - /proc proc - no -
...
qfs2rac - /global/sc-rac/qfs2rac samfs
在 /etc/vfstab
文件的第五列中,输入 fsck
传递选项 (-
)。
#File
#Device Device Mount System fsck Mount Mount
#to Mount to fsck Point Type Pass at Boot Options
#-------- ------- ---------------------- ------ ---- ------- ------------
/devices - /devices devfs - no -
/proc - /proc proc - no -
...
qfs2rac - /global/sc-rac/qfs2rac samfs -
在 /etc/vfstab
文件的第六列中,输入在引导时挂载选项 (no
)。
#File
#Device Device Mount System fsck Mount Mount
#to Mount to fsck Point Type Pass at Boot Options
#-------- ------- ---------------------- ------ ---- ------- ------------
/devices - /devices devfs - no -
/proc - /proc proc - no -
...
qfs2rac - /global/sc-rac/qfs2rac samfs - no
在 /etc/vfstab
文件的第七列中,输入 sw_raid
挂载选项和针对 SC-RAC 配置建议的挂载选项。然后保存文件并关闭编辑器。
建议使用以下挂载选项。它们可以在 /etc/vfstab
中指定,如果更方便,也可以在文件 /etc/opt/SUNWsamfs/samfs.cmd
中指定:
shared
stripe=1
sync_meta=1
mh_write
qwrite
forcedirectio
notrace
rdlease=300
wrlease=300
aplease=300
在示例中,简化了挂载选项列表以适应页面布局:
#File #Device Device Mount System fsck Mount Mount #to Mount to fsck Point Type Pass at Boot Options #-------- ------- ---------------------- ------ ---- ------- ------------ /devices - /devices devfs - no - /proc - /proc proc - no - ... qfs2rac - /global/sc-rac/qfs2rac samfs - noshared,...sw_raid
:wq
[qfs2rac-node1]root@solaris:~#
创建高可用性共享文件系统的挂载点。
[qfs2rac-node1]root@solaris:~#mkdir
-p
/global/sc-rac/qfs2rac
[qfs2rac-node1]root@solaris:~#
在主节点上挂载高可用性共享文件系统。
[qfs2rac-node1]root@solaris:~#mount
/global/sc-rac/qfs2rac
[qfs2rac-node1]root@solaris:~#
设置第二个节点。使用在其余的 SC-RAC 群集节点上配置潜在 QFS 元数据服务器 过程。
配置故障转移。使用配置 SC-RAC 元数据服务器的故障转移 过程。然后返回此处。
您已使用 Solaris Volume Manager 镜像卷成功配置 SC-RAC 配置。
如果计划使用边带数据库功能,请转至配置报告数据库。
否则,请转至配置通知和日志记录。