Sun Cluster 系統管理指南 (適用於 Solaris 作業系統)

第 5章 管理法定數目

本章提供從 Sun Cluster 管理法定數目的程序。

以下是本章所介紹程序的清單。

本章的範例大部分是以三節點叢集為例。

請參閱Sun Cluster 概念指南 (適用於 Solaris 作業系統)文件,以取得法定數目及法定裝置的概念簡介。

管理法定數目簡介

您可以使用 scconf( 1M) 指令來執行所有法定數目管理程序。 此外,您可使用 scsetup(1M) 互動式公用程式或 SunPlex Manager GUI 來完成部分程序。 只要適當,本章將使用 scsetup 來說明法定數目程序。 SunPlex Manager 線上說明描述如何使用 GUI 來執行法定程序。

如有任何法定數目相關的 scconf 指令被中斷或失敗,法定數目配置資訊在叢集配置資料庫中可能會變得不一致。 如果發生這種情況,請重新執行指令或執行 scconf,並使用 reset 選項來重設法定數目配置。


註解 –

scsetup 指令是 scconf 指令的互動式介面。 當 scsetup 執行時,該指令會產生 scconf 指令。 這些產生的指令顯示在程序範例的尾端。


有兩個指令可用來檢視法定數目配置︰ scstat -q 選項與 scconf -p。 本章中大部分的驗證步驟使用 scconf,不過,您可以改用 scstat -q,如果您認為它的輸出更有用的話。

表 5–1 作業清單: 管理法定數目

作業  

如需相關說明,請參閱...  

新增法定裝置至叢集 

    - 使用 scsetup(1M)

如何新增法定裝置

從叢集中移除法定裝置 

    - 使用 scsetup(以產生 scconf)

如何移除法定裝置

從叢集中移除最後的法定裝置 

    - 使用 scsetup(以產生 scconf)

如何從叢集移除最後一個法定裝置

取代叢集中的法定裝置 

    - 使用新增與移除序 

如何取代法定裝置

使法定裝置進入維護狀態 

(在維護狀態下,法定裝置並不參與建立法定數目的「投票」)。  

    - 使用 scsetup(以產生 scconf)

如何使法定裝置進入維護狀態

將法定配置回復為預設的狀態 

    - 使用 scsetup(以產生 scconf)

如何使法定裝置離開維護狀態

列出法定裝置與法定票數 

    - 使用 scconf(1M)

如何列示法定配置

動態重新配置法定裝置

對叢集中的法定裝置完成動態重新配置 (DR) 作業後,您必須考量幾個問題。

要移除法定裝置,您必須依下列順序完成下述步驟。

表 5–2 對應作業: 動態重新配置法定裝置

作業  

如需相關說明,請參閱...  

1. 啟用新的法定裝置來置換要移除的裝置。 

如何新增法定裝置

2. 停用要移除的法定裝置。 

如何移除法定裝置

3. 在要移除的裝置上執行 DR 移除作業。 

Sun Enterprise 10000 DR Configuration Guide以及Sun Enterprise 10000 Dynamic Reconfiguration Reference Manual(出自 Solaris 8 on Sun HardwareSolaris 9 on Sun Hardware系列。)

如何新增法定裝置

您也可以使用 SunPlex Manager GUI 來完成此程序。 請參閱 SunPlex Manager 線上說明,以取得詳細資訊。

要完成這個程序,請指定一個由節點共用之磁碟裝置的裝置 ID (DID)。 請使用 scdidadm 指令來查看 DID 名稱的清單。 請參閱 scdidadm (1M) 線上援助頁,以取得其他資訊。

請參閱 scsetup(1M)scconf(1M) 線上說明手冊,以取得此程序中所使用指令的資訊。

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

  2. 輸入 scsetup 公用程式。


    # scsetup
    

    顯示 Main Menu。

  3. 要使用法定裝置,請鍵入 1 (法定)。

    顯示 Quorum Menu。

  4. 要新增法定裝置,請鍵入 1 (新增法定磁碟)。

    請依指示進行,同時輸入要當作法定裝置的裝置名稱。

  5. 確認法定裝置新增成功。


    # scstat -q
    

  6. 對共用儲存裝置之節點的每一個群組重複步驟 3步驟 5

範例—新增法定裝置

下列範例顯示 scconf 指令,這是由 scsetup 新增法定裝置和驗證步驟時所產生的。


Become superuser on any cluster node.
[Execute the scsetup utility:]
# scsetup
Select Quorum>Add a quorum disk.
Answer the questions when prompted.
[Verify that the scconf command completed successfully:]
 
scconf -a -q globaldev=d20
 
    Command completed successfully.
Quit the scsetup Quorum Menu and Main Menu.
[Verify the quorum device is removed:]
# scstat -q
 
-- Quorum Summary --
 
  Quorum votes possible: 4
  Quorum votes needed:   3
  Quorum votes present:  4
 
-- Quorum Votes by Node --
 
                    Node Name           Present Possible Status
                    ---------           ------- -------- ------
  Node votes:       phys-schost-1       1        1       Online
  Node votes:       phys-schost-2       1        1       Online
 
-- Quorum Votes by Device --
 
                 Device Name         Present Possible Status
                 -----------         ------- -------- ------
  Device votes:  /dev/did/rdsk/d3s2  1        1       Online
  Device votes:  /dev/did/rdsk/d4s2  1        1       Online

如何移除法定裝置

您也可以使用 SunPlex Manager GUI 來完成此程序。 請參閱 SunPlex Manager 線上說明,以取得詳細資訊。

法定磁碟被移除後,它將不再參與建立法定數目的投票。 請注意,所有兩個節點的叢集都要求至少配置一個法定裝置。 如果這是叢集上的最後一個法定裝置,scconf(1M) 從配置移除裝置時將會失敗。


註解 –

如果您要移除的裝置是叢集中的最後一個法定裝置,請參閱 如何從叢集移除最後一個法定裝置 的程序。


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

  2. 決定要移除的法定裝置。


    # scconf -pv | grep Quorum
    

  3. 執行 scsetup(1M) 公用程式。


    # scsetup
    

    顯示 Main Menu。

  4. 要使用法定裝置,請鍵入 1 (法定)。

  5. 要移除法定裝置,請鍵入 2 (移除法定磁碟)。

    在移除程序期間回答顯示的問題。

  6. 退出 scsetup

  7. 確認法定裝置移除成功。


    # scstat -q
    

範例—移除法定裝置

這個範例顯示如何從配置二個或以上法定裝置的叢集移除一個法定裝置。


Become superuser on any node and place the node to be removed in maintenance state.
[Determine the quorum device to be removed:]
# scconf -pv | grep Quorum
[Execute the scsetup utility:]
# scsetup
Select Quorum>Remove a quorum disk.
Answer the questions when prompted.
[Verify that the scconf command completed successfully:]
 
scconf -r -q globaldev=d4
 
    Command completed successfully.
Quit the scsetup Quorum Menu and Main Menu.
[Verify the quorum device is removed:]
# scstat -q
 
-- Quorum Summary --
 
  Quorum votes possible:      3
  Quorum votes needed:        2
  Quorum votes present:       3
 
-- Quorum Votes by Node --
 
                    Node Name           Present Possible Status
                    ---------           ------- -------- ------
  Node votes:       phys-schost-1       1        1       Online
  Node votes:       phys-schost-2       1        1       Online
 
-- Quorum Votes by Device --
 
                 Device Name         Present Possible Status
                 -----------         ------- -------- ------
  Device votes:  /dev/did/rdsk/d3s2  1        1       Online

如何從叢集移除最後一個法定裝置

如果您要移除的裝置不是叢集中的最後一個法定裝置,請使用上一個程序,如何移除法定裝置


註解 –

所有二個節點的叢集都需要至少一個已配置的法定裝置。 如果這是兩個節點叢集上的最後一個法定裝置,叢集必須先進入安裝模式,scconf( 1M) 才會容許您從配置移除裝置。 只有在要從叢集移除節點時,才需要這樣做。


  1. 成為叢集中任何節點的超級使用者,並使要移除的節點進入維護狀態。

    請參閱如何使節點進入維護狀態

  2. 使叢集進入安裝模式。


    # scconf -c -q installmode
    

  3. 使用 scconf 指令移除法定裝置。

    當叢集處於安裝模式中時,無法使用 scsetup(1M) 叢集管理功能表選項。


    # scconf -r -q globaldev=device
    

  4. 確認法定裝置移除成功。


    # scstat -q
    

範例—移除最後一個法定裝置

這個範例顯示如何移除叢集配置中最後一個保留的法定裝置。


[Become superuser on any node.]
[Place the cluster in install mode:]
# scconf -c -q installmode
[Remove the quorum device:]
# scconf -r -q globaldev=d3
[Verify the quorum device has been removed:]
# scstat -q
 
-- Quorum Summary --
 
  Quorum votes possible:      2
  Quorum votes needed:        2
  Quorum votes present:       2
 
-- Quorum Votes by Node --
 
                    Node Name           Present Possible Status
                    ---------           ------- -------- ------
  Node votes:       phys-schost-1       1        1       Online
  Node votes:       phys-schost-2       1        1       Online
 
-- Quorum Votes by Device --
 
                    Device Name         Present Possible Status
                    -----------         ------- -------- ------

如何取代法定裝置

  1. 在目前含有要更換之磁碟的儲存裝置上配置新的法定裝置。

    您必須先新增新的法定裝置到配置中,以取代舊的裝置。 請參閱如何新增法定裝置,以將新的法定裝置新增到叢集。

  2. 移除當作法定裝置的故障磁碟。

    請參閱 如何移除法定裝置,以便從配置移除舊的法定裝置。

  3. 置換故障的磁碟。

    請參閱Sun Cluster Hardware Administration Manual for Solaris OS 中有關磁碟密封的硬體程序。

如何修改法定裝置節點清單

您可以使用 scsetup(1M) 公用程式,在現有法定裝置的節點清單中新增或移除節點。 若要修改法定裝置的節點清單,您必須移除法定裝置、修改節點與要移除的法定裝置之間的實體連接,然後再次新增法定裝置到叢集配置。 在新增法定裝置後,scconf(1M) 會自動替所有附加到磁碟的節點配置節點至磁碟的路徑。

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

  2. 確認您要修改的法定裝置名稱。


    # scconf -p | grep Quorum
    

  3. 輸入 scsetup 公用程式。


    # scsetup
    

    顯示 Main Menu。

  4. 請鍵入 1 (法定) 以使用法定裝置。

    顯示 Quorum Menu。

  5. 請鍵入 2 (移除法定磁碟) 以移除法定裝置。

    依照指示進行。 系統會要求您輸入要移除的磁碟名稱。

  6. 新增或刪除到法定裝置的實體節點連線。

  7. 請鍵入 1 (新增法定磁碟) 以新增法定裝置。

    依照指示進行。 系統會要求您輸入用來作為法定裝置的磁碟名稱。

  8. 確認法定裝置新增成功。


    # scstat -q
    

範例—修改法定裝置節點清單

以下範例顯示如何使用 scsetup 公用程式在法定裝置節點清單上新增或移除節點。 在這個範例中,法定裝置名稱為 d2,而此程序的最後結果是新增另一個節點到法定裝置節點清單。


[Become superuser on any node in the cluster.]
[Determine the quorum device name:]
# scconf -p | grep Quorum
Quorum devices:                                    d2
Quorum device name:                                d2
  Quorum device votes:                             1
  Quorum device enabled:                           yes
  Quorum device name:                              /dev/did/rdsk/d2s2
  Quorum device hosts (enabled):                   phys-schost-1 phys-schost-2
  Quorum device hosts (disabled): 
[Execute the utility:]
# scsetup
Type 1 (Quorum).
Type 2 (Remove a quorum disk).
Answer the questions when prompted.
   You Will Need:         Example:
   quorum device name     d2
[Verify that the scconf command completed successfully:]
 
scconf -r -q globaldev=d2
Command completed successfully.

Type 1 (Quorum).
Type 1 (Add a quorum disk).
Answer the questions when prompted.
   You Will Need:         Example:
   quorum device name     d2

[Verify that the scconf command completed successfully:] 

scconf -a -q globaldev=d2
Command completed successfully.

Quit the scsetup utility.
[Verify that the correct nodes have paths to the quorum device. 
In this example, note that phys-schost-3 has been added to the 
enabled hosts list.]
# scconf -p | grep Quorum
Quorum devices:                                    d2
Quorum device name:                                d2
  Quorum device votes:                             2
  Quorum device enabled:                           yes
  Quorum device name:                              /dev/did/rdsk/d2s2
  Quorum device hosts (enabled):                   phys-schost-1 phys-schost-2
                                                   phys-schost-3
  Quorum device hosts (disabled): 
[Verify that the modified quorum device is online.]
# scstat -q
-- Quorum Votes by Device --
                    Device Name         Present Possible Status
                    -----------         ------- -------- ------
  Device votes:     /dev/did/rdsk/d2s2  1        1       Online
[Verify the quorum device is removed:]
# scstat -q
 
-- Quorum Summary --
 
  Quorum votes possible: 4
  Quorum votes needed:   3
  Quorum votes present:  4
 
-- Quorum Votes by Node --
 
                    Node Name           Present Possible Status
                    ---------           ------- -------- ------
  Node votes:       phys-schost-1       1        1       Online
  Node votes:       phys-schost-2       1        1       Online
 
-- Quorum Votes by Device --
 
                 Device Name         Present Possible Status
                 -----------         ------- -------- ------
  Device votes:  /dev/did/rdsk/d3s2  1        1       Online
  Device votes:  /dev/did/rdsk/d4s2  1        1       Online

如何使法定裝置進入維護狀態

使用 scconf(1M) 指令使法定裝置進入維護狀態。 scsetup( 1M) 公用程式目前無此能力。 您也可以使用 SunPlex Manager GUI 來完成此程序。 請參閱 SunPlex Manager 線上說明,以取得詳細資訊。

在停止法定裝置的服務時使法定裝置進入維護狀態,直到延展的寬限期為止。 這樣,在維護裝置時,法定票數將設成零,同時也不會影響法定票數計數。 在維護狀態時會保留法定裝置的配置資訊。


註解 –

所有二個節點的叢集都需要至少一個已配置的法定裝置。 如果這是兩個節點叢集上的最後一個法定裝置,scconf 將無法成功地使裝置進入維護狀態。


若要使叢集節點進入維護狀態,請參閱如何使節點進入維護狀態

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

  2. 使法定裝置進入維護狀態。


    # scconf -c -q globaldev=device,maintstate
    

    -c

    指定 scconf 指令的變更形式。

    -q

    管理法定選項。

    globaldev=device

    指定要變更的磁碟裝置的 DID 名稱,例如 d4

    maintstate

    使法定裝置進入維護狀態。

  3. 確認法定裝置現在已經進入維護狀態。

    對於設定為維護狀態的裝置的輸出,法定裝置投票數應該為零。


    # scconf -p | grep -i quorum
    

範例—使法定裝置進入維護狀態

以下範例顯示如何使法定裝置進入維護狀態,以及如何確認其結果。


# scconf -c -q globaldev=d20,maintstate
# scconf -p | grep -i quorum
  Node quorum vote count:                          1
  Node quorum vote count:                          1
Quorum devices:                                    d20
Quorum device name:                                d20
  Quorum device votes:                             0
  Quorum device enabled:                           no
  Quorum device name:                              /dev/did/rdsk/d20s2
  Quorum device hosts (enabled):                   phys-schost-2 phys-schost-3
  Quorum device hosts (disabled): 

下一步

若要重新啟用法定裝置,請參閱 如何使法定裝置離開維護狀態

若要使節點進入維護狀態,請參閱如何使節點進入維護狀態

如何使法定裝置離開維護狀態

在法定裝置進入維護狀態之後又回到線上時,請使用以下程序將法定票數重新設定為預設值。 對於叢集節點,預設法定票數為一。 對於法定裝置,預設法定票數是 N-1,其中 N 為具有非零票數之節點的數目,這些節點和法定裝置之間有埠相連。

您應該在任何時候法定裝置進入維護狀態而您要使它離開維護狀態時,執行這個程序。


小心 – 小心 –

如果您未指定 globaldevnode 選項,整個叢集的法定票數都會被重新設定。


要使叢集節點及其相關法定裝置離開維護狀態,請參閱 如何使節點離開維護狀態

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

  2. 重新設定法定票數。


    # scconf -c -q globaldev=device,reset
    

    -c

    指定 scconf 指令的變更形式。

    -q

    管理法定選項。

    globaldev=device

    指定要重設之法定裝置的 DID 名稱,例如 d4

    reset

    重設法定數目的變更旗號。

  3. 如果您因為節點進入維護狀態而要重設法定票數,請重新啟動節點。

  4. 驗證法定票數。


    # scconf -p | grep -i quorum
    

範例—重設法定票數 (法定裝置)

以下範例將法定裝置的法定票數重設為預設值,同時驗證結果。


# scconf -c -q globaldev=d20,reset
# scconf -p | grep -i quorum
  Node quorum vote count:                          1
  Node quorum vote count:                          1
Quorum devices:                                    d20
Quorum device name:                                d20
  Quorum device votes:                             1
  Quorum device enabled:                           yes
  Quorum device name:                              /dev/did/rdsk/d20s2
  Quorum device hosts (enabled):                   phys-schost-2 phys-schost-3
  Quorum device hosts (disabled): 

如何列示法定配置

您也可以使用 SunPlex Manager GUI 來完成此程序。 請參閱 SunPlex Manager 線上說明,以取得詳細資訊。

您不必是超級使用者也能列示法定配置。


註解 –

當您增加或減少附加至法定裝置的節點數目時,法定票數不會自動重新計算。 如果您移除所有的法定裝置,然後又將其重新加入至配置,您就可以重新建立正確的法定票數。


    使用 scconf(1M) 來列示法定配置。


    # scconf -p | grep -i quorum
    

範例—列示法定配置


# scconf -p | grep “Quorum | vote”
 Node quorum vote count:                           1
 Node quorum vote count:                           1
Quorum devices:                                    d20
Quorum device name:                                d20
  Quorum device votes:                             1
  Quorum device enabled:                           yes
  Quorum device name:                              /dev/did/rdsk/d20s2
  Quorum device hosts (enabled):                   phys-schost-2 phys-schost-3
  Quorum device hosts (disabled):