通过使用本附录中的过程以及 "规划卷管理" 中的规划信息可为 VERITAS Volume Manager (VxVM) 安装和配置您的本地和多主机磁盘。有关进一步信息,请参阅 VxVM。
本附录中包含下列过程。
开始之前,您需要获取以下信息。
存储磁盘驱动器的映射。
从 《Sun Cluster 3.0 发行说明》获得下列完成的配置规划工作表。有关规划指南,请参阅 "规划卷管理"。
"本地文件系统布局工作表"
"磁盘设备组配置工作表"
"卷管理器配置工作表"
下表列出了为配置 Sun Cluster 而安装和配置 VxVM 软件需要执行的任务。
表 B-1 任务对应关系:安装并且配置 VxVM 软件
任务 |
有关说明,请转到... |
|
---|---|---|
规划 VxVM 配置的布局。 | ||
确定如何在每个节点上创建 rootdg 磁盘组。 | ||
安装 VxVM 软件并创建 rootdg 磁盘组。 |
|
|
|
方法 1 -安装 VxVM 软件并通过使用 scvxinstall 命令来封装根磁盘,还可以镜像封装的根磁盘。 | |
方法 2 -安装 VxVM 软件,并在本地的非根磁盘上创建 rootdg。 | ||
创建共享磁盘组和卷。 | ||
通过分配新的次编号来解决磁盘设备组之间的次编号冲突。 | ||
检验共享磁盘组和卷。 | ||
配置群集。 |
安装 VxVM 之后,每个群集节点要求创建一个 rootdg 磁盘组。该磁盘组由 VxVM 用来存储配置信息,并具有以下限制。
对节点的 rootdg 磁盘组的访问必须仅限于该节点。
远程节点永不应访问存储在另一个节点的 rootdg 中的数据。
不要使用 scconf (1M) 命令将 rootdg 磁盘组注册为共享的磁盘组。
如果可能,在非共享磁盘上为每个节点配置 rootdg。
Sun Cluster 软件支持下列配置 rootdg 磁盘组的方法。
封装节点的根磁盘 - 该方法允许镜像根磁盘,在根磁盘毁坏或损坏的情况下提供替代引导方法。要封装根磁盘,需要两个空闲磁盘片以及一些空闲柱面,最好在磁盘的开始或结尾处。
使用本地的非根磁盘 - 该方法提供了封装根磁盘的另一种方法。如果已封装节点的根磁盘,则稍后可能需执行某些任务,比如升级 Solaris 操作环境或执行灾难恢复过程,比未封装根磁盘的情况复杂。为了避免可能增加的复杂性,可以初始化或封装用作 rootdg 的本地非根磁盘。在本地非根磁盘上创建的 rootdg 磁盘组是该节点的本地磁盘组,既不可全局访问,也不具有高可用性。与根磁盘的情况一样,封装非根磁盘要求在磁盘的开始或结尾处有两个空闲磁盘片以及一些空闲柱面。
有关详细信息,请参阅 VxVM 安装文档。
根据您要如何创建 rootdg 磁盘组,使用下列安装方法之一来安装 VxVM。
要封装根磁盘,请转到 "如何安装 VERITAS Volume Manager 软件并封装根磁盘"。
要在本地非根磁盘上创建 rootdg 磁盘组,请转到 "如何仅安装 VERITAS Volume Manager 软件"。
该过程使用 scvxinstall (1M) 命令,在一次操作中完成安装 VxVM 软件并封装根磁盘的过程。
要在本地非根磁盘上创建 rootdg 磁盘组,请转到 "如何仅安装 VERITAS Volume Manager 软件"。
对要安装 VxVM 的每个节点执行该过程。您可以在群集的所有节点上安装 VERITAS Volume Manager (VxVM),也可以仅在与 VxVM 将管理的存储设备具有物理连接的那些节点上安装。
尽管 scvxinstall 实用程序在安装开始时禁用了动态多路径传送 (DMP),但在安装了 VRTSvxym 软件包后,VxVM 3.1.1 会自动重新启用 DMP。更早版本的 VxVM 仍必须在禁用 DMP 的情况下运行。
确保群集满足下列先决条件。
群集中的所有节点均以群集模式运行。
要安装的节点的根磁盘具有两个空闲(未分配)分区。
成为要安装 VxVM 的节点的超级用户。
确保该节点的 /etc/name_to_major 文件不包含 vxio 条目。
如果存在 vxio 条目,则把它从文件中删除。如果以前在群集的其它节点上安装了 VxVM ,则可能存在这个条目。在 VxVM 软件包的安装过程中,将自动添加正确的 vxio 条目。
将 VxVM CD-ROM 插入节点的 CD-ROM 驱动器中。
以交互式模式启动 scvxinstall。
在任何时候按下 Control-C 即可异常终止 scvxinstall 命令。
# scvxinstall |
有关详细信息,请参阅 scvxinstall (1M) 手册页。
出现是否封装根的提示后,输入yes(是)。
Do you want Volume Manager to encapsulate root [no]? y |
出现提示后,提供 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? |
出现提示后,输入 VxVM 许可证密钥。
Please enter license key:license |
scvxinstall 命令将自动执行下列任务。
禁用动态多路径传送 (DMP)。
安装 VRTSvxvm、VRTSvmdev 和 VRTSvmman 软件包
将 vxio 驱动程序的主编号设置为 210
通过封装根磁盘来创建 rootdg 磁盘组
更新 /etc/vfstab 文件中的 /global/.devices 条目
有关详细信息,请参阅 scvxinstall (1M) 手册页。
完成安装任务之后,除非在出现提示后按下 Control-C,否则 scvxinstall 命令将自动重新引导该节点。如果您按下 Control-C,则稍后必须重新引导节点才能完成 VxVM 安装。
要启用 VxVM 群集功能,请运行 vxlicense 命令以提供群集功能许可证密钥。
有关 vxlicense 命令的信息,请参阅 VxVM 文档。
(可选的) 安装 VxVM GUI。
# pkgadd VRTSvmsa |
有关 VxVM GUI 的信息,请参阅 VxVM 文档。
弹出 CD-ROM。
安装 VxVM 修补程序。
有关修补程序的位置和安装说明的信息,请参阅《Sun Cluster 3.0 U1 发行说明》。
(可选的) 如果不想让 VxVM 手册页留在群集节点上,可删除该手册页包。
# pkgrm VRTSvmman |
是否希望在另一节点上安装 VxVM?
是否有一个或多个您不想 在其上安装 VxVM 的节点?
要启用 VxVM 群集功能,必须在群集的所有节点上安装 VxVM。继续进行 步骤 20。
成为不想安装 VxVM 的节点的超级用户。
编辑 /etc/name_to_major 文件并添加一个条目,以将 vxio 主编号设置为 210。
# vi /etc/name_to_major vxio 210 |
如果稍后在此节点上安装 VxVM,则必须在安装 VxVM 之前删除 vxio 条目。
初始化 vxio 条目。
# drvconfig -b -i vxio -m 210 |
下一次重新引导此节点时,可能会看到类似如下的消息。这些消息不会造成损害,因而可以忽略。
/sbin/rcS: /usr/sbin/vxrecover: not found /etc/rc2.d/S75MOUNTGFSYS: /usr/sbin/vxdctl: not found |
对您不想安装 VxVM 的所有其它节点重复步骤 16到步骤 18的操作。
完成操作之后,每个群集节点在其 /etc/name_to_major 文件中都应具有相同的 vxio 条目。
是否打算镜像封装的根磁盘?
如果是,则转到"如何镜像封装的根磁盘"。
如果否,则转到"如何创建并注册共享磁盘组"。
如果稍后想取消根磁盘的封装,请按照 "如何取消根磁盘的封装" 中的过程操作。
安装 VxVM 并封装根磁盘后,在要镜像封装根磁盘的每个节点上执行此过程。
按照 VxVM 文档中的过程来镜像封装的根磁盘。
为了获得最高可用性并简化管理,使用本地磁盘进行镜像。有关其它指导信息,请参阅 "镜像根磁盘"。
不要使用定额设备来镜像根磁盘。这样做可能会导致在某些情况下节点无法从根磁盘镜像中进行引导。
显示设备 ID (DID) 映射。
# scdidadm -L |
从 DID 映射中,定位用于镜像根磁盘的磁盘。
从根磁盘镜像的 DID 名称中提取原始磁盘设备组名称。
原始磁盘设备组的名称遵照惯例 dsk/dN,其中 N 表示数字。在以下输出中,提取原始磁盘设备组名称的 scdidadm 输出行部分突出显示为黑体。
N node:/dev/rdsk/cNtXdY /dev/did/rdsk/dN |
查看原始磁盘设备组的节点列表。
输出内容类似以下示例。
# scconf -pvv | grep dsk/dN Device group name: dsk/dN ... (dsk/dN) Device group node list: phys-schost-1, phys-schost-3 ... |
节点列表是否包含多个节点名称?
从原始磁盘设备组的节点列表中删除其根磁盘已被镜像的节点之外的所有节点。
在节点列表中仅保留已镜像根磁盘的那个节点。
# scconf -r -D name=dsk/dN,nodelist=node |
指定原始磁盘设备组在群集范围内唯一的名称
指定要从节点列表中删除的节点的名称
启用原始磁盘设备组的 localonly 特性。
启用 localonly 特性后,该原始磁盘设备组为其节点列表中的节点专用。如果引导设备与多个节点连接,则启用该特性可以防止意外地将节点与其引导设备隔开。
# scconf -c -D name=dsk/dN,localonly=true |
有关 localonly 特性的详细信息,请参阅 scconf_dg_rawdisk (1M) 手册页。
对群集中要镜像其封装根磁盘的每个节点重复该过程的操作。
创建共享磁盘组。
转到 "如何创建并注册共享磁盘组"。
以下示例显示为节点 phys-schost-1的根磁盘所创建的镜像。该镜像在磁盘 c1t1d0 上创建,其原始磁盘设备组名称为 dsk/d2。磁盘 c1t1d0 是一个多端口磁盘,所以从磁盘的节点列表中删除节点 phys-schost-3 并启用 localonly 特性。
(Display the DID mappings) # scdidadm -L ... 2 phys-schost-1:/dev/rdsk/c1t1d0 /dev/did/rdsk/d2 2 phys-schost-3:/dev/rdsk/c1t1d0 /dev/did/rdsk/d2 ... (Display the node list of the mirror disk's raw disk device group) # scconf -pvv | grep dsk/d2 Device group name: dsk/d2 ... (dsk/d2) Device group node list: phys-schost-1, phys-schost-3 ... (Remove phys-schost-3 from the node list for the raw disk device group) # scconf -r -D name=dsk/d2,nodelist=phys-schost-3 (Enable the localonly property for the mirror disk's raw disk device group) # scconf -c -D name=dsk/d2,localonly=true |
该过程使用 scvxinstall 命令来只安装 VERITAS Volume Manager (VxVM) 软件。
要通过封装根磁盘来创建 rootdg 磁盘组,请不要使用该过程。而应该转到 "如何安装 VERITAS Volume Manager 软件并封装根磁盘",以在一次操作中完成安装 VxVM 软件并封装根磁盘的过程。
对要安装 VxVM 的每个节点执行该过程。您可以在群集的所有节点上安装 VxVM,也可以仅在物理连 接到VxVM 将管理的存储设备的节点上安装。
尽管 scvxinstall 实用程序在安装开始时禁用了动态多路径传送 (DMP),但在安装了 VRTSvxym 软件包后,VxVM 3.1.1 会自动重新启用 DMP。更早版本的 VxVM 仍必须在禁用 DMP 的情况下运行。
确保群集中的所有节点均以群集模式运行。
成为要安装 VxVM 的群集节点的超级用户。
确保该节点的 /etc/name_to_major 文件不包含 vxio 条目。
如果存在 vxio 条目,则把它从文件中删除。如果以前在群集的其它节点上安装了 VxVM,则可能存在这个条目。在 VxVM 软件包的安装过程中,将自动添加正确的 vxio 条目。
将 VxVM CD-ROM 插入节点的 CD-ROM 驱动器中。
以交互式的安装模式启动 scvxinstall。
# scvxinstall -i |
scvxinstall 命令将自动执行下列任务。
禁用动态多路径传送 (DMP)。
安装 VRTSvxvm、VRTSvmdev 和 VRTSvmman 软件包
将 vxio 驱动程序的主编号设置为 210
有关信息,请参阅 scvxinstall (1M) 手册页。
(可选的) 安装 VxVM GUI。
# pkgadd VRTSvmsa |
有关 VxVM GUI 的信息,请参阅 VxVM 文档。
弹出 CD-ROM。
安装 VxVM 修补程序。
有关修补程序的位置和安装说明的信息,请参阅《Sun Cluster 3.0 U1 发行说明》。
(可选的) 如果不想让 VxVM 手册页留在群集节点上,可删除该手册页包。
# pkgrm VRTSvmman |
是否希望在另一节点上安装 VxVM?
是否有一个或多个您不想 在其上安装 VxVM 的节点?
要启用 VxVM 群集功能,必须 在群集的所有节点上安装 VxVM。继续进行 步骤 16。
成为不想安装 VxVM 的节点的超级用户。
编辑 /etc/name_to_major 文件并添加一个条目,以将 vxio 主编号设置为 210。
# vi /etc/name_to_major vxio 210 |
如果稍后在此节点上安装 VxVM,则必须在安装 VxVM 之前删除 vxio 条目。
初始化 vxio 条目。
# drvconfig -b -i vxio -m 210 |
下一次重新引导此节点时,可能会看到类似如下的消息。这些消息不会造成损害,因而可以忽略。
/sbin/rcS: /usr/sbin/vxrecover: not found /etc/rc2.d/S75MOUNTGFSYS: /usr/sbin/vxdctl: not found |
对您不想安装 VxVM 的所有其它节点重复步骤 12到步骤 14的操作。
完成操作之后,每个群集节点在其 /etc/name_to_major 文件中都应具有相同的 vxio 条目。
创建 rootdg 磁盘组。
遵照此过程,可通过封装或初始化不是根磁盘的本地磁盘来创建一个 rootdg 磁盘组。
获取可用的 VERITAS Volume Manager (VxVM) 许可证密钥。
成为节点的超级用户。
(可选的) 如果将要封装磁盘,则确保每个磁盘至少有两个具有 0 柱面的磁盘片。
如有必要,使用format(1M) 命令来为每个 VxVM 磁盘片分配 0 柱面。
启动 vxinstall (1M) 实用程序。
# vxinstall |
得到提示后,执行下列选择或输入。
提供 VxVM 许可证密钥。
要启用 VxVM 群集功能,请提供群集功能许可证密钥。
选择定制安装。
不要封装根磁盘。
选择要添加到 rootdg 磁盘组的任何磁盘。
不要接受自动重新引导。
从节点抽出所有资源组或设备组。
# scswitch -S -h node |
抽出所有资源组和设备组
指定要从中抽出资源或设备组的节点的名称
重新引导节点。
# shutdown -g0 -y -i6 |
使用 vxdiskadm (1M) 命令将多个磁盘添加到 rootdg 磁盘组中。
如果 rootdg 磁盘组包含多个磁盘,则该磁盘组具有磁盘容错功能。有关过程的信息,请参阅 VxVM 文档。
创建共享磁盘组。
转到 "如何创建并注册共享磁盘组"。
遵照此过程可创建 VxVM 磁盘组和卷。
将磁盘组以磁盘设备组身份注册到群集后,一定不要使用 VxVM 命令导入或导出 VxVM 磁盘组。Sun Cluster 软件可以处理所有需要导入或导出磁盘组的情况。有关如何管理 Sun Cluster 磁盘设备组的过程的信息,请参阅 《Sun Cluster 3.0 U1 系统管理指南》。
从一个节点执行此过程,该节点与组成要添加的磁盘组的各个磁盘具备物理连接。
获取下列信息:
存储磁盘驱动器的映射。有关如何执行存储设备的初始安装的章节,请参阅 《Sun Cluster 3.0 U1 Hardware Guide》。
下列完成的配置规划工作表(从 《Sun Cluster 3.0 U1 发行说明》)。
"本地文件系统布局工作表"
"磁盘设备组配置工作表"
"卷管理器配置工作表"
有关规划指南,请参阅 "规划卷管理"。
成为将拥有磁盘组的节点的超级用户。
创建 VxVM 磁盘组和卷。
如果正在安装 Oracle Parallel Server,则可通过使用 《VERITAS Volume Manager Administrator's Reference Guide》中介绍的 VxVM 群集功能来创建共享 VxVM 磁盘组。否则,通过使用 VxVM 文档中介绍的标准过程来创建 VxVM 磁盘组。
可以使用"脏区域记录 (DRL)"来缩短节点失败时的卷恢复时间。但是,使用 DRL 可能减少 I/O 吞吐量。
是否启用了 VxVM 群集功能?
将磁盘组注册为 Sun Cluster 磁盘设备组。
启动 scsetup(1M) 实用程序。
# scsetup |
要使用磁盘设备组,请输入 4(设备组和卷)。
要注册磁盘设备组,请输入 1(注册一个 VxVM 磁盘组)。
按说明操作并输入要注册为 Sun Cluster 磁盘设备组的 VxVM 磁盘设备组。
如果在注册磁盘设备组时遇到以下错误,请为磁盘设备组重编次编号。
scconf:Failed to add device group - in use |
要为磁盘设备组重编次编号,请遵照过程 "如何给磁盘设备组分配新的次编号"。此过程使您能够分配一个新的次编号,该编号不与现有磁盘设备组所使用的次编号冲突。
完成后,输入 q(退出)以退出 scsetup 实用程序。
检验是否已注册磁盘设备组。
使用以下命令查看显示的新磁盘的磁盘设备信息。
# scstat -D |
如果更改 VxVM 磁盘组或卷的配置信息,必须使用 scsetup 来重新注册 Sun Cluster 磁盘设备组。这些配置更改包括添加或删除卷,以及更改现有卷的组、属主或许可。在更改配置后重新注册可以确保全局名称空间处于正确的状态中。有关如何重新注册磁盘设备组的过程的信息,请参阅 《Sun Cluster 3.0 U1 系统管理指南》。
检验 VxVM 磁盘组和卷的配置。
转到 "如何检验磁盘组配置"。
如果因次编号与另一磁盘组冲突而使得注册磁盘设备组失败,则必须给新的磁盘组分配一个新的、未被使用的次编号。遵照此过程,为磁盘组重编次编号。
成为群集中一个节点上的超级用户。
确定所使用的次编号。
# ls -l /global/.devices/node@1/dev/vx/dsk/* |
选择其它未使用的 1000 的倍数作为新磁盘组的基本次编号。
为磁盘组分配新的基本次编号。
# vxdg reminor diskgroup base-minor-number |
要将磁盘组注册为一个 Sun Cluster 磁盘设备组,请转到"如何创建并注册共享磁盘组"的步骤 5。
此示例使用了次编号 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 |
在群集中的每个节点都执行此过程。
检验是否只有本地磁盘包含在根磁盘组 (rootdg)中,并且只在当前主节点中导入共享磁盘组。
# vxdisk list |
检验是否所有卷都已启动。
# vxprint |
检验是否所有共享磁盘组均已注册为 Sun Cluster 磁盘设备组并已联机。
# scstat -D |
配置群集。
转到 "配置群集"。
执行此过程以取消根磁盘的封装。
此过程对 Sun Cluster 3.0 配置有效。要在 Sun Cluster 2.2 配置上取消根磁盘的封装,请遵照 VxVM 文档中说明的过程执行操作。
确保根磁盘上仅有 Solaris 根文件系统 -root (/)、交换、全局设备名称空间、 /usr、/var、/opt 和 /home-。
如果有任何其它文件系统驻留在根磁盘上,则将其备份然后从根磁盘中删除。
成为要取消封装的节点的超级用户。
从节点抽出所有资源组和设备组。
# scswitch -S -h node |
抽出所有资源组和设备组
指定要从中抽出资源或设备组的节点的名称
确定该节点的节点 ID 号。
# clinfo -n N |
卸载此节点的全局设备文件系统,其中 N 是 步骤 4 中返回的节点 ID 号。
# umount /global/.devices/node@N |
查看 /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 |
将与全局设备文件系统对应的 VxVM 卷从 rootdg 磁盘组中删除。
# vxedit -rf rm rootdiskxNvol |
删除 VxVM 卷会损坏全局设备文件系统中的所有数据,但取消根磁盘的封装后,这些数据又会恢复。
取消根磁盘的封装。
# /etc/vx/bin/vxunroot |
有关详细信息,请参阅 VxVM。
使用 format (1M) 命令将 100 兆字节的分区添加到根磁盘中,以备全局设备文件系统使用。
在封装根磁盘之前,按照 /etc/vfstab 文件中的指定,使用分配给全局设备文件系统的盘片。
在 步骤 9 中所创建的分区上设置文件系统。
# newfs /dev/rdsk/cNtXdYsZ |
确定根磁盘的设备 ID (DID) 名称。
# scdidadm -l cNtXdY 1 phys-schost-1:/dev/rdsk/cNtXdY /dev/did/rdsk/dN |
在 /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 |
安装全局设备文件系统。
不必执行全局安装。
# mount /global/.devices/node@N |
在群集中的一个节点上,通过任何原始磁盘和 Solstice DiskSuite 设备的设备节点重新总装全局设备文件系统。
VxVM
# 下一次重新引导时将重建 scgdevs |
重新引导节点。
# reboot |
在群集的每个节点上重复该过程,以在这些节点上取消根磁盘的封装。