Sun Cluster 3.0 12/01 系統管理手冊

第 7章 修補 Sun Cluster 軟體與韌體

本章提供新增與移除 Sun Cluster 配置之修補程式的程序。

以下是本章介紹的程序列表。

7.1 修補 Sun Cluster 概觀

由於叢集本身的性質,所有的叢集成員節點必須在同一個修補層次,叢集才能夠正常運作。 在節點上修補具有 Sun Cluster 專用修補程式的節點時,您可能需要從叢集成員暫時移除節點或者停止整個叢集,然後再安裝修補程式。本節說明這些步驟。

在套用 Sun Cluster 修補程式之前,先檢查 Sun Cluster 網頁有無特別指示;如果需要目前的 URL,請參閱 Sun Cluster 3.0 12/01 版次注意事項 或與企業服務代表連絡。如果網頁中沒有特別的指示,再檢查修補程式的 README 檔。


註解 -

對於 Sun Cluster 專用的修補,務必要遵循修補程式的 README 檔,其中的指示優先於本章的程序。


所有叢集節點的修補程式安裝可分成以下情況:


註解 -

基礎叢集通訊協定不會因為修補程式而改變。


使用 patchadd 指令來套用修補程式到叢集,以及 patchrm 來移除修補程式 (必要時)。

7.1.1 Sun Cluster 修補程式秘訣

使用下列秘訣可協助您更有效率地管理 Sun Cluster 修補程式:

7.2 修補 Sun Cluster

表 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 如何套用要重新開機的修補程式 (節點)

將修補程式一次套用到一個叢集節點,以使叢集本身在修補處理期間仍能保持運作。 使用這個程序,您必須先關閉節點,使用 boot -sx 指令將之啟動為單使用者模式,才能夠套用修補程式。

  1. 在套用修補程式之前,先檢查 Sun Cluster 產品網頁有無特殊的安裝前、安裝後相關指示。

  2. 在您要套用修補程式的節點上成為超級使用者。

  3. 列出要修補之節點上的資源群組與裝置群組。


    # scrgadm -pv
    # scstat
    

  4. 將所有的資源群組、資源及裝置群組從要修補的節點切換到其它叢集成員。


    # scswitch -S -h nodelist
    

    -S

    從指定的節點撤出所有的裝置群組與資源群組。

    -h nodelist

    指定要從此節點切換出資源群組及裝置群組。

  5. 關閉節點。


    # shutdown -g0 [-y] [-i0]

  6. 在非叢集單使用者模式下啟動節點。


    ok boot -sx
    

  7. 套用修補程式。


    # patchadd -M patch-dir patch-id
    

    patch-dir

    指定修補程式的目錄位置。

    patch-id

    指定修補程式的修補程式號碼。


    註解 -

    務必遵循修補程式目錄中的指示,這些指示優先於本章的程序。


  8. 將節點重新啟動進入叢集。


    # reboot
    

  9. 確認修補程式已成功安裝。


    # showrev -p | grep patch-id
    

  10. 確認修補程式可以運作,節點與叢集都運作正常。

  11. 對其餘的叢集節點重複 步驟 2步驟 10

  12. 在需要時可切換資源群組、資源及裝置群組。

    重新啟動所有的節點後,最後一個重新啟動的節點不會使資源群組及裝置群組連線。


    # scswitch -z -h nodelist -D device-group
    # scswitch -z -h nodelist -g resource-group
    

    -z

    指定對主要資源群組或裝置群組所做的變更。

    -h nodelist

    指定將資源群組及裝置群組切換至這個節點。

    -D

    將指定的裝置群組切換至 -h 選項所識別的節點上。

    -g

    將指定的資源群組切換至 -h 選項所識別的節點上。如果未指定 -h,資源群組將會離線。

7.2.1.1 範例-套用要重新開機的修補程式 (節點)

以下範例顯示將將要重新開機的 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.1.2 下一步

如果您需要移除修補程式,請參閱 "7.2.4 如何移除 Sun Cluster 修補程式"

7.2.2 如何套用要重新開機的修補程式 (叢集與韌體)

使用這個程序,您必須先關閉叢集,以 boot -sx 指令將每個節點啟動為單使用者模式,才能夠套用修補程式。

  1. 在套用修補程式前,先查閱 Sun Cluster 產品網頁有無特殊的安裝前、安裝後相關指示。

  2. 成為叢集中任何節點的超級使用者。

  3. 關閉叢集。


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

    -y

    對確認提示指定回答 yes (是)。

    -g grace-period

    指定關機前的等待秒數,預設的寬限期為 60 秒。

    message

    指定要廣播的警告訊息。 如果訊息含有多個文字,請使用引號括住。

  4. 在非叢集單使用者模式下啟動每一個節點。

    在每一個節點的主控台上執行下列指令。


    ok boot -sx
    

  5. 套用軟體或韌體修補程式。

    一次對一個節點執行下列指令。


    # patchadd -M 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 -sx
...
# patchadd -M /tmp/patches 234567-05
(Apply patch to other cluster nodes)
...
# showrev -p | grep 234567-05
# reboot

7.2.2.2 下一步

如果您需要移除修補程式,請參閱 "7.2.4 如何移除 Sun Cluster 修補程式"

7.2.3 如何套用不要重新開機的 Sun Cluster 修補程式

一次套用修補程式至一個叢集節點上。 在套用不要重新開機的修補程式時,您不必先關閉要接收修補程式的節點。

  1. 在套用修補程式前,先查閱 Sun Cluster 產品網頁有無特殊的安裝前、安裝後相關指示。

  2. 如果這是資料服務修補程式,在套用修補程式之前,請先將會受影響的資料服務從您要修補的節點切換到備份節點。


    # scswitch -z -g resource-group -h node
    
  3. 對單一節點套用修補程式。

    如果您在 步驟 2 中切換了資料服務,請在您切換出資料服務的節點上安裝修補程式。


    # patchadd -M patch-dir patch-id
    

    patch-dir

    指定修補程式的目錄位置。

    patch-id

    指定修補程式的修補程式號碼。

  4. 確認已成功安裝修補程式。


    # showrev -p | grep patch-id
    

  5. 確認修補程式可以運作,節點與叢集都運作正常。

    如果您在 步驟 2 中將資料服務切換至備份節點,現在可以將該資料服務切換回原來的主要節點。

  6. 對其餘的叢集節點重複 步驟 3步驟 5

7.2.3.1 範例-套用不要重新開機的 Sun Cluster 修補程式


# patchadd -M /tmp/patches 234567-05
...
# showrev -p | grep 234567-05

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 nodelist
    

    -S

    從指定的節點撤出所有的裝置服務與資源群組。

    -h nodelist

    指定要從此節點切換出資源群組及裝置群組。

  4. 關閉節點。


    # shutdown -g0 -y -i0 "message"
    

    -g0

    指定關機前的等待秒數,預設的寬限期為 60 秒。

    -y

    對確認提示指定回答 yes (是)。

    -i0

    指定 0 的初始狀態,這將使節點出現在 OBP 提示處。

    message

    指定要廣播的警告訊息。 如果訊息含有多個文字,請使用引號括住。

  5. 在非叢集單使用者模式下啟動節點。


    ok boot -sx
    

  6. 移除修補程式。


    # patchrm patch-id
    

    patch-id

    指定修補程式的修補程式號碼。

  7. 重新啟動節點。


    # reboot
    

  8. 確認成功移除修補程式。


    # showrev -p | grep patch-id
    

  9. 確認節點與叢集運作正常。

  10. 對其餘的叢集節點重複 步驟 1步驟 9

  11. 在需要時可切換資源群組、資源及裝置群組 (選用性)。

    重新啟動所有的節點後,最後一個重新啟動的節點不會使資源群組及裝置群組連線。


    # scswitch -z -h nodelist -D device-group
    # scswitch -z -h nodelist -g resource-group
    

    -z

    指定對主要資源群組或裝置群組所做的變更。

    -h nodelist

    指定將資源群組及裝置群組切換至這個節點。

    -D

    將指定的裝置群組切換至 -h 選項所識別的節點上。

    -g

    將指定的資源群組切換至 -h 選項所識別的節點上。如果未指定 -h,資源群組將會離線。

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 -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