按照本节中的任务执行从 Sun Cluster 3.x 软件到 Sun Cluster 3.1 4/04 软件的非轮询升级。 在非轮询升级中,需要在升级群集节点之前关闭整个群集。 此过程还可以将群集从 Solaris 8 软件升级到 Solaris 9 软件。
要对 Sun Cluster 3.1 4/04 软件执行轮询升级,则应按照升级到 Sun Cluster 3.1 4/04 软件(轮询) 中的步骤进行。
任务 |
说明 |
---|---|
1. 阅读升级要求和限制。 | |
2. 使群集脱离生产、禁用资源以及备份共享数据和系统磁盘。 如果群集使用用于 Solstice DiskSuite/Solaris Volume Manager 的双串调解器,则取消配置调解器。 | |
3. 如果需要,将 Solaris 软件升级为支持的 Solaris 更新版。 (可选)升级 VERITAS Volume Manager (VxVM)。 | |
4. 升级到 Sun Cluster 3.1 4/04 框架和数据服务软件。 如果需要,升级应用程序。 如果群集使用双串调解器,则重新配置调解器。 如果升级了 VxVM,则升级磁盘组。 | |
5.(可选)如果必要,将 Sun Cluster 模块升级到 Sun Management Center。 | |
6. 注册新的资源类型,将现有资源迁移到新的资源类型中,根据需要更改资源类型扩展特性,启用资源并使资源组联机。 |
在升级软件之前,应执行以下步骤使群集脱离生产:
确保配置符合升级要求。
请参阅升级要求和限制 。
获取要升级的所有软件产品的 CD-ROM、文档和修补程序。
Solaris 8 或 Solaris 9 操作环境
Sun Cluster 3.1 4/04 框架
Sun Cluster 3.1 4/04 数据服务(代理)
由 Sun Cluster 3.1 4/04 数据服务代理管理的应用程序
VERITAS Volume Manager
有关修补程序和安装说明的位置,请参阅《Sun Cluster 3.1 发行说明》中的“修补程序和所需的固件级别”。
(可选的) 安装 Sun Cluster 3.1 4/04 文档。
在首选位置(如管理控制台或文档服务器)安装文档软件包。 要查看安装说明,请参阅 Java Enterprise System Accessory CD 3 CD-ROM 顶层的 index.html 文件。
如果不是,请继续步骤 5。
如果是,请准备好测试 IP 地址列表,群集中每个公共网适配器对应一个测试 IP 地址。
群集中每个公共网适配器都需要一个测试 IP 地址,无论适配器在组中是活动适配器还是备份适配器。 测试 IP 地址将用于重新配置适配器使用 IP Network Multipathing 。
每个测试 IP 地址必须与公共网适配器使用的现有 IP 地址在同一个子网上。
要列出节点上的公共网适配器,请运行以下命令:
% pnmstat |
有关 IP Network Multipathing 的测试 IP 地址的详细信息,请参阅《IP Network Multipathing Administration Guide》(Solaris 8) 或《System Administration Guide: IP Services》(Solaris 9) 。
通知用户群集服务在升级期间将不可用。
确保群集的功能正常。
要查看群集的当前状态,请从任意节点运行以下命令:
% scstat |
有关详细信息,请参阅 scstat(1M) 手册页。
在位于同一节点的 /var/adm/messages 日志中搜索未解析的错误消息或警告消息。
检查卷管理器的状态。
成为群集中一个节点上的超级用户。
使每个资源组脱机。
# scswitch -F -g resource-group |
使资源组脱机
指定要脱机的资源组的名称
禁用群集中的所有资源。
如果某个节点被错误地重新引导到群集模式,在升级之前禁用资源可以防止群集使资源自动联机。
如果要从 Sun Cluster 3.1 版升级,可以使用 scsetup(1M) 公用程序代替命令行。 从“Main Menu”(主菜单)中依次选择“Resource Groups”(资源组)、“Enable/Disable Resources”(启用/禁用资源)。
# scrgadm -pv | grep "Res enabled" (resource-group:resource) Res enabled: True |
标识依赖于其它资源的资源。
必须先禁用资源的相关资源。
禁用群集中启用的每个资源。
scswitch -n -j resource |
禁用
指定资源
有关详细信息,请参阅 scswitch(1M) 手册页。
检验是否已禁用所有资源。
# scrgadm -pv | grep "Res enabled" (resource-group:resource) Res enabled: False |
# scswitch -u -g resource-group |
使指定资源组处于不受管状态
指定要处于不受管状态的资源名称
检验所有节点上的所有资源是否均已 Offline,并检验所有资源组是否都处于 Unmanaged 状态。
# scstat -g |
群集是否使用双串调解器用于 Solstice DiskSuite/Solaris Volume Manager?
运行以下命令来检验不存在任何调解器数据问题。
# medstat -s setname |
指定磁盘集名称
如果“状态”字段中的值为 Bad,则修复受影响的调解器主机。 按照如何修正错误的调解器数据 过程进行。
列出所有调解器。
可在执行如何升级到 Sun Cluster 3.1 4/04 软件(非轮询)过程期间恢复调解器时使用该信息。
对于使用调解器的磁盘集,如果所有节点都不具有拥有权,则获取磁盘集的所有权。
# metaset -s setname -t |
获取磁盘集的所有权
取消配置用于磁盘集的所有调解器
# metaset -s setname -d -m mediator-host-list |
指定磁盘集名称
从磁盘集中删除
指定要作为该磁盘集的调解器主机删除的节点的名称
有关 metaset 命令的特定于调解器的选项的详细信息,请参阅 mediator(7D) 手册页。
停止群集中每个节点上运行的所有应用程序。
确保备份了所有共享数据。
# scshutdown -g -y |
有关详细信息,请参阅 scshutdown(1M) 手册页。
将各个节点都引导成非群集模式。
ok boot -x |
确保备份了每个系统磁盘。
如果 Sun Cluster 3.1 4/04 软件不支持当前在群集中运行的 Solaris 环境版本,则必须将 Solaris 软件升级到支持的版本。 转到如何升级 Solaris 操作环境(非轮询) 。
如果群集配置已在支持 Sun Cluster 3.1 4/04 软件的 Solaris 环境上运行,则可以选择是否进一步升级 Solaris 软件。
要升级 Sun Cluster 软件,请转到如何升级到 Sun Cluster 3.1 4/04 软件(非轮询)。
要升级 Solaris 软件,请转到如何升级 Solaris 操作环境(非轮询) 。
有关详细信息,请参阅 Sun Cluster Release Notes for Solaris OS 中的 “Supported Products”。
在群集中的每个节点上执行此过程以升级 Solaris 操作环境。 如果群集配置已在支持 Sun Cluster 3.1 4/04 软件的 Solaris 环境上运行,则可以选择是否执行此过程。
群集必须已运行于或升级到最低 Solaris 8 或 Solaris 9 版本环境才能支持 Sun Cluster 3.1 4/04 3.1 软件。 有关详细信息,请参阅 Sun Cluster Release Notes for Solaris OS 中的 “Supported Products”。
确保完成了如何为群集做好升级(非轮询)准备 中的所有步骤。
成为要进行升级的群集节点上的超级用户。
确定以下 Apache 链接是否已存在,如果存在,文件名中是否包含大写的 K 或 S:
/etc/rc0.d/K16apache /etc/rc1.d/K16apache /etc/rc2.d/K16apache /etc/rc3.d/S50apache /etc/rcS.d/K16apache |
如果这些链接已存在,并且文件名中包含大写的 K 或 S,则不需要对这些链接进行其它操作。
如果这些链接不存在,或这些链接存在但是文件名中包含小写的 k 或 s,则在步骤 8 中注释掉这些链接。
在 /etc/vfstab 文件中注释掉全局装载的文件系统的所有项。
卷管理器 |
使用的过程 |
说明信息所处的位置 |
---|---|---|
Solstice DiskSuite/Solaris Volume Manager |
所有 Solaris 升级方法,实时升级方法除外。 |
Solaris 8 或 Solaris 9 安装文档 |
VERITAS Volume Manager |
“升级 VxVM 和 Solaris” |
VERITAS Volume Manager 安装文档 |
如果群集中安装了 VxVM,作为 Solaris 升级进程的一部分,必须重新安装现有的 VxVM 软件或升级到 VxVM 软件的 Solaris 9 版。
按照步骤 5 中选择的过程升级 Solaris 软件。
请注意以下特殊说明:
在 /a/etc/vfstab 文件中,取消注释您在步骤 4 中注释掉的全局装载的文件系统的项。
如果在升级 Solaris 软件之前出现以下两种情况之一,则删除已恢复的 Apache 链接:
要删除名称中包含大写的 K 或 S 的已恢复 Apache 链接,请使用以下命令利用小写 k 或 s 重新命名这些文件。
# mv /a/etc/rc0.d/K16apache /a/etc/rc0.d/k16apache # mv /a/etc/rc1.d/K16apache /a/etc/rc1.d/k16apache # mv /a/etc/rc2.d/K16apache /a/etc/rc2.d/k16apache # mv /a/etc/rc3.d/S50apache /a/etc/rc3.d/s50apache # mv /a/etc/rcS.d/K16apache /a/etc/rcS.d/k16apache |
将节点重新引导为非群集模式。
在以下命令中加入双破折号 (--):
# reboot -- -x |
如果群集运行 VxVM,请执行“升级 VxVM 和 Solaris”过程中的其余步骤以重新安装或升级 VxVM。
请注意以下特殊说明:
如果您看到类似以下内容的消息,请键入 root 用户口令来继续执行升级进程。 不要运行 fsck 命令,也不要按 Ctrl-D。
WARNING - Unable to repair the /global/.devices/node@1 filesystem. Run fsck manually (fsck -F ufs /dev/vx/rdsk/rootdisk_13vol). Exit the shell when done to continue the boot process. Type control-d to proceed with normal startup, (or give root password for system maintenance): Type the root password |
当 VxVM 过程提示您使用 -r 选项执行最终重新配置的重新引导时,请使用 -x 选项重新引导到非群集状态。
# reboot -- -x |
VxVM 升级完成之后,请检验 /etc/vfstab 文件中的各项。 如果在步骤 7 中取消注释的任何项被注释掉,请再次将这些项取消注释。
安装任何所需的 Solaris 软件修补程序和与硬件相关的修补程序,并下载硬件修补程序中所包含的任何所需固件。
对于 Solstice DiskSuite 软件 (Solaris 8),还需要安装所有 Solstice DiskSuite 软件修补程序。
在添加了修补程序之后不要重新引导。 等待到升级 Sun Cluster 软件之后重新引导节点。
有关修补程序和安装说明的位置,请参阅《Sun Cluster 3.1 发行说明》中的“修补程序和所需的固件级别”。
升级到 Sun Cluster 3.1 4/04 软件。
转到如何升级到 Sun Cluster 3.1 4/04 软件(非轮询)。
要完成从 Solaris 8 到 Solaris 9 软件的升级,还必须升级到 Sun Cluster 3.1 4/04 软件的 Solaris 9 版本,即使群集已在 Sun Cluster 3.1 4/04 软件中运行。
下面的过程介绍如何将群集升级到 Sun Cluster 3.1 4/04 软件。 必须执行此过程才能完成群集从 Solaris 8 到 Solaris 9 软件的升级。
可以同时在多个节点上执行该过程。
确保完成了如何为群集做好升级(非轮询)准备 中的所有步骤。
如果是从 Solaris 8 升级到 Solaris 9 软件,还需要确保完成了如何升级 Solaris 操作环境(非轮询) 中的所有步骤。
成为群集中一个节点上的超级用户。
确保安装了所有所需的 Solaris 软件修补程序和硬件相关的修补程序。
对于 Solstice DiskSuite 软件 (Solaris 8),还需要确保安装了所有所需的 Solstice DiskSuite 软件修补程序。
将 Sun Java Enterprise System 2004Q2 2 of 2 CD-ROM 插入节点的 CD-ROM 驱动器中。
如果卷管理守护程序 vold(1M) 正在运行并配置成管理 CD-ROM 设备,则它会自动装载 /cdrom/cdrom0 目录中的 CD-ROM。
将节点升级到 Sun Cluster 3.1 4/04 软件。
从 /cdrom/cdrom0 目录切换到 Solaris_sparc/Product/sun_cluster/Solaris_ver/Tools 目录,其中 ver 为 8(对于 Solaris 8)或 9(对于 Solaris 9) 。
以下示例使用 Solaris 8 版 Sun Cluster 软件的路径。
# cd /cdrom/cdrom0/Solaris_sparc/Product/sun_cluster/Solaris_8/Tools |
要从 Sun Cluster 3.0 软件进行升级,请运行以下命令:
# ./scinstall -u update -S interact -M patchdir=dirname |
指定用于将 NAFO 组转换为 IP Network Multipathing 组的测试 IP 地址
指定 scinstall 将提示用户输入所需的每个测试 IP 地址
指定修补程序信息的路径,以便可以使用 scinstall 命令安装指定的修补程序。 如果未指定修补程序列表文件,scinstall 命令将在 dirname 目录中安装所有修补程序,包括压缩的修补程序。
-M 选项不是必需的。 您可以使用任何自己喜欢的方法安装修补程序。
要从 Sun Cluster 3.1 软件进行升级,请运行以下命令:
# ./scinstall -u update -M patchdir=dirname |
指定修补程序信息的路径,以便可以使用 scinstall 命令安装指定的修补程序。 如果未指定修补程序列表文件,scinstall 命令将在 dirname 目录中安装所有修补程序,包括压缩的修补程序。
-M 选项不是必需的。 您可以使用任何自己喜欢的方法安装修补程序。
有关修补程序和安装说明的位置,请参阅《Sun Cluster 3.1 发行说明》中的“修补程序和所需的固件级别”。
当系统显示消息 Completed Sun Cluster framework upgrade 和升级日志的路径时,升级进程即完成。
有关详细信息,请参阅 scinstall(1M) 手册页。 有关 IP Network Multipathing 测试地址的信息,请参阅《IP Network Multipathing Administration Guide》(Solaris 8) 或《System Administration Guide: IP Services》(Solaris 9) 。
Sun Cluster 3.1 4/04 软件需要版本至少为 3.5.1 的 Sun Explorer 软件。 升级到 Sun Cluster 软件包括安装 Sun Explorer 数据收集器软件,以与 sccheck 公用程序结合使用。 如果在升级 Sun Cluster 之前已安装了另一个版本的 Sun Explorer 软件,Sun Cluster 软件提供的版本将替换原来的版本。 某些选项(如用户身份和数据传送)将被保留,但 crontab 项必须手动重新创建。
在 Sun Cluster 升级过程中,scinstall 可能会进行一个或多个以下配置更改:
切换到 CD-ROM 根目录并弹出 CD-ROM。
升级群集上安装的软件应用程序。
确保应用程序级别与 Sun Cluster 及 Solaris 软件的当前版本一致。 有关安装说明,请参阅您的应用程序文档。 另外,请按照下面的原则升级 Sun Cluster 3.1 4/04 配置中的应用程序:
(可选的) 将 Sun Cluster 数据服务升级到 Sun Cluster 3.1 4/04 软件版本。
必须将 Sun Cluster HA for Oracle 3.0 64 位 Solaris 9 数据服务升级到 Sun Cluster 3.1 4/04 版本。 否则将无法在升级到 Sun Cluster 3.1 4/04 软件后使用 Sun Cluster 3.0 数据服务。
只有 Java Enterprise System Accessory CD 3 CD-ROM 上提供的数据服务才会通过 scinstall(1M) 公用程序自动升级。 必须手动升级所有定制或第三方数据服务。 按照那些数据服务提供的过程进行。
将 Java Enterprise System Accessory CD 3 CD-ROM 插入要升级的节点的 CD-ROM 驱动器。
# scinstall -u update -s all -d /cdrom/cdrom0 |
指定升级
更新节点上安装的所有 Sun Cluster 数据服务
当系统显示消息 Completed upgrade of Sun Cluster data services agents 和升级日志的路径时,升级进程即完成。
切换到 CD-ROM 根目录并弹出 CD-ROM。
根据需要手动升级 Java Enterprise System Accessory CD 3 CD-ROM 上未提供的任何定制数据服务。
安装所有 Sun Cluster 3.1 4/04 数据服务修补程序。
有关修补程序和安装说明的位置,请参阅《Sun Cluster 3.1 发行说明》中的“修补程序和所需的固件级别”。
升级了所有节点之后,将每个节点重新引导到群集模式。
# reboot |
在每个升级的节点上,查看安装的 Sun Cluster 软件的级别。
# scinstall -pv |
从一个节点检验群集模式下 (Online) 运行的所有升级的群集节点。
# scstat -n |
有关显示群集状态的详细信息,请参阅 scstat(1M) 手册页。
# scdidadm -c |
执行一致性检查
配置通过一致性检查之前,请不要继续执行步骤 12。 如果无法进行一致性检查,则可能会导致设备标识错误和数据被破坏。
下表列出了 scdidadm -c 命令的可能输出以及必须执行的操作(如果有)。
示例消息 |
执行的操作 |
---|---|
device id for 'phys-schost-1:/dev/rdsk/c1t3d0' does not match physical device's id, device may have been replaced |
转到恢复升级过程中的存储配置更改 并执行相应的修复过程。 |
device id for 'phys-schost-1:/dev/rdsk/c0t0d0' needs to be updated, run scdidadm –R to update |
无。 可以在步骤 12 中更新此设备 ID。 |
无输出消息 |
无 |
有关详细信息,请参阅 scdidadm(1M) 手册页。
在每个节点上,将 Sun Cluster 存储数据库迁移到 Solaris 9 设备 ID。
# scdidadm -R all |
执行修复过程
指定所有设备
在每个节点上运行以下命令,检验存储数据库到 Solaris 9 设备 ID 的迁移是否成功:
# scdidadm -c |
您的配置是否使用双串调解器用于 Solstice DiskSuite/Solaris Volume Manager?
如果否,则继续执行步骤 15。
如果是,则恢复调解器配置。
如果没有升级,请继续执行步骤 16。
如果进行了升级,则升级所有磁盘组。
要将磁盘组升级到您安装的 xVxVM 版本支持的最高版本,请从磁盘组的主节点运行以下命令:
# vxdg upgrade dgname |
有关升级磁盘组的详细信息,请参阅 xVxVM 管理文档。
以下示例说明了双节点群集在 Solaris 8 操作环境中从 Sun Cluster 3.0 到 Sun Cluster 3.1 4/04 软件的非轮询升级过程。 群集节点的名称为 phys-schost-1 和 phys-schost-2。
(在第一个节点上,从 Sun Java Enterprise System 2004Q2 2 of 2 CD-ROM 升级框架软件) phys-schost-1# cd /cdrom/cdrom0/Solaris_sparc/Product/sun_cluster/ \ Solaris_8/Tools phys-schost-1# ./scinstall -u update -S interact (在第一个节点上,从 Java Enterprise System Accessory CD 3 CD-ROM 升级数据服务) phys-schost-1# ./scinstall -u update -s all -d /cdrom/cdrom0 (在第二个节点上,从 Sun Java Enterprise System 2004Q2 2 of 2 CD-ROM 升级框架软件) phys-schost-2# cd /cdrom/cdrom0/Solaris_sparc/Product/sun_cluster/ \ Solaris_8/Tools phys-schost-2# ./scinstall -u update -S interact (在第二个节点上,从 Java Enterprise System Accessory CD 3 CD-ROM 升级数据服务) phys-schost-2# ./scinstall -u update -s all -d /cdrom/cdrom0 (将每个节点重新引导到群集中) phys-schost-1# reboot phys-schost-2# reboot (检验群集成员资格) # scstat -- Cluster Nodes -- Node name Status --------- ------ Cluster node: phys-schost-1 Online Cluster node: phys-schost-2 Online |
执行以下步骤升级 Sun Management Center 服务器、帮助服务器和控制台计算机上的 Sun Cluster 模块软件。
如果仅升级 Sun Management Center 软件,请不要执行此过程。 而应继续执行如何完成到 Sun Cluster 3.1 4/04 软件的升级(非轮询)完成 Sun Cluster 软件升级。 然后转到如何升级 Sun Management Center 软件 升级 Sun Management Center 软件和 Sun Cluster 模块。
作为超级用户,删除现有 Sun Cluster–模块软件包。
使用 pkgrm(1M) 命令从下表中列出的所有位置删除任何 Sun Cluster 模块软件包。
# pkgrm module-package |
位置 |
要删除的模块软件包 |
---|---|
Sun Management Center 控制台机器 |
SUNWscscn |
Sun Management Center 服务器 |
SUNWscssv |
Sun Management Center 帮助服务器 |
SUNWscshl |
在群集框架升级过程中已升级群集节点上的 Sun Cluster 模块软件。
以超级用户身份,从 Sun Java Enterprise System 2004Q2 2 of 2 CD-ROM 中将 Sun Cluster–模块软件包重新安装到下表所列出的各个位置。
在 CD-ROM 路径中,ver 的值为 8(对于 Solaris 8)或 9(对于 Solaris 9)。
# cd /cdrom/cdrom0/Solaris_sparc/Product/sun_cluster/Solaris_ver/Packages/ # pkgadd module-package |
位置 |
要安装的模块软件包 |
---|---|
Sun Management Center 控制台机器 |
SUNWscshl |
Sun Management Center 服务器 |
SUNWscssv |
Sun Management Center 帮助服务器 |
SUNWscshl |
控制台计算机和帮助服务器上都需要安装帮助服务器软件包 SUNWscshl。 不要在控制台计算机上升级到新的 SUNWscscn 软件包。
完成升级。
执行此过程重新注册所有从升级中获得新版本的资源类型,修改合法资源以使用其新版本的资源类型,然后重新启用资源并使资源组再次联机。
要升级到更高版本的资源类型,请参阅 《Sun Cluster 数据服务规划和管理指南(适用于 Solaris OS)》中的 “升级资源类型”。
确保完成了如何升级到 Sun Cluster 3.1 4/04 软件(非轮询)中的所有步骤。
如果升级了非 Sun Java Enterprise System 2004Q2 2 of 2 CD-ROM 或 Java Enterprise System Accessory CD 3 CD-ROM 提供的任何数据服务,则要为这些数据服务注册新的资源类型。
按照数据服务附带的文档进行操作。
从任意节点启动 scsetup(1M) 公用程序。
# scsetup |
注册新的资源类型。
将所有合格资源迁移到其资源类型的新版本。
修改新的资源类型版本的扩展特性。
对于将现有资源迁移到的每种新资源类型,请确定新资源类型是否需要对其扩展特性进行附加修改。
有关各种新资源类型的要求,请参阅各个相关的数据服务手册。
无需更改新资源类型的 Type_version 特性。 在步骤 5 中将资源迁移到新的资源类型时更改了该属性。
从“Change properties of a resource”菜单中选择“Change extension resource properties
”。
按照提示修改必需的扩展特性。
有关要修改的扩展特性的名称和值,请参阅数据服务文档。
对需要修改的每个资源类型重复此操作。
返回“Resource Groups”菜单。
重新启用所有禁用的资源。
从“Resource Group Menu”中选择“Enable/Disable a resource
”。
选择要启用的资源,然后按照提示操作。
对每个禁用的资源重复步骤 b。
所有资源都重新启用之后,键入 q 返回到“Resource Group Menu”。
使每个资源组重新联机。
所有资源组重新联机之后,退出 scsetup 公用程序。
键入 q 退出每个子菜单,或按 Ctrl-C。
群集升级完成。 现在可以恢复群集的使用。