本章提供添加和删除 Sun Cluster 配置的修补程序的过程。
由于群集的特性,所有的群集成员节点都必须处于同一修补级别,才能正确进行群集操作。使用一个 Sun Cluster 特定的修补程序修补一个节点时,您可能需要在安装修补程序前从群集成员关系中临时删除一个节点,或停止整个群集。本节说明这些步骤。
在应用 Sun Cluster 修补程序前,首先检查 Sun Cluster Web 页是否有任何特殊的说明;关于当前的 URL,请参阅《Sun Cluster 3.0 U1 发行说明》或与 Enterprise Services 部门联系。如果没有任何特殊的说明,请查看修补程序的 README 文件。
对于 Sun Cluster 特定的修补程序,应始终从修补程序的 README 文件查找可替代本章中的过程的说明。
所有群集节点上修补程序的安装分为以下几种情况:
重新引导修补程序(节点)- 在应用修补程序之前,必须使用命令 boot -sx 将节点引导到单用户模式,然后再重新引导以加入群集。在执行这些操作时,您需要首先将任何资源组或磁盘设备组从要修补的节点切换到另一个群集成员,从而使该节点进入一种"安静"状态。此外,每次将此修补程序应用到一个群集节点,以避免关闭整个群集。
在这种类型的修补程序应用中,即使临时关闭个别节点,群集本身一直保持可用状态。即使其它节点尚未处于相同的修补级别,一个修补的节点也能作为一个成员节点重新加入到群集中。
重新引导修补程序(群集和固件)- 必须关闭群集,并且必须使用命令 boot -sx 将每个节点引导到单用户模式,才能应用软件或固件修补程序。然后重新引导这些节点以重新加入群集。对于这种类型的修补,群集在修补程序应用期间是不可用的。
非重新引导修补程序 - 在应用修补程序时,节点不必进入"安静"状态(它可以继续主控资源组或设备组),也不必关闭或重新引导节点。但是,您仍然应当每次将修补程序应用到一个节点,并在修补另一节点前检验该修补是否有效。
基础群集协议不会因修补程序而更改。
使用 patchadd 命令将修补程序应用到群集中,使用 patchrm 来删除一个修补程序(如果可能)。
利用下列提示可帮助您更有效地管理 Sun Cluster 修补程序:
有关与修补程序或固件更新相关的特殊说明,请参阅 Sun Cluster Web 站点。关于当前的 URL,请参阅《Sun Cluster 3.0 U1 发行说明》或与 Enterprise Services 部门联系。
每次应用修补程序前都要阅读修补程序的 README 文件。
在生产环境中运行群集前应用所有的修补程序(要求并推荐如此操作)。
检查硬件固件级别并安装可能需要的、要求安装的任何固件更新。
充当群集成员的所有节点必须拥有相同的修补程序。
使群集子系统修补程序保持最新, 这包括卷管理、存储设备固件和群集传输等。
定期查看修补程序报告,比如每季度查看一次,并使用推荐的修补程序套件来修补 Sun Cluster 配置。
应用由 Enterprise Services 部门推荐的可选择的修补程序。
在主要的修补程序更新后测试故障转移;如果群集性能下降或受损,请准备好回退修补程序。
任务 |
有关说明,请转到... |
---|---|
每次将一个非重新引导 Sun Cluster 修补程序应用到一个节点,不必停止节点 | |
使群集成员进入非群集模式后应用一个重新引导 Sun Cluster 修补程序 |
|
删除一个 Sun Cluster 修补程序 - 如有必要,可以撤出修补程序 |
每次将修补程序应用到群集中的一个节点,使群集本身在修补进程中保持运行状态。对于此过程,您必须首先关闭该节点,并使用 boot -sx 命令将它引导到单用户模式,然后才能应用修补程序。
在应用修补程序前,从 Sun Cluster 产品 Web 页中查找任何特殊的安装前或安装后说明。
成为您要应用修补程序的节点的超级用户。
列出要修补的节点上的资源组和设备组。
# scrgadm -pv # scstat |
将所有的资源组、资源和设备组从要修补的节点切换到其它群集成员。
# scswitch -S -h nodelist |
从指定的节点抽出所有的设备组和资源组。
指定正在从中切换资源组和设备组的节点。
关闭节点。
# shutdown -g0 [-y] [-i0] |
以非群集单用户模式引导节点。
ok boot -sx |
应用修补程序。
# patchadd -M patch-dir patch-id |
指定修补程序的目录位置。
指定一个给定修补程序的修补程序号。
每次都要按照修补程序目录中的、可替代本章中的过程的说明操作。
将节点重新引导到群集中。
# reboot |
检验修补程序是否安装成功。
# showrev -p | grep patch-id |
检验修补程序是否有效,以及节点和群集是否正常运行。
根据需要,切换资源组、资源和设备组。
在重新引导所有节点后,最后一个重新引导的节点不会使资源组和设备组联机。
# scswitch -z -h nodelist -D device-group # scswitch -z -h nodelist -g resource-group |
指定主控资源组或设备组的更改。
指定将资源组和设备组切换到哪些节点。
将指定的设备组切换到 -h 选项所确定的节点。
将指定的资源组切换到 -h 选项所确定的节点。如果未指定 -h ,资源组将脱机。
以下示例展示将一个重新引导 Sun Cluster 修补程序应用到一个节点。
# scrgadm -pv ... RG Name: schost-sa-1 ... # scstat ... Device Group Name: dg-schost-1 ... # scswitch -S -h phys-schost-2 # shutdown -g0 -y -i0 ... ok boot -sx ... # patchadd -M /tmp/patches 234567-05 ... # reboot ... # showrev -p | grep 234567-05 # scswitch -z -h phys-schost-1 -D dg-schost-1 # scswitch -z -h phys-schost-1 -g schost-sa-1 |
如果需要撤出一个修补程序,请参阅 "7.2.4 如何删除 Sun Cluster 修补程序"。
对于此过程,您必须首先关闭该群集,并使用 boot -sx 命令将每个节点引导到单用户模式,然后才能应用修补程序。
在应用修补程序前,从 Sun Cluster 产品 Web 页中查找任何特殊的安装前或安装后说明。
成为群集中任一节点上的超级用户。
关闭群集。
# scshutdown -y -g grace-period "message" |
指定对确认提示回答 yes。
指定关闭前等待的时间,以秒为单位。缺省宽延期为 60 秒。
指定要广播的警告消息。如果 message 中包含多个词,请使用引号。
将每个节点引导到非群集单用户模式。
在每个节点的控制台上,运行以下命令。
ok boot -sx |
应用软件或固件修补程序。
每次在一个节点上运行以下命令。
# patchadd -M patch-dir patch-id |
指定修补程序的目录位置。
指定一个给定修补程序的修补程序号。
每次都要按照修补程序目录中的、可替代本章中的过程的说明操作。
检验每个节点上是否成功安装了修补程序。
# showrev -p | grep patch-id |
在将修补程序应用到所有节点后,重新将节点引导到群集中。
在每个节点上运行以下命令。
# reboot |
检验修补程序是否有效,以及节点和群集是否正常运行。
以下示例展示将一个重新引导 Sun Cluster 修补程序应用到一个群集。
# scshutdown -g 0 -y ... ok boot -sx ... # patchadd -M /tmp/patches 234567-05 (Apply patch to other cluster nodes) ... # showrev -p | grep 234567-05 # reboot |
如果需要撤出一个修补程序,请参阅 "7.2.4 如何删除 Sun Cluster 修补程序"。
每次将修补程序应用到群集中的一个节点。应用一个非重新引导修补程序时,不需要首先关闭接收此修补程序的节点。
在应用修补程序前,从 Sun Cluster 产品 Web 页中查找任何特殊的安装前或安装后说明。
在单独一个节点上应用该修补程序。
# patchadd -M patch-dir patch-id |
指定修补程序的目录位置。
指定一个给定修补程序的修补程序号。
检验修补程序是否安装成功。
# showrev -p | grep patch-id |
检验修补程序是否有效,以及节点和群集是否正常运行。
# patchadd -M /tmp/patches 234567-05 ... # showrev -p | grep 234567-05 |
如果需要撤出一个修补程序,请参阅 "7.2.4 如何删除 Sun Cluster 修补程序"。
在必要时,您可以删除 一个 Sun Cluster 修补程序。
成为您要从其中删除修补程序的节点的超级用户。
列出要删除修补程序的节点上的资源组和设备组。
# scrgadm -pv # scstat |
将所有的资源组、资源和设备组从要删除修补程序的节点切换到其它群集成员。
# scswitch -S -h nodelist |
从指定的节点抽出所有的设备服务和资源组。
指定正在从中切换资源组和设备组的节点。
关闭节点。
# shutdown -g0 -y -i0 "message" |
指定关闭前等待的时间,以秒为单位。缺省宽延期为 60 秒。
指定对确认提示回答 yes。
指定 init 状态为 0。这将使节点关闭并转到 OBP 提示符下。
指定要广播的警告消息。如果 message 中包含多个词,请使用引号。
以非群集单用户模式引导节点。
ok boot -sx |
删除修补程序。
# patchrm patch-id |
指定一个给定修补程序的修补程序号。
重新引导节点。
# reboot |
检验是否已成功删除修补程序。
# showrev -p | grep patch-id |
检验节点和群集是否正常运行。
(可选)根据需要,切换资源组、资源和设备组。
在重新引导所有节点后,最后一个重新引导的节点不会使资源组和设备组联机。
# scswitch -z -h nodelist -D device-group # scswitch -z -h nodelist -g resource-group |
指定主控资源组或设备组的更改。
指定将资源组和设备组切换到哪些节点。
将指定的设备组切换到 -h 选项所确定的节点。
将指定的资源组切换到 -h 选项所确定的节点。如果未指定 -h ,资源组将脱机。
以下示例展示删除一个 Sun Cluster 修补程序。
# scrgadm -pv ... RG Name: schost-sa-1 ... # scstat ... Device Group Name: dg-schost-1 ... # scswitch -S -h phys-schost-2 # shutdown -g0 -y -i0 "Rebooting down node for maintenance" ... ok boot -x ... # patchrm 234567-05 ... # reboot ... # pkgchk -v 234567-05 ... # scswitch -z -h phys-schost-1 -D dg-schost-1 # scswitch -z -h phys-schost-1 -g schost-sa-1 |