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

Procedure如何準備升級適用的叢集 (雙分割區)

執行此程序以準備好叢集進行雙分割區升級。這些程序將把這兩個節點群組稱為第一個分割區和第二個分割區。在您於第一個分割區升級節點時,指定給第二個分割區的節點將會繼續叢集服務。在升級了第一個分割區的所有節點後,請切換叢集服務到第一個分割區,然後升級第二分割區。在升級了第二個分割區的所有節點後,啟動節點進入叢集模式,以從第一個分割區重新加入節點。


備註 –

若正在升級單節點叢集,請勿使用此升級方法。請改至如何準備升級適用的叢集 (標準)如何準備升級適用的叢集 (即時升級)


在 Solaris 10 作業系統上,僅從全域區域執行所有步驟。

開始之前

請執行以下作業:

  1. 確定叢集運作正常。

    1. 從任何節點執行下列指令來檢視叢集目前的狀態。


      % scstat
      

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

    2. 在同一節點上的 /var/adm/messages 記錄中搜尋未解決的錯誤訊息或警告訊息。

    3. 檢查磁碟區管理程式狀態。

  2. 若有必要,請通知使用者叢集服務也許會在升級期間暫時中斷。

    服務中斷的時間約為叢集一般切換服務至另一個節點的所需時間。

  3. 成為叢集上某個節點的超級使用者。

  4. 若為使用 Sun StorEdge Availability Suite 軟體或 Sun StorageTek Availability Suite 軟體的雙節點叢集,請確認可用性服務的配置資料位於法定磁碟上。

    配置資料必須常駐在法定磁碟上,以確保在升級叢集軟體後,Availability Suite 可正常運作。

    1. 成為執行 Availability Suite 軟體的叢集節點上的超級使用者。

    2. 識別裝置 ID 和 Availability Suite 配置檔案所使用的磁碟片段。


      phys-schost# /usr/opt/SUNWscm/sbin/dscfg
      /dev/did/rdsk/dNsS
      

      在此輸出範例中,N 為裝置 ID,S 為裝置 N 的片段。

    3. 識別現有的法定裝置。


      phys-schost# scstat -q
      -- Quorum Votes by Device --
                           Device Name         Present Possible Status
                           -----------         ------- -------- ------
         Device votes:     /dev/did/rdsk/dQsS  1       1        Online

      在此範例輸出中,dQsS 為現有法定裝置。

    4. 若法定裝置與 Availability Suite 配置資料裝置不同,請將配置資料移至法定裝置上的可用磁碟片段。


      phys-schost# dd if=`/usr/opt/SUNWesm/sbin/dscfg` of=/dev/did/rdsk/dQsS
      

      備註 –

      您必須使用原始 DID 裝置的名稱 /dev/did/rdsk/,而不是區段 DID 裝置的名稱 /dev/did/dsk/


    5. 若您移動了配置資料,請將 Availability Suite 軟體配置為使用新位置。

      以超級使用者的身分,在執行 Availability Suite 軟體的每個節點上發出以下指令。


      phys-schost# /usr/opt/SUNWesm/sbin/dscfg -s /dev/did/rdsk/dQsS
      
  5. 若要升級 Solaris 作業系統,而且您的叢集是在 Solaris Volume Manager 軟體使用雙串聯中介程式,請取消配置您的中介程式。

    請參閱配置雙串聯中介程式以得知關於中介程式的更多資訊。

    1. 執行下列指令確認不存在任何中介程式資料問題。


      phys-schost# medstat -s setname
      
      -s setname

      指定磁碟組名稱。

      如果 [狀態] 欄位中的值為 Bad,則請修復受影響的中介程式主機。請執行如何修復錯誤的中介程式資料程序。

    2. 列出所有中介程式。

      儲存此資訊以在執行如何結束升級到 Sun Cluster 3.2 軟體程序期間復原中介程式。

    3. 對於使用中介程式的磁碟組,如果尚無節點具有所有權,則取得該磁碟組的所有權。


      phys-schost# scswitch -z -D setname -h node
      
      -z

      變更主控權。

      -D devicegroup

      指定磁碟組的名稱。

      -h node

      指定要成為磁碟組之主要節點的節點名稱。

    4. 取消配置磁碟組的所有中介程式。


      phys-schost# metaset -s setname -d -m mediator-host-list
      
      -s setname

      指定磁碟組名稱。

      -d

      從磁碟組刪除。

      -m mediator-host-list

      指定要移除的當作磁碟組之中介程式主機的節點名稱。

      請參閱 mediator(7D) 線上手冊,以取得有關 metaset 指令之中介程式特定選項的進一步資訊。

    5. 對每個剩餘的使用中介程式之磁碟組重複執行步驟 c 到步驟 d。

  6. 若正在執行 Sun Cluster HA for Sun Java System Application Server EE (HADB) 資料服務和 Sun Java System Application Server EE (HADB) 軟體 4.4 版,請停用 HADB 資源並關閉 HADB 資料庫。

    若正在執行 4.4 版之前的 Sun Java System Application Server EE (HADB) 軟體,您可以跳過此步驟。

    若在升級期間某叢集分割區沒有服務,在使用中的分割區就沒有足夠的節點來符合 HADB 成員的需求。因此,您必須停止 HADB 資料庫並停用 HADB 資料,然後才能開始分割叢集。


    phys-schost# hadbm stop 資料庫名稱
    phys-schost# scswitch -n -j hadb 資源
    

    詳情請參閱 hadbm(1m) 線上手冊。

  7. 若正在升級雙節點叢集,請至步驟 16

    或者,請至步驟 8 來判斷要使用的分割方案。您將判斷每個分割區將包含但卻會中斷分割處理的節點。接著,您將比較所有資源群組的節點清單與將使用方案中的每個分割區節點成員。若有任何資源群組不包含每個分割區的某成員,您就必須變更節點清單。

  8. 在 DVD-ROM 光碟機載入 Sun Java Availability Suite DVD-ROM。

    若磁碟區管理常駐程式 vold(1M) 正在執行,並且被配置為管理 CD-ROM 或 DVD 裝置,則常駐程式會自動將媒體掛載在 /cdrom/cdrom0/ 目錄。

  9. 切換至 Solaris_arch/Product/sun_cluster/Solaris_ver/Tools/ 目錄,其中 archsparcx86 (僅限 Solaris 10),而 ver9 (即 Solaris 9) 或 10 (即 Solaris 10)。


    phys-schost# cd /cdrom/cdrom0/Solaris_arch/Product/sun_cluster/Solaris_ver/Tools
    
  10. 在互動模式中啟動 scinstall 公用程式。


    phys-schost# ./scinstall
    

    備註 –

    請勿使用已安裝在節點上的 /usr/cluster/bin/scinstall 指令。您必須使用Sun Java Availability Suite DVD-ROM 上的 scinstall 指令。


    螢幕會顯示 scinstall 主功能表。

  11. 輸入與管理雙分割區升級選項對應之數字,然後按下 Return 鍵。


    *** Main Menu ***
    
        Please select from one of the following (*) options:
    
            1) Create a new cluster or add a cluster node
            2) Configure a cluster to be JumpStarted from this install server
          * 3) Manage a dual-partition upgrade
          * 4) Upgrade this cluster node
          * 5) Print release information for this cluster node
     
          * ?) Help with menu options
          * q) Quit
    
        Option:  3
    

    之後會出現 [Manage a Dual-Partition Upgrade Menu]。

  12. 輸入與顯示和選取可能分割方案選項對應之數字,然後按下 Return 鍵。

  13. 請遵照提示執行以下作業:

    1. 顯示叢集的可能分割方案。

    2. 選取一個分割方案。

    3. 選取要先升級的分割區。


      備註 –

      出現 Do you want to begin the dual-partition upgrade?提示時停用並先不要回應,但不要結束 scinstall 公用程式。您將在本程序的步驟 18 回應此提示。


  14. 記下分割方案中,各節點分屬的每個分割區。

  15. 在另一個叢集節點上成為超級使用者。

  16. 確認任何重要資料服務都可在分割區之間切換。

    對於雙節點叢集,每個節點在其分割區中都是唯一的節點。

    在關閉分割區節點以準備進行雙分割區升級時,位於這些節點上的資源群組就會切換到其他分割區的節點。若資源群組不包含來自其節點清單中每個分割區的節點,就無法切換資源群組。若要確保成功切換所有重要的資料服務,請驗證相關的資源群組節點清單是否包含每個升級分割區的成員。

    1. 顯示您必須在完整升級期間保留在服務中的每個資源群組節點清單。


      phys-schost# scrgadm -pv -g resourcegroup | grep "Res Group Nodelist"
      
      -p

      顯示配置資訊。

      -v

      顯示詳細模式。

      -g resourcegroup

      指定資源群組的名稱。

    2. 若資源群組的節點清單沒有至少包含一個每個分割區的成員,請重新定義節點清單以包含每個分割區的一個成員來作為可能的主要節點。


      phys-schost# scrgadm -a -g resourcegroup -h nodelist
      
      -a

      增加新配置。

      -h

      指定以逗點分隔之節點名稱清單。

  17. 確定下一步驟。

    • 若要升級雙節點叢集,請回到步驟 8步驟 13,來指定您的分割方案和升級順序。

      當出現 Do you want to begin the dual-partition upgrade? 提示時,請至步驟 18

    • 若要升級叢集為包含三個或多個節點,請回到執行互動式 scinstall 公用程式的節點。

      執行步驟 18

  18. 在互動式 scinstall 提示 Do you want to begin the dual-partition upgrade? 時,請輸入 Yes

    此指令會驗證是否可使用遠端安裝方法。

  19. 出現提示時,按 Enter 繼續準備雙分割區升級的每個階段。

    指令會將資源群組切換到第二個分割區的節點,然後關閉第一個分割區中的每個節點。

  20. 在關閉第一個分割區中的所有節點後,將該分割區中的每個節點啟動至非叢集模式。

    • 在 SPARC 架構的系統上,執行下列指令:


      ok boot -x
      
    • 在執行 Solaris 9 作業系統之以 x86 為基礎的系統上,執行以下其中一個指令:


      phys-schost# reboot -- -xs
      or
      ...
                            <<< Current Boot Parameters >>>
      Boot path: /pci@0,0/pci-ide@7,1/ata@1/cmdk@0,0:b
      Boot args:
      
      Type  b [file-name] [boot-flags] <ENTER>  to boot with options
      or    i <ENTER>                           to enter boot interpreter
      or    <ENTER>                             to boot with defaults
      
                        <<< timeout in 5 seconds >>>
      Select (b)oot or (i)nterpreter: b -xs
      
    • 在執行 Solaris 10 作業系統之以 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 選項到核心啟動參數指令。


  21. 若在第二個分割區執行的任一應用程式沒有受到 資源群組管理員 (RGM) 的控制,請在開始升級節點之前建立程序檔以停止應用程式。

    在雙分割區升級處理作業期間,於停止第二個分割區中的節點之前,會呼叫這些程序檔來停用應用程式 (例如 Oracle RAC)。

    1. 建立所需的程序檔來停止不受 RGM 控制的應用程式。

      • 在停止受 RGM 控制的應用程式之前,為您要停止的應用程式建立個別的程序檔,以及為您要在之後停止的應用程式建立個別的程序檔。

      • 若要停止在分割區中多個節點上執行的應用程式,請依序寫入程序檔。

      • 為程序檔使用您喜好的任何名稱和目錄路徑。

    2. 確認叢集中的每個節點都有其程序檔的複本。

    3. 在每個節點上,修改以下 Sun Cluster 程序檔來呼叫您置於該節點上的程序檔。

      • /etc/cluster/ql/cluster_pre_halt_apps - 使用此檔案來呼叫您要在關閉受到 RGM 控制的應用程式 之前執行的程序檔。

      • /etc/cluster/ql/cluster_post_halt_apps - 使用此檔案來呼叫您要在關閉受到 RGM 控制的應用程式之後執行的程序檔。

      Sun Cluster 程序檔是在分割區的升級後處理作業期間,從分割區中的一個仲裁節點所發出的。因此,請確認分割區任一節點上的程序檔將為分割區中的所有節點執行必要的動作。

接下來的步驟

升級第一個分割區中每個節點上的軟體。