Sun Cluster 软件安装指南(适用于 Solaris OS)

SPARC: 安装和配置 VxVM 软件

本节提供了在 Sun Cluster 配置中安装和配置 VxVM 软件的信息和过程。

SPARC: 任务对应关系:安装和配置 VxVM 软件

下表列出了为 Sun Cluster 配置而安装和配置 VxVM 软件所需执行的任务。

表 4–1 SPARC: 任务对应关系:安装和配置 VxVM 软件

任务 

参考 

1. 规划 VxVM 配置的布局。 

规划卷管理

2. 确定如何在每个节点上创建根磁盘组。 

SPARC: 设置根磁盘组概述

3. 对于 VxVM 3.5 和早期版本,安装 VxVM 软件并创建根磁盘组。对于 VxVM 4.0,创建根磁盘组是可选的。 

  • 方法 1 – 通过使用 scvxinstall 命令安装 VxVM 软件并封装根磁盘,此外,还可以根据需要镜像已封装的根磁盘。

  1. SPARC: 如何安装 VERITAS Volume Manager 软件和封装根磁盘

  2. SPARC: 如何镜像封装的根磁盘

  • 方法 2 – 在本地非根磁盘上安装 VxVM 软件并创建根磁盘组(如果需要)。

  1. SPARC: 如何只安装 VERITAS Volume Manager 软件

  2. SPARC: 如何在非根磁盘上创建根磁盘组

4. 创建磁盘组和卷。 

SPARC: 如何创建并注册磁盘组

5. 如果需要,请通过分配新的次编号来解决磁盘设备组之间的次编号冲突。 

SPARC: 如何给磁盘设备组分配新的次编号

6. 检验磁盘组和卷。 

SPARC: 如何检验磁盘组配置

7. 配置群集。 

配置群集

SPARC: 设置根磁盘组概述

对于 VxVM 4.0,创建根磁盘组是可选的。如果您不想创建根磁盘组,请执行SPARC: 如何只安装 VERITAS Volume Manager 软件中的步骤。

对于 VxVM 3.5 和早期版本,每个群集节点均需在安装 VxVM 后创建根磁盘组。该磁盘组由 VxVM 用来存储配置信息,并具有以下限制。

Sun Cluster 软件支持下列配置根磁盘组的方法。

有关详细信息,请参阅 VxVM 安装文档。

SPARC: 从此处可转到何处

根据您想要如何创建根磁盘组,使用以下安装方法之一来安装 VxVM。

SPARC: 如何安装 VERITAS Volume Manager 软件和封装根磁盘

该过程使用 scvxinstall(1M) 命令,只需一次操作即可完成 VxVM 软件的安装和根磁盘的封装。


注意 –

如果要在本地非根磁盘上创建根磁盘组,则应转到SPARC: 如何只安装 VERITAS Volume Manager 软件


对每个要安装 VxVM 的节点执行此过程。可以在群集的所有节点上安装 VERITAS Volume Manager (VxVM),也可以只在与 VxVM 将管理的存储设备具有物理连接的那些节点上安装它。

如果稍后需要取消根磁盘的封装,请按照SPARC: 如何取消根磁盘的封装中的过程进行操作。

  1. 确保群集满足下列先决条件。

    • 群集中的所有节点均以群集模式运行。

    • 要安装的节点的根磁盘具有两个空闲(未分配)分区。

  2. 获取下列信息:

  3. 成为要安装 VxVM 的节点上的超级用户。

  4. 将 VxVM CD-ROM 插入节点上的 CD-ROM 驱动器中。

  5. 以交互式模式启动 scvxinstall

    无论何时按 Ctrl-C 都会异常终止 scvxinstall 命令。


    # scvxinstall
    

    有关详细信息,请参阅 scvxinstall(1M) 手册页。

  6. 当得到提示询问是否封装根时,键入 yes


    Do you want Volume Manager to encapsulate root [no]? y
    

  7. 得到提示时,提供 VxVM CD-ROM 的位置。

    • 如果找到了相应的 VxVM CD-ROM,则其位置会作为提示的一部分显示在括号内。按 Enter 键接受此缺省位置。


      Where is the volume manager cdrom [default]?

    • 如果未找到 VxVM CD-ROM,则显示提示时不带缺省位置。键入 CD-ROM 或 CD-ROM 映像的位置。


      Where is the volume manager cdrom?

  8. 得到提示时,键入 VxVM 许可证密钥。


    Please enter license key: license
    

    scvxinstall 命令自动执行下列任务:

    • 安装所需的 VxVM 软件、许可和手册页软件包,但是不要安装 GUI 软件包

    • 选择群集范围内的 vxio 驱动程序主编号

    • 通过封装根磁盘来创建根磁盘组

    • 更新 /etc/vfstab 文件中的 /global/.devices 条目

    有关详细信息,请参阅 scvxinstall(1M) 手册页。


    注意 –

    安装过程中会自动重新启动两次。所有安装任务都完成之后,scvxinstall 会第二次自动重新引导节点,除非您在得到提示后按 Ctrl-C。如果按 Ctrl-C 来异常终止第二次重新引导,则稍后必须重新引导该节点才能完成 VxVM 安装。


  9. 要启用 VxVM 群集功能,请提供群集功能许可证密钥。

    有关如何添加许可证的信息,请参阅 VxVM 文档。

  10. (可选的) 安装 VxVM GUI。

    有关安装 VxVM GUI 的信息,请参阅 VxVM 文档。

  11. 弹出 CD-ROM。

  12. 安装所有 VxVM 修补程序。

    有关修补程序和安装说明的位置,请参阅《Sun Cluster 3.1 发行说明》中的“修补程序和所需的固件级别”。

  13. (可选的) 如果不希望 VxVM 手册页驻留在群集节点上,可以删除手册页软件包。


    # pkgrm VRTSvmman
    

  14. 重复步骤 3步骤 13 将 VxVM 安装在其他节点上。


    注意 –

    如果要启用 VxVM 群集功能,则必须在群集的所有节点上安装 VxVM。


  15. 如果您想在一个或多个节点上安装 VxVM,请修改每个非 VxVM 节点上的 /etc/name_to_major 文件。

    1. 在安装了 VxVM 的节点上,确定 vxio 主编号设置。


      # grep vxio /etc/name_to_major
      

    2. 成为您打算在其上安装 VxVM 的节点上的超级用户。

    3. 编辑 /etc/name_to_major 文件并添加一个条目,以便将 vxio 主编号设置为 NNN(即在步骤 a中得出的编号)。


      # vi /etc/name_to_major
      vxio NNN
      

    4. 初始化 vxio 条目。


      # drvconfig -b -i vxio -m NNN
      

    5. 在您打算安装 VxVM 的所有其他节点上重复步骤 b步骤 d 中的操作。

      完成后,群集中的每个节点在其 /etc/name_to_major 文件中应具有相同的 vxio 条目。

  16. (可选的) 要镜像已封装的根磁盘,请转至SPARC: 如何镜像封装的根磁盘

  17. 转到SPARC: 如何创建并注册磁盘组

SPARC: 如何镜像封装的根磁盘

安装 VxVM 并封装根磁盘后,在要对其已封装的根磁盘进行镜像的每个节点上执行此过程。

  1. 镜像封装的根磁盘。

    按照 VxVM 文档中的步骤操作。为了获得最高可用性并简化管理,使用本地磁盘进行镜像。有关其他指导信息,请参阅镜像根磁盘指南


    Caution – Caution –

    不要使用定额设备镜像根磁盘。在某些情况下,使用定额设备镜像根磁盘可能会使节点不从根磁盘镜像启动。


  2. 显示 DID 映射。


    # scdidadm -L
    

  3. 从 DID 映射中,定位用于镜像根磁盘的磁盘。

  4. 从根磁盘镜像的设备 ID 名称中提取原始磁盘设备组名称。

    原始磁盘设备组的名称遵循惯例 dsk/dN,其中 N 是数字。在以下输出中,从中提取原始磁盘设备组名称的那部分 scdidadm 输出行用黑体突出显示。


    N         node:/dev/rdsk/cNtXdY     /dev/did/rdsk/dN
    

  5. 查看原始磁盘设备组的节点列表。

    输出类似于以下内容。


    # scconf -pvv | grep dsk/dN
    Device group name:						dsk/dN
    …
     (dsk/dN) Device group node list:		phys-schost-1, phys-schost-3
    …

  6. 如果节点列表包含多个节点名称,请从节点列表中删除镜像根磁盘的节点以外的所有节点。

    原始磁盘设备组的节点列表中只能保留镜像根磁盘的节点。


    # scconf -r -D name=dsk/dN,nodelist=node
    
    -D name=dsk/dN

    指定原始磁盘设备组在群集范围内唯一的名称

    nodelist=node

    指定要从节点列表中删除的节点的名称

  7. 启用原始磁盘设备组的 localonly 特性。

    启用 localonly 特性之后,该原始磁盘设备组将由节点列表中的节点专用。如果引导设备与多个节点连接,则启用该特性可以防止意外地将节点与其引导设备隔开。


    # scconf -c -D name=dsk/dN,localonly=true
    

    有关 localonly 特性的详细信息,请参阅 scconf_dg_rawdisk(1M) 手册页。

  8. 对群集中要镜像其已封装的根磁盘的每个节点重复该过程。

  9. 创建磁盘组。

    转到SPARC: 如何创建并注册磁盘组

SPARC: 示例 — 镜像已封装的根磁盘

以下示例显示了为节点 phys-schost-1 的根磁盘所创建的一个镜像。该镜像在磁盘 c1t1d0 上创建,其原始磁盘设备组名称为 dsk/d2。磁盘 c1t1d0 是多主机磁盘,因此已从该磁盘的节点列表中删除了节点 phys-schost-3 并启用了 localonly 特性。


(显示 DID 映射)
# scdidadm -L 
…
2        phys-schost-1:/dev/rdsk/c1t1d0 /dev/did/rdsk/d2   
2        phys-schost-3:/dev/rdsk/c1t1d0 /dev/did/rdsk/d2   
…
 
(显示镜像磁盘的原始设备组的节点列表)
# scconf -pvv | grep dsk/d2
Device group name:						dsk/d2
…
  (dsk/d2) Device group node list:		phys-schost-1, phys-schost-3
…
 
(从节点列表中删除 phys-schost-3)
# scconf -r -D name=dsk/d2,nodelist=phys-schost-3
  
(启用 localonly 特性)
# scconf -c -D name=dsk/d2,localonly=true

SPARC: 如何只安装 VERITAS Volume Manager 软件

此过程使用 scvxinstall 命令以便只安装 VERITAS Volume Manager (VxVM) 软件。


注意 –

要通过封装根磁盘来创建根磁盘组,请不要使用该过程。而应转到SPARC: 如何安装 VERITAS Volume Manager 软件和封装根磁盘,通过一次操作就完成 VxVM 软件的安装和根磁盘的封装。


对每个要安装 VxVM 的节点执行此过程。可以在群集的所有节点上安装 VxVM,也可以只在与 VxVM 将管理的存储设备具有物理连接的那些节点上安装它。

  1. 确保群集中的所有节点均以群集模式运行。

  2. 准备好您需要安装的所有 VERITAS Volume Manager (VxVM) 许可证密钥。

  3. 成为要安装 VxVM 的群集节点上的超级用户。

  4. 将 VxVM CD-ROM 插入节点上的 CD-ROM 驱动器中。

  5. 在非交互式安装模式下启动 scvxinstall


    # scvxinstall -i -L {license | none}
    -i

    安装 VxVM 但不封装根磁盘

    -L {license | none}

    安装指定的 licensenone 参数指定不添加其他许可证密钥。

    scvxinstall 命令自动执行下列任务:

    • 安装所需的 VxVM 软件、许可和手册页软件包,但是不要安装 GUI 软件包

    • 安装所有指定的许可证密钥

    • 选择群集范围内的 vxio 驱动程序主编号

    有关信息,请参阅 scvxinstall(1M) 手册页。

  6. (可选的) 安装 VxVM GUI。

    有关安装 VxVM GUI 的信息,请参阅 VxVM 文档。

  7. 弹出 CD-ROM。

  8. 安装所有 VxVM 修补程序。

    有关修补程序和安装说明的位置,请参阅《Sun Cluster 3.1 发行说明》中的“修补程序和所需的固件级别”。

  9. (可选的) 如果不希望 VxVM 手册页驻留在群集节点上,可以删除手册页软件包。


    # pkgrm VRTSvmman
    

  10. 重复步骤 3步骤 9,在其他节点上安装 VxVM。


    注意 –

    如果要启用 VxVM 群集功能,则必须在群集的所有节点上安装 VxVM。


  11. 如果您想在一个或多个节点上安装 VxVM,请修改每个非 VxVM 节点上的 /etc/name_to_major 文件。

    1. 在安装了 VxVM 的节点上,确定 vxio 主编号设置。


      # grep vxio /etc/name_to_major
      

    2. 成为您打算在其上安装 VxVM 的节点上的超级用户。

    3. 编辑 /etc/name_to_major 文件并添加一个条目,以便将 vxio 主编号设置为 NNN(即在步骤 a 中得出的编号)。


      # vi /etc/name_to_major
      vxio NNN
      

    4. 初始化 vxio 条目。


      # drvconfig -b -i vxio -m NNN
      

    5. 在您打算安装 VxVM 的所有其他节点上重复步骤 a步骤 c 中的操作。

      完成后,群集中的每个节点在其 /etc/name_to_major 文件中应具有相同的 vxio 条目。

  12. (可选的) 要创建根磁盘组,请转至SPARC: 如何在非根磁盘上创建根磁盘组

  13. 重新引导每个节点。


    # shutdown -g0 -y -i6
    

  14. 创建磁盘组。

    转到SPARC: 如何创建并注册磁盘组

SPARC: 如何在非根磁盘上创建根磁盘组

使用此过程,通过封装或初始化本地磁盘而不是根磁盘来创建根磁盘组。

  1. 成为节点的超级用户。

  2. (可选的) 如果要封装磁盘,则确保每个磁盘至少有两个具有 0 柱面的磁盘片。

    如果需要,使用 format(1M) 命令来为每个 VxVM 盘片分配 0 柱面。

  3. 启动 vxinstall 实用程序。


     # vxinstall
    

    得到提示后,执行下列选择或输入。

    • 要启用 VxVM 群集功能,请提供群集功能许可证密钥。

    • 选择定制安装。

    • 不要封装引导磁盘。

    • 选择要添加到根磁盘组的所有磁盘。

    • 不要接受自动重新引导。

  4. 如果创建的根磁盘组包含连接至多个节点的一个或多个磁盘,则启用 localonly 特性。

    使用以下命令为根磁盘组中的每个共享磁盘启用原始磁盘设备组的 localonly 特性。


    # scconf -c -D name=dsk/dN,localonly=true
    

    启用 localonly 特性之后,该原始磁盘设备组将由节点列表中的节点专用。如果根磁盘组使用的磁盘与多个节点连接,则启用该特性可以防止意外地将节点与该磁盘隔开。

    有关 localonly 特性的详细信息,请参阅 scconf_dg_rawdisk(1M) 手册页。

  5. 从节点中移动所有资源组或设备组。


    # scswitch -S -h from-node
    
    -S

    清空所有资源组和设备组

    -h from-node

    指定要从中清空资源组或设备组的节点的名称

  6. 重新引导该节点。


    # shutdown -g0 -y -i6
    

  7. 使用 vxdiskadm 命令以将多个磁盘添加到根磁盘组中。

    如果根磁盘组包含多个磁盘,则该磁盘组具有磁盘容错功能。有关过程的信息,请参阅 VxVM 文档。

  8. 创建磁盘组。

    转到SPARC: 如何创建并注册磁盘组

SPARC: 如何创建并注册磁盘组

使用此过程来创建 VxVM 磁盘组和卷。


注意 –

磁盘组在群集中注册为磁盘设备组后,一定不要使用 VxVM 命令导入或导出 VxVM 磁盘组。Sun Cluster 软件可以处理所有需要输入或清除磁盘组的情况。有关如何管理 Sun Cluster 磁盘设备组的步骤,请参见Sun Cluster 系统管理指南(适用于 Solaris OS)》中的“管理磁盘设备组”


从一个节点执行此过程,该节点与组成要添加的磁盘组的各个磁盘具备物理连接。

  1. 获取下列信息:

  2. 成为将拥有磁盘组的节点的超级用户。

  3. 创建 VxVM 磁盘组和卷。

    如果要安装 Oracle Real Application Clusters,使用《VERITAS Volume Manager Administrator's Reference Guide》中介绍的 VxVM 群集功能创建共享的 VxVM 磁盘组。否则,请使用 VxVM 文档中介绍的标准过程来创建 VxVM 磁盘组。


    注意 –

    可以使用“脏区域记录 (DRL)”来缩短节点失败时的卷恢复时间。但是,使用 DRL 可能减少 I/O 吞吐量。


  4. 如果启用 VxVM 群集功能,请将磁盘组注册为 Sun Cluster 磁盘设备组。

    如果启用 VxVM 群集功能,则不要将共享磁盘组注册为 Sun Cluster 磁盘设备组。而应转至SPARC: 如何检验磁盘组配置

    1. 启动 scsetup(1M) 实用程序。


      # scsetup
      

    2. 选择“设备组和卷”。

    3. 选择“注册 VxVM 磁盘组”。

    4. 按照说明进行操作,指定要注册为 Sun Cluster 磁盘设备组的 VxVM 磁盘设备组。

    5. 如果在尝试注册磁盘设备组时出现以下错误消息,则需要为磁盘设备组重编次编号。


      scconf: Failed to add device group - in use

      要为磁盘设备组重编次编号,请使用SPARC: 如何给磁盘设备组分配新的次编号这一过程。此过程使您能够分配一个新的次编号,该编号不与现有磁盘设备组所使用的次编号冲突。

    6. 完成后,退出 scsetup 实用程序。

    7. 检验磁盘设备组是否已注册。

      使用以下命令查看所显示的新磁盘的磁盘设备信息。


      # scstat -D
      


      提示 –

      如果在使磁盘设备组联机时发生栈溢出,则可能是线程栈大小的缺省值不足。将下列条目添加到每个节点的 /etc/system 文件中,其中 size 是大于 8000 的数字,缺省设置为:


      set cl_comm:rm_thread_stacksize=0xsize
      



    注意 –

    如果更改了 VxVM 磁盘组或卷的任何配置信息,则必须使用 scsetup 实用程序注册配置更改。必须注册的配置更改包括添加或删除卷,以及更改现有卷的组、属主或许可。有关注册对磁盘设备组的配置所作更改的步骤,请参见Sun Cluster 系统管理指南(适用于 Solaris OS)》中的“管理磁盘设备组”


  5. 转到SPARC: 如何检验磁盘组配置

SPARC: 如何给磁盘设备组分配新的次编号

如果因为次编号与另一磁盘组的次编号冲突而导致磁盘设备组注册失败,则必须给该新磁盘组分配一个未使用过的新次编号。遵照此过程,为磁盘组重编次编号。

  1. 成为群集中一个节点上的超级用户。

  2. 确定正在使用的次编号。


    # ls -l /global/.devices/node@1/dev/vx/dsk/*
    

  3. 选择其他任何未使用的 1000 的倍数作为新磁盘组的基本次编号。

  4. 将该新的基本次编号分配给磁盘组。


    # vxdg reminor diskgroup base-minor-number
    

  5. 转至SPARC: 如何创建并注册磁盘组SPARC: 如何创建并注册磁盘组,将磁盘组注册为 Sun Cluster 磁盘设备组。

SPARC: 示例 — 如何给磁盘设备组指定新的次编号

该示例使用次编号 16000-16002 和 4000-4001。vxdg reminor 命令为新的磁盘设备组重编次编号使其使用基本次编号 5000。


# ls -l /global/.devices/node@1/dev/vx/dsk/*
/global/.devices/node@1/dev/vx/dsk/dg1
brw-------   1 root     root      56,16000 Oct  7 11:32 dg1v1
brw-------   1 root     root      56,16001 Oct  7 11:32 dg1v2
brw-------   1 root     root      56,16002 Oct  7 11:32 dg1v3
 
/global/.devices/node@1/dev/vx/dsk/dg2
brw-------   1 root     root      56,4000 Oct  7 11:32 dg2v1
brw-------   1 root     root      56,4001 Oct  7 11:32 dg2v2
# vxdg reminor dg3 5000

SPARC: 如何检验磁盘组配置

请在群集的各个节点上都执行此过程。

  1. 检验在根磁盘组中是否只包含本地磁盘,并检验是否只在当前主节点上输入了磁盘组。


    # vxdisk list
    

  2. 检验是否已启动了所有卷。


    # vxprint
    

  3. 检验是否已将所有磁盘组注册为 Sun Cluster 磁盘设备组以及这些磁盘组是否联机。


    # scstat -D
    

  4. 配置群集。

    转到配置群集

SPARC: 如何取消根磁盘的封装

执行此过程以取消根磁盘的封装。

  1. 确保在根磁盘上只存在 Solaris 根文件系统。

    Solaris 根文件系统为根 (/)、交换文件、全局设备名称空间、/usr/var/opt/home。如果有任何其他文件系统驻留在根磁盘上,则将其备份然后从根磁盘中删除。

  2. 成为要取消封装的节点的超级用户。

  3. 从节点中清空所有资源组和设备组。


    # scswitch -S -h from-node
    
    -S

    清空所有资源组和设备组

    -h from-node

    指定要从中清空资源组或设备组的节点的名称

  4. 确定节点的节点 ID 号。


    # clinfo -nN
    

  5. 卸载该节点的全局设备文件系统,其中 N 是在步骤 4 中返回的节点 ID 号。


    # umount /global/.devices/node@N
    

  6. 查看 /etc/vfstab 文件并确定哪个 VxVM 卷对应于全局设备文件系统。


    # vi /etc/vfstab
    #device        device        mount    FS     fsck    mount    mount
    #to mount      to fsck       point    type   pass    at boot  options
    #
    #NOTE: volume rootdiskxNvol (/global/.devices/node@N) encapsulated 
    #partition cNtXdYsZ
    

  7. 从根磁盘组中删除对应于该全局设备文件系统的 VxVM 卷。

    • 对于 VxVM 3.5 和早期版本,使用以下命令:


      # vxedit -rf rm rootdiskxNvol
      

    • 对于 VxVM 4.0,使用以下命令:


      # vxedit -g rootdiskgroup
      


    Caution – Caution –

    不要在全局设备文件系统中存储全局设备的设备条目以外的数据。删除 VxVM 卷时,全局设备文件系统中的所有数据都会遭到破坏。在根磁盘的封装被取消之后,仅恢复与全局设备条目相关的数据。


  8. 取消根磁盘的封装。


    注意 –

    不要接受从命令发出的关机请求。



    # /etc/vx/bin/vxunroot
    

    有关详细信息,请参阅 VxVM 文档。

  9. 使用 format(1M) 命令将 512 兆字节的分区添加到根磁盘中,以备全局设备文件系统使用。


    提示 –

    使用 /etc/vfstab 文件中指定的同一个盘片,即:该根磁盘被封装之前分配给全局设备文件系统的那个盘片。


  10. 步骤 9 中创建的分区上设置一个文件系统。


    # newfs /dev/rdsk/cNtXdYsZ
    

  11. 确定根磁盘的 DID 名称。


    # scdidadm -l cNtXdY
    1        phys-schost-1:/dev/rdsk/cNtXdY   /dev/did/rdsk/dN 
    

  12. /etc/vfstab 文件中,用步骤 11 中指定的 DID 路径替代全局设备文件系统条目中的路径名称。

    原有条目应类似于以下内容。


    # vi /etc/vfstab
    /dev/vx/dsk/rootdiskxNvol /dev/vx/rdsk/rootdiskxNvol /global/.devices/node@N ufs 2 no global

    经过修订后,使用 DID 路径的条目应类似于以下内容。


    /dev/did/dsk/dNsX /dev/did/rdsk/dNsX /global/.devices/node@N ufs 2 no global

  13. 安装全局设备文件系统。


    # mount /global/.devices/node@N
    

  14. 从群集的一个节点上,为所有原始磁盘设备和 Solstice DiskSuite 或 Solaris Volume Manager 设备的设备节点上重新装入全局设备文件系统。


    # scgdevs
    

    VxVM 设备在下一次重新引导时创建。

  15. 重新引导该节点。


    # reboot
    

  16. 在群集的每个节点上重复该过程,以在这些节点上取消根磁盘的封装。