本章讲述了向 Sun Cluster 配置添加修补程序或从中删除修补程序的过程。
鉴于群集的特性,所有群集成员节点的修补程序必须处于同一级别,这样才可保证群集能正常工作。 使用特定于 Sun Cluster 的修补程序修补节点时,可能需要先暂时取消该节点的群集成员资格或停止整个群集,然后再安装修补程序。本节对这些步骤进行了说明。
在应用 Sun Cluster 修补程序之前,请先查阅 Sun Cluster Web 页,看是否有任何特殊的说明;有关该页的当前 URL,请参阅《Sun Cluster 3.0 12/01 Release Notes》或与 Enterprise Services 部门联系。 如果没有任何特殊说明,请查阅修补程序的 README 文件。
对于特定于 Sun Cluster 的修补程序,请始终查阅修补程序的 README 文件,看其中是否有些说明需要取代本章中的有关过程。
在所有群集节点上安装修补程序分以下几种情况:
需重新引导的修补程序(节点)- 在应用修补程序之前,必须先使用 boot -sx 命令将节点引导到单用户模式。应用修补程序之后再重新引导该节点使其加入群集。在执行这些操作时,您需要使所要应用修补程序的那个节点进入"安静" 状态。具体做法是:首先将该节点的任何资源组或磁盘设备组切换到另一个群集成员上。此外,每次将修补程序只应用于一个群集节点,以免关闭整个群集。
如果以这种方式应用修补程序,即使暂时关闭单个节点,群集本身也将一直保持可用状态。 在一个节点上应用了修补程序之后,即使其他节点尚未达到该节点的修补级别,它也可以作为群集成员重新加入到群集中。
需重新引导的修补程序(群集和固件)- 要应用软件或固件的修补程序,必须关闭群集并且使用 boot -sx 命令将每个节点引导到单用户模式。 然后重新引导这些节点使其重新加入群集。 如果采用这种方式,则群集在修补程序应用期间是不可用的。
不需重新引导的修补程序 - 在应用修补程序期间,节点不必处于"安静"状态(它仍可以继续控制资源组或设备组),也不必将其关闭或重新引导。 但是,您仍然应当每次将修补程序只应用于一个节点,并在修补下一节点前检验该修补程序是否有效。
基础群集协议不会因修补程序而更改。
使用 patchadd 命令将修补程序应用到群集中,使用 patchrm 命令删除修补程序(如果可能)。
利用下列提示可帮助您更有效地管理 Sun Cluster 修补程序:
查阅 Sun Cluster Web 站点,看是否有与修补程序或固件更新相关的特殊说明。有关该站点的当前 URL,请参阅《Sun Cluster 3.0 12/01 Release Notes》或与 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 页,看是否有关于安装前或安装后的特殊说明。
如果是数据服务修补程序,则在应用此修补程序之前先将会受到影响的数据服务从要修补的节点切换到备份节点。
# scswitch -z -g resource-group -h node |
在单个节点上应用修补程序。
如果步骤 2 中切换了数据服务,则在已切换数据服务的节点上安装修补程序。
# patchadd -M patch-dir patch-id |
指定修补程序的目录位置。
指定给定修补程序的修补程序号。
检验该修补程序是否已成功安装。
# showrev -p | grep patch-id |
检验修补程序是否有效,以及该节点和群集是否正常运行。
如果步骤 2 中将数据服务切换到了备份节点上,则现在就可以将它切换回初始主节点。
# 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。
指定初始状态 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 |