Sun Cluster 3.0 系统管理指南

第 7 章 修补 Sun Cluster 软件和固件

本章提供添加和移除 Sun Cluster 配置的过程。

以下是本章中的过程的列表。

7.1 Sun Cluster 修补概述

由于群集的特性,所有的群集节点都必须处于同一修补级别,才能正确进行群集操作。使用 一个 Sun Cluster 特定的修补程序修补一个节点时,您可能需要在安装修补程序前从群集成员关系中 临时移除一个节点,或停止整个群集。本节描述这些步骤。

在应用 Sun Cluster 修补程序前,首先检查 Sun Cluster web 页,看是否有任何特殊的 说明;关于当前的 URL,请参见 Sun Cluster 3.0 发行说明 或与 Enterprise Services 部门 联系。如果没有任何特殊的说明,请查看修补程序的的 README 文件。


注意:

对于 Sun Cluster 特定的修补程序,总是要从修补程序 的 README 文件查找可替代本章中的过程的说明。


各群集节点上修补程序的安装分为以下几咱情况:


注意:

基础群集协议不会因修补程序而更改。


您使用 patchadd 命令将修补程序应用到群集中,使 用 patchrm 来移除一个修补程序(在可能时)。

7.1.1 Sun Cluster 修补提示

利用下列提示可帮助您更有效地管理 Sun Cluster 修补程序:

7.2 修补 Sun 群集

表 7-1 任务图:修补群集

任务 

有关说明,请转到... 

每次将一个非重新引导 Sun Cluster 修补程序应用到一个节点,不必关闭节点。 

"7.2.3 如何应用非重新引导 Sun Cluster 修补程序"

使群集成员进入非群集模式后应用一个重新引导 Sun Cluster 修补程序。 

"7.2.1 如何应用重新引导修补程序(节点)"

 

"7.2.2 如何应用重新引导修补程序(群集和固件)"

移除一个 Sun Cluster 修补程序。 

- 如有必要,可以撤出修补程序。 

"7.2.4 如何移除 Sun Cluster 修补程序"

7.2.1 如何应用重新引导修补程序(节点)

每次将修补程序应用到群集中的一个节点,使群集本身在修补进程中保持运行状态。对于此 过程,您必须首先关闭该节点,并将它引导到单用户模式,然后才能应用修补程序。

  1. 在应用修补程序前,从 Sun Cluster 产品 web 页中查找任何特殊的安装前或安装后说明。

  2. 成为您要应用修补程序的节点上的超级用户。

  3. 列出要修补的节点上的资源组和设备组。


    # scrgadm -pv
    # scstat
    
  4. 将所有的资源组、资源和设备组从要修补的节点切换到其他群集成员。


    # scswitch -S -h node 
    
    -h node

    指定将资源组和设备组切换到哪个节点。

    -S

    从指定的节点撤出所有的设备服务和资源组。

  5. 关闭节点。


    # shutdown -g 0 [-y]
    -g 0

    将关闭宽延期指定为零。

    -y

    指定对确认提示回答 yes,从而使命令可以在不受用户干预的情况下运行。

  6. 以单用户模式引导节点。


    ok boot -s
    
  7. 应用修补程序。


    # patchadd patch-dir patch-id
    
    patch-dir

    指定修补程序的目录位置。

    patch-id

    指定一个给定的修补程序的修补程序号。

  8. 将节点重新引导到群集中。


    # reboot
    
  9. 检验修补程序的安装是否成功。


    # showrev -p | grep patch-id
    
  10. 检验修补程序有效,并且节点和群集正常运行。

  11. 将所有的资源组、资源和设备组切换回去(可选)。


    # scswitch -S -h node
    
  12. 对于所有尚在运行的群集节点,重复 从步骤 2步骤 11的操作。

7.2.1.1 示例-应用重新引导修补程序(节点)

以下示例展示将一个重新引导 Sun Cluster 修补程序应用到一个节点。


# scrgadm -pv
...
RG Name: schost-sa-1
...
# scstat
...
Device Group Name:																				dg-schost-1
...
# scswitch -z -h phys-schost-2 -D dg-schost-1
# scswitch -z -h phys-schost-2 -g schost-sa-1
# shutdown -g 0 -y
...
ok boot -s
...
# patchadd 10-34567
...
# reboot
...
# showrev -p | grep 10-34567
# scswitch -z -h phys-schost-1 -D dg-schost-1
# scswitch -z -h phys-schost-1 -g schost-sa-1

7.2.1.2 从此处可转到何处

如果您需要撤出一个修补程序,请参见 "7.2.4 如何移除 Sun Cluster 修补程序"

7.2.2 如何应用重新引导修补程序(群集和固件)

对于此过程,您必须首先关闭群集,并将每个节点引导到单用户模式,然后才能应用修补 程序。

  1. 在应用修补程序前,从 Sun Cluster 产品 web 页中查找任何特殊的安装前或安装后说明。

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

  3. 关闭群集。


    # scshutdown [-y] [-g grace-period] ["message"]
    -y

    指定对确认提示回答 yes

    -g grace-period

    指定关闭前等待的时间,以秒为单位。缺省宽延期为 60 秒。

    message

    指定要广播的警告消息。如 果 message 中包含多个单词,请使用引号。

  4. 将每个节点引导到单用户模式。

    在每个节点的控制台上,运行以下命令。


    ok boot -s
    
  5. 应用软件或固件修补程序。

    每次在一个节点上运行以下命令。


    # patchadd patch-dir patch-id
    
    patch-dir

    指定修补程序的目录位置。

    patch-id

    指定一个给定的修补程序的修补程序号。


    注意:

    每次都要按照修补程序目录中的、可替代本章中的过程的说明操作。


  6. 检验每个节点上的修补程序的安装是否成功。


    # showrev -p | grep patch-id
    
  7. 在将修补程序应用到所有节点后,重新将节点引导到群集中。

    在每个节点上运行以下命令。


    # reboot
    
  8. 检验修补程序有效,并且节点和群集正常运行。

7.2.2.1 示例-应用重新引导修补程序(群集)

以下示例展示将一个重新引导 Sun Cluster 修补程序应用到一个群集。


# scshutdown -g 0 -y
...
ok boot -s
...
# patchadd 10-34567
(Apply patch to other cluster nodes)
...
# showrev -p | grep 10-34567
# reboot

7.2.2.2 从此处可转到何处

如果您需要撤出一个修补程序,请参见 "7.2.4 如何移除 Sun Cluster 修补程序"

7.2.3 如何应用非重新引导 Sun Cluster 修补程序

每次将修补程序应用到群集中的一个节点。应用一个非重新引导修补程序时,不需要首先关闭 接收此修补程序的节点。

  1. 在应用修补程序前,从 Sun Cluster 产品 web 页中查找任何特殊的安装前或安装后说明。

  2. 在单独一个节点上应用该修补程序。


    # patchadd patch-dir patch-id
    
    patch-dir

    指定修补程序的目录位置。

    patch-id

    指定一个给定的修补程序的修补程序号。

  3. 检验修补程序的安装是否成功。


    # showrev -p | grep patch-id
    
  4. 检验修补程序有效,并且节点和群集正常运行。

  5. 对于所有尚在运行的群集节点,重复 从步骤 2步骤 4的操作。

7.2.3.1 示例-应用非重新引导 Sun Cluster 修补程序


# patchadd 10-34567
...
# showrev -p | grep 10-34567

7.2.3.2 从此处可转到何处

如果您需要撤出一个修补程序,请参见 "7.2.4 如何移除 Sun Cluster 修补程序"

7.2.4 如何移除 Sun Cluster 修补程序

在必要时,您可以撤出(移除)一个 Sun Cluster 修补程序。

  1. 成为您要从其中移除修补程序的节点上的超级用户。

  2. 列出要移除修补程序的节点上的资源组和设备组。


    # scrgadm -pv
    # scstat
    
  3. 将所有的资源组、资源和设备组从要移除修补程序的节点切换到其他群集成员。


    # scswitch -S -h node
    
    -h node

    指定将资源组和设备组切换到哪个节点。

    -S

    从指定的节点撤出所有的设备服务和资源组。

  4. 关闭节点。


    # shutdown [-y] [-g grace-period] ["message"]
    -y

    指定对确认提示回答 yes

    -g grace-period

    指定关闭前等待的时间,以秒为单位。缺省宽延期为 60 秒。

    message

    指定要广播的警告消息。如 果 message 中包含多个单词,请使用引号。

  5. 将节点引导到非群集模式。


    ok boot -x
    
  6. 移除修补程序。


    # patchrm patch-id
    
    patch-id

    指定一个给定的修补程序的修补程序号。

  7. 重新引导该节点。


    # reboot
    
  8. 检验是否已成功移除修补程序。


    # showrev -p | grep patch-id
    
  9. 检验节点和群集是否正常运行。

  10. 将所有的资源组、资源和设备组切换回去。


    # scswitch -S -h node
    
  11. 对于所有尚在运行的群集节点,重复 从步骤 1步骤 10的操作。

7.2.4.1 示例-移除 Sun Cluster 修补程序

以下示例展示移除一个 Sun Cluster 修补程序。


# scrgadm -pv
...
RG Name: schost-sa-1
...
# scstat
...
Device Group Name:																		dg-schost-1
...
# scswitch -S -h phys-schost-2
# shutdown -y -g 5 "Rebooting down node for maintenance"
...
ok boot -x
...
# patchrm 10-34567
...
# reboot
...
# pkgchk -v 10-34567
...
# scswitch -S -h phys-schost-1