Sun Cluster 軟體安裝指南 (適用於 Solaris 作業系統)

從未完成的升級回復

本節提供以下資訊,以從特定幾種類型的未完成升級回復:

Procedure如何從失敗的雙分割區升級回復

若在升級期間遇到了無法回復的錯誤,請執行此程序來取消升級。


備註 –

您在升級遇到無法回復的錯誤後,將無法重新啟動雙分割區升級。


  1. 成為叢集中每一個節點的超級使用者。

  2. 啟動每個節點進入非叢集模式。

    • 在 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 」中的「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 選項到核心啟動參數指令。


  3. 在每個節點上,從安裝媒體執行升級回復程序檔。

    若節點成功升級到 Sun Cluster 3.2 軟體,您也可以從 /usr/cluster/bin 目錄執行 scinstall 指令。


    phys-schost# cd /cdrom/cdrom0/Solaris_arch/Product/sun_cluster/Solaris_ver/Tools
    phys-schost# ./scinstall -u recover
    
    -u

    指定升級。

    recover

    在開始雙分割區升級之前,復原 /etc/vfstab 檔案和 Cluster Configuration Repository (CCR) 資料庫回其原始狀態。

    回復程序會讓叢集節點處於非叢集模式。請勿將節點啟動至叢集模式。

    詳情請參閱 scinstall(1M) 線上手冊。

  4. 執行下列任一項作業。

    • 從備份復原舊的軟體,以使叢集回到其原始狀態。

    • 繼續使用標準升級方法來升級叢集上的軟體。

      此方法需要所有叢集節點在升級期間都維持在非叢集模式。請參閱表 8–1 的標準升級之對應作業。在雙分割區升級失敗之前成功完成的標準升級程序中的最後一個作業或步驟恢復升級。

ProcedureSPARC:如何從部分完成的雙分割區升級回復

若雙分割區升級失敗,而且叢集狀態符合以下所有條件的話,請執行此程序:

若第一個分割區的升級成功,但您想要取消升級,也可以執行此程序。


備註 –

請勿在第二個分割區上開始雙分割區升級處理後執行此程序。請改而執行如何從失敗的雙分割區升級回復


開始之前

在開始之前,請確認已停止所有的第二分割區節點。可以停止第一分割區節點,或者在非叢集模式下執行。

以超級使用者的身分執行所有步驟。

  1. 將第二個分割區的每個節點啟動至非叢集模式。


    # ok boot -x
    
  2. 在第二分割區的每個節點上,執行 scinstall -u recover 指令。


    # /usr/cluster/bin/scinstall -u recover
    

    此指令會復原原始的 CCR 資訊、復原原始的 /etc/vfstab 檔案,以及消除對啟動的修改。

  3. 將第二分割區的每個節點啟動為叢集模式。


    # shutdown -g0 -y -i6
    

    啟動第二分割區的節點時,第二分割區會重新繼續支援叢集資料服務,並以原始配置執行舊版軟體。

  4. 從備份媒體將原始軟體和配置資料復原到第一分割區的節點。

  5. 將第一分割區的每個節點啟動為叢集模式。


    # shutdown -g0 -y -i6
    

    節點會重新連結叢集。

Procedurex86:如何從部分完成的雙分割區升級回復

若雙分割區升級失敗,而且叢集狀態符合以下所有 條件的話,請執行此程序:

若第一個分割區的升級成功,但您想要取消升級,也可以執行此程序。


備註 –

請勿在第二個分割區上開始雙分割區升級處理後執行此程序。請改而執行如何從失敗的雙分割區升級回復


開始之前

在開始之前,請確認已停止所有的第二分割區節點。可以停止第一分割區節點,或者在非叢集模式下執行。

以超級使用者的身分執行所有步驟。

  1. 完成以下步驟,將第二分割區的每個節點啟動為非叢集模式。

  2. 在 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)」

  3. 在啟動參數畫面中,使用方向鍵選取核心項目並鍵入 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.
  4. -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
    
  5. 按 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.-
  6. 鍵入 b 將節點啟動至非叢集模式。


    備註 –

    對核心啟動參數指令所做的這個變更不會在系統啟動後持續。下次您重新啟動節點時,將會啟動至叢集模式。若要轉而啟動為非叢集模式,請再次執行上述步驟來增加 -x 選項到核心啟動參數指令。


  7. 在第二分割區的每個節點上,執行 scinstall -u recover 指令。


    # /usr/cluster/bin/scinstall -u recover
    

    此指令會復原原始的 CCR 資訊、復原原始的 /etc/vfstab 檔案,以及消除對啟動的修改。

  8. 將第二分割區的每個節點啟動為叢集模式。


    # shutdown -g0 -y -i6
    

    啟動第二分割區的節點時,第二分割區會重新繼續支援叢集資料服務,並以原始配置執行舊版軟體。

  9. 從備份媒體將原始軟體和配置資料復原到第一分割區的節點。

  10. 將第一分割區的每個節點啟動為叢集模式。


    # shutdown -g0 -y -i6
    

    節點會重新連結叢集。

在升級期間從儲存配置變更恢復

此節提供在升級期間對儲存配置不小心進行了變更時可依循的修復程序:

Procedure在升級期間如何處理儲存重新配置

您應該在將叢集升級至 Solaris 9 或 Solaris 10 軟體之前完成對儲存拓撲的所有變更 (包括執行 Sun Cluster 指令)。然而,如果在升級期間對儲存拓撲進行了變更,則請執行下列程序。此程序確保新的儲存配置是正確的,並且未經重新配置的現有儲存不會被錯誤地修改。


備註 –

此程序提供了 Sun Cluster 指令的較長格式。大多指令也有短的形式。這些指令除了指令名稱的格式不同外,其他都是相同的。如需查看這些指令與其簡短格式的清單,請參閱「Sun Cluster 系統管理指南(適用於 Solaris 作業系統)」中的附錄 A「Sun Cluster 以物件為導向的指令」


開始之前

請確保儲存拓樸正確。檢查標誌為可能要被取代的裝置是否對應至實際上已被取代的裝置。如果未取代這些裝置,請檢查並修正可能的意外配置變更,例如錯誤的佈線方式。

  1. 在連接到未驗證裝置的節點上,成為超級使用者。

  2. 手動更新未確認的裝置。


    phys-schost# cldevice repair device
    

    請參閱 cldevice(1CL) 線上手冊以得知更多資訊。

  3. 更新 DID 驅動程式。


    phys-schost# scdidadm -ui
    phys-schost# scdidadm -r
    
    -u

    將裝置 ID 配置表載入至核心。

    -i

    初始化 DID 驅動程式。

    -r

    重新配置資料庫。

  4. 在連接至未經驗證之裝置的所有其他節點上,重複執行步驟 2步驟 3

接下來的步驟

返回剩餘的升級作業。到如何升級 Sun Cluster 3.2 軟體 (標準)步驟 4

Procedure在升級期間如何解決錯誤的儲存變更

如果在升級期間對儲存佈線方式進行了意外變更,則執行下列程序,使儲存配置返回至正確狀態。


備註 –

此程序假定實際上未變更任何實體儲存。如果已變更或更換實體儲存裝置或邏輯儲存裝置,請改為執行在升級期間如何處理儲存重新配置中的程序。


開始之前

將儲存拓樸傳回至其原始的配置。檢查標誌為可能要被取代的裝置之配置,包括佈線方式。

  1. 在每個叢集節點上成為超級使用者。

  2. 更新叢集每個節點上的 DID 驅動程式。


    phys-schost# scdidadm -ui
    phys-schost# scdidadm -r
    
    -u

    將裝置 ID 配置表格載入核心。

    -i

    初始化 DID 驅動程式。

    -r

    重新配置資料庫。

    請參閱 scdidadm(1M) 線上手冊,以取得更多資訊。

  3. 若在步驟 2 中的 scdidadm 指令傳回任何錯誤訊息,請依需要進行更多修改來修正儲存配置,然後重複步驟 2

接下來的步驟

返回剩餘的升級作業。到如何升級 Sun Cluster 3.2 軟體 (標準)步驟 4