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

进行到 Sun Cluster 3.2 软件的双分区升级

本节提供了以下使用双分区升级方法从 Sun Cluster 3.1 发行版升级到 Sun Cluster 3.2 软件的信息:

下表列出了从 Sun Cluster 3.1 软件升级为 Sun Cluster 3.2 软件所需执行的各项任务。仅需升级 Solaris OS 的版本时,也应执行这些任务。如果要将 Solaris OS 从 Solaris 9 升级到 Solaris 10 软件,还必须将 Sun Cluster 软件及从属软件升级到与新版 Solaris OS 兼容的版本。

表 8–2 任务表:进行到 Sun Cluster 3.2 软件的双分区升级

任务 

参考 

1. 阅读升级要求和限制。根据您的配置和需要确定适当的升级方法。 

升级要求和软件支持指导信息

选择 Sun Cluster 升级方法

2. 将群集划分为两组节点。 

如何为群集做好升级(双分区)准备

3. 如果需要,将 Solaris 软件升级到支持的 Solaris 更新版。如果群集使用用于 Solaris Volume Manager 软件的双串调解器,则取消配置调解器。根据需要升级 VERITAS Volume Manager (VxVM) 和 VERITAS 文件系统 (VxFS)。Solaris Volume Manager 软件会随着 Solaris OS 自动升级。 

如何升级 Solaris OS 和卷管理器软件(双分区)

4. 升级到 Sun Cluster 3.2 框架和数据服务软件。如果需要,升级应用程序。如果群集使用双串调解器并且您升级了 Solaris OS,则应重新配置这些调解器。如果升级了 VxVM,应升级磁盘组。 

如何升级 Sun Cluster 3.2 软件(双分区)

5. 检验是否成功完成到 Sun Cluster 3.2 软件的升级。 

如何检验 Sun Cluster 3.2 软件的升级

6. 启用资源并使资源组联机。将现有资源移植到新的资源类型(此操作可选)。 

如何完成到 Sun Cluster 3.2 软件的升级

7.(可选)SPARC:如果需要,升级用于 Sun Management Center 的 Sun Cluster 模块。

SPARC: 如何升级针对 Sun Management Center 的 Sun Cluster 模块软件

Procedure如何为群集做好升级(双分区)准备

要使群集做好进行双分区升级的准备,请执行以下过程。此过程将两组节点分别称为第一分区和第二分区。升级第一分区中的节点时,分配给第二分区的节点将继续运行群集服务。第一分区中的所有节点升级完成后,需将群集服务切换到第一分区,然后升级第二分区。第二分区中的所有节点升级完成后,应引导这些节点进入群集模式,使其重新加入第一分区中的节点。


注 –

如果要升级单节点群集,请不要使用此升级方法。而应转至如何为群集做好升级(标准)准备如何为群集做好升级(动态升级)准备


在 Solaris 10 OS 上,所有步骤只应在全局区域中执行。

开始之前

请执行以下任务:

  1. 确保群集运行正常。

    1. 从任一节点上运行以下命令,以查看群集的当前状态。


      % scstat
      

      有关更多信息,请参见 scstat(1M) 手册页。

    2. 在位于同一节点的 /var/adm/messages 日志中搜索未解决的错误消息或警告消息。

    3. 检查卷管理器的状态。

  2. 如有必要,请通知用户群集服务在升级过程中可能会暂时中断。

    服务中断时间与正常情况下群集将服务切换至其他节点所花费的时间大致相当。

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

  4. 对于使用 Sun StorEdge Availability Suite 软件或 Sun StorageTek Availability Suite 软件的双节点群集,请确保可用性服务的配置数据驻留在法定磁盘上。

    配置数据必须驻留在法定磁盘上,以确保 Availability Suite 能够在您升级群集软件后正常运行。

    1. 在运行 Availability Suite 软件的群集中,成为某一节点上的超级用户。

    2. 确定 Availability Suite 配置文件所使用的设备 ID 和分片。


      phys-schost# /usr/opt/SUNWscm/sbin/dscfg
      /dev/did/rdsk/dNsS
      

      在此输出示例中,N 为设备 ID,S 为设备 N 的片。

    3. 确定现有的法定设备。


      phys-schost# scstat -q
      -- 按设备计算的法定选票 --
                           设备名称                 现有的    可能的    状态
                           -----------         ------- -------- ------
         设备选票:     /dev/did/rdsk/dQsS  1       1        联机

      在此输出示例中,dQsS 为现有的法定设备。

    4. 如果法定设备与 Availability Suite 配置数据所在设备不是同一设备,请将配置数据移到法定设备的某个可用分片上。


      phys-schost# dd if=`/usr/opt/SUNWesm/sbin/dscfg` of=/dev/did/rdsk/dQsS
      

      注 –

      必须使用原始 DID 设备的名称 /dev/did/rdsk/,而不能使用块 DID 设备的名称 /dev/did/dsk/


    5. 如果移动了配置数据,请配置 Availability Suite 软件以使用新位置。

      在运行 Availability Suite 软件的每个节点上,以超级用户的身份发出以下命令。


      phys-schost# /usr/opt/SUNWesm/sbin/dscfg -s /dev/did/rdsk/dQsS
      
  5. 如果将升级 Solaris OS,并且群集为 Solaris Volume Manager 软件使用了双串调解器,请取消这些调解器的配置。

    有关调解器的更多信息,请参见配置双串调解器

    1. 运行以下命令来检验不存在任何调解器数据问题。


      phys-schost# medstat -s setname
      
      -s setname

      指定磁盘集名称。

      如果“状态”字段中的值为 Bad,则修复受影响的调解器主机。请按照如何修正错误的调解器数据中的过程执行。

    2. 列出所有调解器。

      请保存此信息,以便在执行如何完成到 Sun Cluster 3.2 软件的升级过程期间用来恢复调解器。

    3. 对于使用调解器的磁盘组,如果任何节点都不具有拥有权,请获取磁盘组的拥有权。


      phys-schost# scswitch -z -D setname -h node
      
      -z

      更改控制权。

      -D devicegroup

      指定磁盘集的名称。

      -h node

      指定要成为磁盘集主节点的那个节点的名称。

    4. 取消配置用于磁盘集的所有调解器。


      phys-schost# metaset -s setname -d -m mediator-host-list
      
      -s setname

      指定磁盘集名称。

      -d

      从磁盘集删除。

      -m mediator-host-list

      指定要作为磁盘集的调解器主机进行删除的节点的名称。

      有关 metaset 命令特定于调解器的选项的详细信息,请参见 mediator(7D) 手册页。

    5. 对其余每个使用调解器的磁盘集重复执行步骤 c 至步骤 d。

  6. 如果正在通过版本不低于 4.4 的 Sun Java System Application Server EE (HADB) 软件运行 Sun Cluster HA for Sun Java System Application Server EE (HADB) 数据服务,请禁用 HADB 资源并关闭 HADB 数据库。

    如果正在运行的 Sun Java System Application Server EE (HADB) 软件版本低于 4.4,则可跳过此步骤。

    由于某个群集分区在升级过程中停止运行时,活动分区中的节点数不足以满足 HADB 的成员要求;因此,开始对群集进行分区之前,必须先停止 HADB 数据库并禁用 HADB 资源。


    phys-schost# hadbm stop database-name
    phys-schost# scswitch -n -j hadb-resource
    

    有关更多信息,请参见 hadbm(1m) 手册页。

  7. 如果要升级双节点群集,请跳至步骤 16

    否则,请继续执行步骤 8 以确定要使用的分区方案。首先确定每个分区将包含哪些节点,虽然这会中断分区进程。然后将所有资源组的节点列表与将使用的方案中各分区的节点成员进行比较。如果有任何资源组未包含各分区中的某一成员,则必须更改其节点列表。

  8. 将 Sun Java Availability Suite DVD-ROM 放入 DVD-ROM 驱动器。

    如果卷管理守护进程 vold(1M) 正在运行并且被配置为管理 CD-ROM 或 DVD 设备,则此守护进程会自动在 /cdrom/cdrom0/ 目录中挂载相应的介质。

  9. 切换到 Solaris_arch/Product/sun_cluster/Solaris_ver/Tools/ 目录,其中 archsparcx86 (仅用于 Solaris 10)以及 ver9 代表 Solaris 9 或 10 代表 Solaris 10。


    phys-schost# cd /cdrom/cdrom0/Solaris_arch/Product/sun_cluster/Solaris_ver/Tools
    
  10. 在交互模式下启动 scinstall 实用程序。


    phys-schost# ./scinstall
    

    注 –

    请不要使用节点上已安装的 /usr/cluster/bin/scinstall 命令。必须使用 Sun Java Availability Suite DVD-ROM 上的 scinstall 命令。


    将显示 scinstall 的“主菜单”。

  11. 键入与“管理双分区升级”选项对应的编号,然后按 Return 键。


    *** 主菜单 ***
    
        请选择以下某一带 (*) 的选项:
    
            1) 创建新群集或添加群集节点
            2) 将群集配置为从此安装服务器中快速启动
          * 3) 管理双分区升级
          * 4) 升级此群集节点
          * 5) 打印此群集节点的发行信息
     
          * ?) 菜单选项中的帮助
          * q) 退出
    
        选项:3
    

    将显示“管理双分区升级”菜单。

  12. 键入与“显示并选择可能的分区方案”选项对应的编号,然后按 Return 键。

  13. 根据提示执行以下任务:

    1. 显示可用于您的群集的分区方案。

    2. 选择一个分区方案。

    3. 选择要首先升级哪个分区。


      注 –

      当出现“是否要开始进行双分区升级?”的提示时,请停在此处暂响应,但也不要退出 scinstall 实用程序。将在此过程的步骤 18 中响应该提示。


  14. 记录分区方案中各分区所含的节点。

  15. 在群集中的其他节点上,成为超级用户。

  16. 确保所有重要的数据服务均可在分区之间进行切换。

    对于双节点群集,各节点将成为其分区中的唯一节点。

    当关闭某一分区中的节点以准备进行双分区升级时,在这些节点上托管的资源组将切换到另一分区中的某个节点上。如果一个资源组的节点列表中未包含各分区中的任何节点,则该资源组将无法进行切换。要确保成功切换所有重要的数据服务,请检验相关资源组的节点列表中是否包含各升级分区中的成员。

    1. 对于需要在整个升级过程中一直处于运行状态的每个资源组,显示其节点列表。


      phys-schost# scrgadm -pv -g resourcegroup | grep "Res Group Nodelist"
      
      -p

      显示配置信息。

      -v

      以详细模式显示。

      -g resourcegroup

      指定资源组的名称。

    2. 如果资源组的节点列表内未包含各分区中的成员(每个分区至少一个),请重新定义节点列表,以将各分区的成员作为潜在主节点包含在内。


      phys-schost# scrgadm -a -g resourcegroup -h nodelist
      
      -a

      添加新配置。

      -h

      指定以逗号分隔的节点名称列表。

  17. 确定下一步的操作。

    • 如果要升级双节点群集,请返回步骤 8步骤 13 以指定分区方案和升级顺序。

      当看到提示“是否要开始进行双分区升级?”时,请跳至步骤 18

    • 如果要升级具有三个或更多节点的群集,请返回到正在运行交互式 scinstall 实用程序的节点。

      继续执行步骤 18

  18. 当交互式 scinstall 显示“是否要开始进行双分区升级?”的提示时,请键入 Yes

    该命令将检验远程安装方法是否可用。

  19. 当出现提示时,请按 Enter 键继续进行双分区升级的各阶段准备工作。

    该命令会将资源组切换到第二分区中的节点上,然后关闭第一分区中的各个节点。

  20. 关闭第一分区中的所有节点之后,将该分区中的各节点引导进入非群集模式。

    • 在基于 SPARC 的系统中,执行以下命令:


      ok boot -x
      
    • 在运行 Solaris 9 OS 的基于 x86 的系统上,执行以下任一命令:


      phys-schost# reboot -- -xs
      
      ...
                            <<< Current Boot Parameters >>>
      Boot path: /pci@0,0/pci-ide@7,1/ata@1/cmdk@0,0:b
      Boot args:
      
      Type  b [file-name] [boot-flags] <ENTER>  to boot with options
      or    i <ENTER>                           to enter boot interpreter
      or    <ENTER>                             to boot with defaults
      
                        <<< timeout in 5 seconds >>>
      Select (b)oot or (i)nterpreter: b -xs
      
    • 在基于 x86 且正在运行 Solaris 10 OS 的系统中,执行以下命令:

      1. 在 GRUB 菜单中,使用方向键选择适当的 Solaris 条目,然后键入 e 编辑其命令。

        GRUB 菜单显示如下内容:


        GNU GRUB version 0.95 (631K lower / 2095488K upper memory)
        +-------------------------------------------------------------------------+
        | Solaris 10 /sol_10_x86                                                  |
        | Solaris failsafe                                                        |
        |                                                                         |
        +-------------------------------------------------------------------------+
        Use the ^ and v keys to select which entry is highlighted.
        Press enter to boot the selected OS, 'e' to edit the
        commands before booting, or 'c' for a command-line.

        有关基于 GRUB 进行引导的更多信息,请参见《System Administration Guide: Basic Administration》中的第 11  章 “GRUB Based Booting (Tasks)”

      2. 在引导参数屏幕中,使用方向键选择 kernel 条目,然后键入 e 编辑该条目。

        GRUB 引导参数屏幕的显示与以下内容类似:


        GNU GRUB version 0.95 (615K lower / 2095552K upper memory)
        +----------------------------------------------------------------------+
        | root (hd0,0,a)                                                       |
        | kernel /platform/i86pc/multiboot                                     |
        | module /platform/i86pc/boot_archive                                  |
        +----------------------------------------------------------------------+
        Use the ^ and v keys to select which entry is highlighted.
        Press 'b' to boot, 'e' to edit the selected command in the
        boot sequence, 'c' for a command-line, 'o' to open a new line
        after ('O' for before) the selected line, 'd' to remove the
        selected line, or escape to go back to the main menu.
      3. 在命令中添加 -x 以指定将系统引导至非群集模式。


        [ Minimal BASH-like line editing is supported. For the first word, TAB
        lists possible command completions. Anywhere else TAB lists the possible
        completions of a device/filename. ESC at any time exits. ]
        
        grub edit> kernel /platform/i86pc/multiboot -x
        
      4. 按 Enter 键接受更改,并返回到引导参数屏幕。

        屏幕将显示编辑后的命令。


        GNU GRUB version 0.95 (615K lower / 2095552K upper memory)
        +----------------------------------------------------------------------+
        | root (hd0,0,a)                                                       |
        | kernel /platform/i86pc/multiboot -x                                  |
        | module /platform/i86pc/boot_archive                                  |
        +----------------------------------------------------------------------+
        Use the ^ and v keys to select which entry is highlighted.
        Press 'b' to boot, 'e' to edit the selected command in the
        boot sequence, 'c' for a command-line, 'o' to open a new line
        after ('O' for before) the selected line, 'd' to remove the
        selected line, or escape to go back to the main menu.-
      5. 键入 b 将节点引导至非群集模式。


        注 –

        对内核引导参数命令所做的这一更改在系统引导后将失效。下次重新引导节点时,系统将引导至群集模式。如果希望引导至非群集模式,请再次执行上述步骤,将 -x 选项添加到 kernel 引导参数命令中。


  21. 如果第二分区中正在运行的任何应用程序不受 资源组管理器 (RGM) 的控制,则在开始升级该分区的节点之前,请先创建脚本来停止这些应用程序。

    在进行双分区升级的过程中,应先调用这些脚本来停止诸如 Oracle RAC 之类的应用程序,然后再停止第二分区中的节点。

    1. 创建用于停止不受 RGM 控制的应用程序所需的脚本。

      • 对于受 RGM 控制的应用程序,请依据它们的停止时间,分别为要在此前停止的那些应用程序和要在此后停止的那些应用程序创建不同的脚本。

      • 要停止分区中多个节点上正在运行的应用程序,请编写相应的脚本。

      • 可根据个人意愿为脚本使用任何名称和目录路径。

    2. 确保群集中的每个节点本地上都有脚本副本。

    3. 在每个节点上,修改以下 Sun Cluster 脚本来调用在该节点上放置的脚本。

      • /etc/cluster/ql/cluster_pre_halt_apps - 此文件用于调用您希望在关闭受 RGM 控制的应用程序之前运行的那些脚本。

      • /etc/cluster/ql/cluster_post_halt_apps - 此文件用于调用您希望在关闭受 RGM 控制的应用程序之后运行的那些脚本。

      由于 Sun Cluster 脚本将在分区的升级后处理过程中从分区内的任意一个节点上发出,因此,必须确保分区中任一节点上的脚本都可以为分区中的所有节点执行必要的操作。

接下来的操作

升级第一分区中各节点上的软件。

Procedure如何升级 Solaris OS 和卷管理器软件(双分区)

请在群集中的每个节点上执行以下过程来升级 Solaris OS。在 Solaris 10 OS 上,所有步骤只应在全局区域中执行。如果群集已经是在支持 Sun Cluster 3.2 软件的 Solaris OS 版本上运行,则进一步升级 Solaris OS 为可选操作。如果不打算升级 Solaris OS,请继续执行如何升级 Sun Cluster 3.2 软件(标准)


注 –

为了支持到 Sun Cluster 3.2 软件的升级,群集已运行的或将升级到的 Solaris OS 版本决不能低于所要求的最低级别。有关更多信息,请参见《Sun Cluster 3.2 发行说明(适用于 Solaris OS)》中的 "Supported Products"。


开始之前

确保已完成了如何为群集做好升级(标准)准备包含的所有步骤。

  1. 成为要进行升级的群集节点上的超级用户。

    此节点必须是处于非群集模式的分区中的成员。

  2. 如果安装了 Sun Cluster Geographic Edition 软件,请将其卸载。

    有关卸载过程,请参见您的 Sun Cluster Geographic Edition 软件版本所对应的文档。

  3. 确定以下 Apache 运行控制脚本是否存在,以及如果存在,是处于启用状态还是禁用状态:


    /etc/rc0.d/K16apache
    /etc/rc1.d/K16apache
    /etc/rc2.d/K16apache
    /etc/rc3.d/S50apache
    /etc/rcS.d/K16apache

    某些应用程序(例如 Sun Cluster HA for Apache)要求禁用 Apache 运行控制脚本。

    • 如果这些脚本存在,并且文件名中包含一个大写的 KS,则说明它们已启用。不需要对这些脚本进行进一步的操作。

    • 如果这些脚本不存在,则执行步骤 8 时必须确保禁用在 Solaris OS 升级过程中安装的所有 Apache 运行控制脚本。

    • 如果这些脚本存在,但文件名中包含一个小写的 ks,则说明它们已禁用。执行步骤 8 时必须确保禁用在 Solaris OS 升级过程中安装的所有 Apache 运行控制脚本。

  4. 在节点的 /etc/vfstab 文件中注释掉全局挂载文件系统的所有条目。

    1. 为供以后参考,请记录已注释掉的所有条目。

    2. 暂时将 /etc/vfstab 文件中有关全局挂载文件系统的所有条目注释掉。

      全局装载的文件系统的条目包括 global 装载选项。注释掉这些条目可防止 Solaris 升级程序装载全局设备。

  5. 确定升级 Solaris OS 要遵循的过程。

    卷管理器 

    过程 

    说明的位置 

    Solaris Volume Manager 

    动态升级方法之外的任一 Solaris 升级方法

    Solaris 安装文档 

    VERITAS Volume Manager 

    “升级 VxVM 和 Solaris” 

    VERITAS Volume Manager 安装文档 


    注 –

    如果群集中安装了 VxVM,则作为 Solaris 升级过程的一部分,必须重新安装现有的 VxVM 软件或升级到 Solaris 9 或 10 版本的 VxVM 软件。


  6. 按照在步骤 5 中选择的过程升级 Solaris 软件。

    1. 出现提示时,选择手动重新引导选项。

    2. 提示您重新引导时,务必要重新引导到非群集模式下。


      注 –

      请勿在 Solaris 软件升级时执行最终重新引导指令。而是可以按照下述步骤进行操作:

      1. 返回到此过程,执行步骤 7步骤 8

      2. 步骤 9 中重新引导进入非群集模式,以完成 Solaris 软件升级。


      在 Solaris 升级过程中,执行以下命令将节点引导进入非群集模式:

      • 在基于 SPARC 的系统上,执行以下命令中的任何一个:


        phys-schost# reboot -- -xs
        
        ok boot -xs
        

        如果指示您运行 init S 命令,请使用 reboot -- -xs 命令。

      • 在基于 x86 的系统上,执行以下命令:


        phys-schost# shutdown -g -y -i0
        
        Press any key to continue
        1. 在 GRUB 菜单中,使用方向键选择适当的 Solaris 条目,然后键入 e 编辑其命令。

          GRUB 菜单显示如下内容:


          GNU GRUB version 0.95 (631K lower / 2095488K upper memory)
          +-------------------------------------------------------------------------+
          | Solaris 10 /sol_10_x86                                                  |
          | Solaris failsafe                                                        |
          |                                                                         |
          +-------------------------------------------------------------------------+
          Use the ^ and v keys to select which entry is highlighted.
          Press enter to boot the selected OS, 'e' to edit the
          commands before booting, or 'c' for a command-line.

          有关基于 GRUB 进行引导的更多信息,请参见《System Administration Guide: Basic Administration》中的第 11  章 “GRUB Based Booting (Tasks)”

        2. 在引导参数屏幕中,使用方向键选择 kernel 条目,然后键入 e 编辑该条目。

          GRUB 引导参数屏幕的显示与以下内容类似:


          GNU GRUB version 0.95 (615K lower / 2095552K upper memory)
          +----------------------------------------------------------------------+
          | root (hd0,0,a)                                                       |
          | kernel /platform/i86pc/multiboot                                     |
          | module /platform/i86pc/boot_archive                                  |
          +----------------------------------------------------------------------+
          Use the ^ and v keys to select which entry is highlighted.
          Press 'b' to boot, 'e' to edit the selected command in the
          boot sequence, 'c' for a command-line, 'o' to open a new line
          after ('O' for before) the selected line, 'd' to remove the
          selected line, or escape to go back to the main menu.
        3. 在命令中添加 -x 以指定将系统引导至非群集模式。


          [ Minimal BASH-like line editing is supported. For the first word, TAB
          lists possible command completions. Anywhere else TAB lists the possible
          completions of a device/filename. ESC at any time exits. ]
          
          grub edit> kernel /platform/i86pc/multiboot -x
          
        4. 按 Enter 键接受更改,并返回到引导参数屏幕。

          屏幕将显示编辑后的命令。


          GNU GRUB version 0.95 (615K lower / 2095552K upper memory)
          +----------------------------------------------------------------------+
          | root (hd0,0,a)                                                       |
          | kernel /platform/i86pc/multiboot -x                                  |
          | module /platform/i86pc/boot_archive                                  |
          +----------------------------------------------------------------------+
          Use the ^ and v keys to select which entry is highlighted.
          Press 'b' to boot, 'e' to edit the selected command in the
          boot sequence, 'c' for a command-line, 'o' to open a new line
          after ('O' for before) the selected line, 'd' to remove the
          selected line, or escape to go back to the main menu.-
        5. 键入 b 将节点引导至非群集模式。


          注 –

          对内核引导参数命令所做的这一更改在系统引导后将失效。下次重新引导节点时,系统将引导至群集模式。如果希望引导至非群集模式,请再次执行上述步骤,将 -x 选项添加到 kernel 引导参数命令中。


        如果指示您运行 init S 命令,请关闭系统,然后将 GRUB kernel 引导命令改为 /platform/i86pc/multiboot -sx

  7. /a/etc/vfstab 文件中,取消注释您在步骤 4 中注释掉的那些全局挂载文件系统条目。

  8. 如果在升级 Solaris 操作系统之前已禁用 Apache 运行控制脚本或其不存在,请确保禁用在 Solaris 升级期间安装的所有脚本。

    要禁用 Apache 运行控制脚本,请运行以下命令用小写的 ks 来重命名各文件。


    phys-schost# mv /a/etc/rc0.d/K16apache /a/etc/rc0.d/k16apache 
    phys-schost# mv /a/etc/rc1.d/K16apache /a/etc/rc1.d/k16apache
    phys-schost# mv /a/etc/rc2.d/K16apache /a/etc/rc2.d/k16apache
    phys-schost# mv /a/etc/rc3.d/S50apache /a/etc/rc3.d/s50apache
    phys-schost# mv /a/etc/rcS.d/K16apache /a/etc/rcS.d/k16apache
    

    或者,可以按照正常的管理做法重命名这些脚本以使其一致。

  9. 将节点重新引导为非群集模式。

    • 在基于 SPARC 的系统上,执行以下命令。

      在命令中包含长破折号 (--):


      phys-schost# reboot -- -x
      
    • 在基于 x86 的系统上,执行步骤 6 中介绍的关机过程和引导过程,但要在 kernel 引导命令中添加 -x,而不是 -sx

  10. 如果群集运行 VxVM,请执行“升级 VxVM 和 Solaris”过程中的其余步骤来重新安装或升级 VxVM。

    对该过程进行以下更改:

    • 在完成 VxVM 升级之后、重新引导之前,请检验 /etc/vfstab 文件中的条目。

      如果在步骤 7 中取消注释的任何条目又被注释掉,请再次取消对这些条目的注释。

    • 当 VxVM 过程提示您执行最终重新配置重新引导时,请勿使用 -r 选项。请使用 -rx 选项重新引导为非群集模式。

      • 在基于 SPARC 的系统中,执行以下命令:


        phys-schost# reboot -- -rx
        
      • 在基于 x86 的系统上,执行步骤 6 中介绍的关机过程和引导过程,但要在 kernel 引导命令中添加 -rx,而不是 -sx


    注 –

    如果您看到类似以下内容的消息,请键入 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
    

  11. (可选的)SPARC:升级 VxFS。

    按照 VxFS 文档中提供的过程进行操作。

  12. 安装任何所需的 Solaris 软件修补程序和与硬件相关的修补程序,并下载硬件修补程序中所包含的任何所需固件。


    注 –

    在添加了修补程序之后不要重新引导。等待到升级 Sun Cluster 软件之后重新引导节点。


    有关修补程序和安装说明所在的位置,请参见《Sun Cluster 3.2 发行说明(适用于 Solaris OS)》中的“修补程序和所需的固件级别”

接下来的操作

升级到 Sun Cluster 3.2 软件。请转至如何升级 Sun Cluster 3.2 软件(双分区)


注 –

要完成到新的 Solaris OS 销售发行版的升级(如从 Solaris 9 升级到 Solaris 10 软件),还必须将 Sun Cluster 软件和从属软件升级到与新版 Solaris OS 兼容的版本。


Procedure如何升级 Sun Cluster 3.2 软件(双分区)

执行此过程将群集的每个节点都升级到 Sun Cluster 3.2 软件。此过程还会升级所需的 Sun Java Enterprise System 共享组件。升级到其他的 Solaris OS 销售发行版(如从 Solaris 9 升级到 Solaris 10 软件)后,也必须执行此过程。

在 Solaris 10 OS 上,所有步骤只应在全局区域中执行。


提示 –

可以同时在分区中的多个节点上执行此过程。


开始之前

请执行以下任务:

  1. 在一节点上成为超级用户,该节点应该是处于非群集模式的分区中的成员。

  2. 确保 /usr/java/ 目录为指向最低或最新版本的 Java 软件的符号链接。

    Sun Cluster 软件要求 Java 软件的版本不低于 1.5.0_06。如果升级后的 Solaris 版本安装的是较低的 Java 版本,则升级过程可能已将符号链接更改为指向不符合 Sun Cluster 3.2 软件最低要求的 Java 版本。

    1. 确定 /usr/java/ 目录的符号链接指向的目录。


      phys-schost# ls -l /usr/java
      lrwxrwxrwx   1 root   other    9 Apr 19 14:05 /usr/java -> /usr/j2se/
    2. 确定安装了哪个或哪些版本的 Java 软件。

      下面是一些命令示例,这些命令可用于显示相关 Java 软件的版本。


      phys-schost# /usr/j2se/bin/java -version
      phys-schost# /usr/java1.2/bin/java -version
      phys-schost# /usr/jdk/jdk1.5.0_06/bin/java -version
      
    3. 如果未将 /usr/java/ 目录符号链接到受支持的 Java 软件版本,请重新创建链接到受支持的 Java 软件版本的符号链接。

      以下示例显示了为包含 Java 1.5.0_06 软件的 /usr/j2se/ 目录创建符号链接的过程。


      phys-schost# rm /usr/java
      phys-schost# ln -s /usr/j2se /usr/java
      
  3. 将 Sun Java Availability Suite DVD-ROM 放入 DVD-ROM 驱动器。

    如果卷管理守护进程 vold(1M) 正在运行并且被配置为管理 CD-ROM 或 DVD 设备,则此守护进程会自动在 /cdrom/cdrom0/ 目录中挂载相应的介质。

  4. 更改到 DVD-ROM 的 安装向导 目录。

    • 如果是在 SPARC 平台上安装软件包,请键入以下命令:


      phys-schost# cd /cdrom/cdrom0//Solaris_sparc
      
    • 如果是在 x86 平台上安装软件包,请键入以下命令:


      phys-schost# cd /cdrom/cdrom0//Solaris_x86
      
  5. 启动 安装向导 程序。


    phys-schost# ./installer
    
  6. 按照屏幕上的说明在节点上选择并升级共享组件软件包。


    注 –

    不要使用安装向导程序来升级 Sun Cluster 软件包。


    安装向导 程序将显示安装的状态。当安装完成时,程序会显示安装摘要和安装日志。

  7. 退出 安装向导 程序。

  8. 切换到 Solaris_arch/Product/sun_cluster/Solaris_ver/Tools/ 目录,其中 archsparcx86 (仅用于 Solaris 10)以及 ver9 代表 Solaris 9 或 10 代表 Solaris 10。


    phys-schost# cd /cdrom/cdrom0/Solaris_arch/Product/sun_cluster/Solaris_ver/Tools
    
  9. 启动 scinstall 实用程序。


    phys-schost# ./scinstall
    

    注 –

    请不要使用节点上已安装的 /usr/cluster/bin/scinstall 命令。必须使用 Sun Java Availability Suite DVD-ROM 中的 scinstall 命令。


    将显示 scinstall 的“主菜单”。

  10. 键入与“升级此群集节点”选项对应的编号,然后按 Return 键。


     *** 主菜单 ***
    
        请选择以下某一带 (*) 的选项:
    
          * 1) 创建新群集或添加群集节点
            2) 将群集配置为从此安装服务器中快速启动
            3) 管理双分区升级
            4) 升级此群集节点
          * 5) 打印此群集节点的发行信息
     
          * ?) 菜单选项中的帮助
          * q) 退出
    
        选项: 4
    

    将显示“升级菜单”。

  11. 键入与“升级此节点上的 Sun Cluster 框架”选项对应的编号,然后按 Return 键。

  12. 按照菜单提示升级群集框架。

    在 Sun Cluster 的升级过程中,scinstall 可能会进行以下一项或多项配置更改:

    当系统显示“完成 Sun Cluster 框架升级”消息并提示您按 Enter 键继续时,即表示升级过程已完成。

  13. 退出 scinstall 实用程序。

  14. 从 DVD-ROM 驱动器中取出 Sun Java Availability Suite DVD-ROM。

    1. 要确保 DVD-ROM 不在使用,更改到属于 DVD-ROM 的目录。

    2. 弹出 DVD-ROM。


      phys-schost# eject cdrom
      
  15. 升级数据服务软件包。

    必须将所有数据服务升级为 Sun Cluster 3.2 版本。


    注 –

    对于 Sun Cluster HA for SAP Web Application Server,如果您正在使用 J2EE 引擎资源或 Web 应用服务器组件资源或者正在同时使用此二者,则必须删除该资源然后用新的 Web 应用服务器组件资源来重新创建它。新的 Web 应用服务器组件资源的更改包含了 J2EE 功能的集成。有关更多信息,请参见《Sun Cluster Data Service for SAP Web Application Server Guide for Solaris OS》


    1. 启动升级后的交互式 scinstall 实用程序。


      phys-schost# /usr/cluster/bin/scinstall
      

      注 –

      请不要使用安装介质上的 scinstall 实用程序来升级数据服务软件包。


      将显示 scinstall 的“主菜单”。

    2. 键入与“升级此群集节点”选项对应的编号,然后按 Return 键。

      将显示“升级菜单”。

    3. 键入与“升级此节点上的 Sun Cluster 数据服务代理”选项对应的编号,然后按 Return 键。

    4. 按照菜单提示升级节点上安装的 Sun Cluster 数据服务代理。

      可以从可用于升级的数据服务列表中选择要升级的数据服务或者选择升级所有已安装的数据服务。

      当系统显示“已完成 Sun Cluster 数据服务代理升级”消息并提示您按 Enter 键继续时,即表示升级过程已完成。

    5. 请按 Enter 键。

      将显示“升级菜单”。

  16. 退出 scinstall 实用程序。

  17. 如果在具有高可用性的本地文件系统上配置了 Sun Cluster HA for NFS,请确保禁用回送文件系统 (Loopback File System, LOFS)。


    注 –

    如果配置了非全局区域,则 LOFS 必须保持启用状态。有关使用 LOFS 的指导信息以及它的各种禁用方法,请参见群集文件系统


    从 Sun Cluster 3.2 发行版开始,默认情况下进行 Sun Cluster 软件的安装或升级过程中将不再禁用 LOFS。要禁用 LOFS,请确保 /etc/system 文件中包含以下条目:


    exclude:lofs

    下次重新引导系统时,此更改将生效。

  18. 如果需要,手动升级不是产品介质上提供的任何定制数据服务。

  19. 检验是否已成功安装每个数据服务更新。

    查看在升级输出消息结束时提到的升级日志文件。

  20. 安装所有的 Sun Cluster 3.2 框架和数据服务软件修补程序。

    有关修补程序和安装说明所在的位置,请参见《Sun Cluster 3.2 发行说明(适用于 Solaris OS)》中的“修补程序和所需的固件级别”

  21. 升级群集上安装的软件应用程序。

    确保应用程序的级别与当前版本的 Sun Cluster 和 Solaris 软件兼容。有关安装说明,请参阅您的应用程序文档。

  22. 完成对分区中所有节点的升级之后,应用升级更改。

    1. 从正在进行升级的分区中的某一节点上,启动交互式 scinstall 实用程序。


      phys-schost# /usr/cluster/bin/scinstall
      

      注 –

      不要使用安装介质中的 scinstall 命令。只应使用群集节点上的 scinstall 命令。


      将显示 scinstall 的“主菜单”。

    2. 键入与“将双分区升级更改应用到该分区”选项对应的编号,然后按 Return 键。

    3. 按照提示继续进行各阶段的升级处理过程。

      该命令将根据运行它的具体分区执行以下任务:

      • 第一分区 - 该命令将停止第二分区中的每个节点(每次停止一个节点)。停止一个节点时,如果相关资源组的节点列表中包含第一分区内的节点,则该节点上的所有服务都将自动切换到第一分区中的节点上。待停止第二分区中的所有节点后,第一分区中的节点会被引导进入群集模式,并接管已有的群集服务。

      • 第二分区 - 该命令会将第二分区中的节点引导进入群集模式,以加入由第一分区组成的活动群集。待所有节点均重新加入群集后,该命令将执行最终处理过程,并报告升级的状态。

    4. 如果 scinstall 实用程序仍在运行,请退出该程序。

    5. 如果完成了对第一分区的升级,请执行以下子步骤以使第二分区做好升级前的准备。

      反之,如果完成了对第二分区的升级,请继续执行如何检验 Sun Cluster 3.2 软件的升级

      1. 将第二分区中的各节点引导进入非群集模式。

        • 在基于 SPARC 的系统中,执行以下命令:


          ok boot -x
          
        • 在基于 x86 的系统中,执行以下命令:

          1. 在 GRUB 菜单中,使用方向键选择适当的 Solaris 条目,然后键入 e 编辑其命令。

            GRUB 菜单显示如下内容:


            GNU GRUB version 0.95 (631K lower / 2095488K upper memory)
            +-------------------------------------------------------------------------+
            | Solaris 10 /sol_10_x86                                                  |
            | Solaris failsafe                                                        |
            |                                                                         |
            +-------------------------------------------------------------------------+
            Use the ^ and v keys to select which entry is highlighted.
            Press enter to boot the selected OS, 'e' to edit the
            commands before booting, or 'c' for a command-line.

            有关基于 GRUB 进行引导的更多信息,请参见《System Administration Guide: Basic Administration》中的第 11  章 “GRUB Based Booting (Tasks)”

          2. 在引导参数屏幕中,使用方向键选择 kernel 条目,然后键入 e 编辑该条目。

            GRUB 引导参数屏幕的显示与以下内容类似:


            GNU GRUB version 0.95 (615K lower / 2095552K upper memory)
            +----------------------------------------------------------------------+
            | root (hd0,0,a)                                                       |
            | kernel /platform/i86pc/multiboot                                     |
            | module /platform/i86pc/boot_archive                                  |
            +----------------------------------------------------------------------+
            Use the ^ and v keys to select which entry is highlighted.
            Press 'b' to boot, 'e' to edit the selected command in the
            boot sequence, 'c' for a command-line, 'o' to open a new line
            after ('O' for before) the selected line, 'd' to remove the
            selected line, or escape to go back to the main menu.
          3. 在命令中添加 -x 以指定将系统引导至非群集模式。


            [ Minimal BASH-like line editing is supported. For the first word, TAB
            lists possible command completions. Anywhere else TAB lists the possible
            completions of a device/filename. ESC at any time exits. ]
            
            grub edit> kernel /platform/i86pc/multiboot -x
            
          4. 按 Enter 键接受更改,并返回到引导参数屏幕。

            屏幕将显示编辑后的命令。


            GNU GRUB version 0.95 (615K lower / 2095552K upper memory)
            +----------------------------------------------------------------------+
            | root (hd0,0,a)                                                       |
            | kernel /platform/i86pc/multiboot -x                                  |
            | module /platform/i86pc/boot_archive                                  |
            +----------------------------------------------------------------------+
            Use the ^ and v keys to select which entry is highlighted.
            Press 'b' to boot, 'e' to edit the selected command in the
            boot sequence, 'c' for a command-line, 'o' to open a new line
            after ('O' for before) the selected line, 'd' to remove the
            selected line, or escape to go back to the main menu.-
          5. 键入 b 将节点引导至非群集模式。


            注 –

            对内核引导参数命令所做的这一更改在系统引导后将失效。下次重新引导节点时,系统将引导至群集模式。如果希望引导至非群集模式,请再次执行上述步骤,将 -x 选项添加到 kernel 引导参数命令中。


      2. 升级第二分区中的节点。

        如果进行 Sun Cluster 软件的升级之前要升级 Solaris 软件,请转至如何升级 Solaris OS 和卷管理器软件(双分区)

        否则,升级第二分区中的 Sun Cluster 软件。返回到步骤 1

接下来的操作

请转至如何检验 Sun Cluster 3.2 软件的升级

故障排除

如果在双分区升级过程中遇到不可修复的错误,请执行如何从失败的双分区升级中恢复中介绍的恢复过程。