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

Procedure如何鏡像根 (/) 檔案系統

請使用此程序鏡像根 (/) 檔案系統。


備註 –

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


  1. 成為超級使用者。

  2. 將根磁碟片段放置於單一磁碟片段 (單向) 鏈結中。

    指定根磁碟片段的實體磁碟名稱 (cNtXdY sZ)。


    phys-schost# metainit -f submirror1 1 1 root-disk-slice
    
  3. 建立第二個鏈結。


    phys-schost# metainit submirror2 1 1 submirror-disk-slice
    
  4. 建立只含一個子鏡像的單向鏡像。


    phys-schost# metainit mirror -m submirror1
    

    備註 –

    若裝置為用於掛載全域裝置檔案系統 /global/.devices/node@nodeid 的本機裝置,則鏡像的磁碟區名稱在整個叢集中必須是唯一的。


  5. 設定根 (/) 目錄的系統檔案。


    phys-schost# metaroot mirror
    

    這個指令編輯 /etc/vfstab/etc/system 檔,讓系統可以由中介裝置或磁碟區上的 root (/) 檔案系統啟動。若需更多資訊,請參閱「metaroot(1M) 線上手冊」。

  6. 清除所有的檔案系統。


    phys-schost# lockfs -fa
    

    這個指令將記錄中的所有作業事件並將其寫入所有已掛載 UFS 檔案系統的主檔案系統。若需更多資訊,請參閱「lockfs(1M) 線上手冊」。

  7. 從此節點中移出所有資源群組或裝置群組。


    phys-schost# clnode evacuate from-node
    
    from-node

    指定要撤出資源或裝置群組的節點名稱。

  8. 重新啟動節點。

    這個指令會重新掛載新鏡像的 root (/) 檔案系統。


    phys-schost# shutdown -g0 -y -i6
    
  9. 連接第二子鏡像至鏡像。


    phys-schost# metattach mirror submirror2
    

    如需更多資訊,請參閱「metattach(1M) 線上手冊」。

  10. 若用來鏡像根磁碟的磁碟是實體連接到多個節點 (多重代管),請修改裝置群組的特性以支援將該磁碟當成鏡像使用。

    確認裝置群組符合下列需求:

    • 原始磁碟裝置群組在其節點清單中必須只配置一個節點。

    • 必須已啟用原始磁碟裝置群組的 localonly 特性。若啟動裝置已連接至多個節點,localonly 特性會避免不小心將節點與其啟動裝置隔離開。

    1. 若有必要,請使用 cldevice 指令來決定原始磁碟裝置群組的名稱。


      phys-schost# cldevice show node:/dev/rdsk/cNtXdY
      

      提示 –

      若您是從實體連接到磁碟的節點發出指令,就可以將磁碟名稱指定為 cNtXdY,而非其完整的裝置路徑名稱。


      在下列範例中,原始磁碟裝置群組名稱 dsk/d2 是 DID 裝置名稱的一部分。


      === DID Device Instances ===                   
      
      DID Device Name:                                /dev/did/rdsk/d2
        Full Device Path:                               phys-schost-1:/dev/rdsk/c1t1d0
        Full Device Path:                               phys-schost-3:/dev/rdsk/c1t1d0
      …

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

    2. 檢視原始磁碟裝置群組的節點清單。


      phys-schost# cldevicegroup show dsk/dN
      

      裝置群組 dsk/d2 的輸出會與以下畫面類似:


      Device Group Name:                              dsk/d2
      …
        Node List:                                      phys-schost-1, phys-schost-3
      …
        localonly:                                      false
    3. 如果節點清單包含多個節點名稱,則從節點清單中移除已鏡像其根磁碟的節點之外的所有節點。

      原始磁碟裝置群組的節點清單中僅應保留已鏡像其根磁碟的節點。


      phys-schost# cldevicegroup remove-node -n node devicegroup
      
      -n node

      指定要從裝置群組節點清單移除的節點。

    4. 啟用原始磁碟裝置群組的 localonly 特性 (若尚未啟用)。

      啟用 localonly 特性後,原始磁碟裝置群組將由節點清單中的節點專用。當啟動裝置連接到多個節點時,這樣做可避免不小心將節點與其啟動裝置隔離開。


      phys-schost# cldevicegroup set -p localonly=true devicegroup
      
      -p

      設定裝置群組特性的值。

      localonly=true

      啟用裝置群組的 localonly 特性。

      如需有關 localonly 特性的更多資訊,請參閱「cldevicegroup(1CL) 線上手冊」。

  11. 記錄替代啟動路徑,以供將來使用。

    若主要啟動裝置失敗了,您就可以從此替代啟動裝置啟動。如需有關替代啟動裝置的更多資訊,請參閱「Solaris Volume Manager Administration Guide」中的「Special Considerations for Mirroring root (/)」「Solaris Volume Manager Administration Guide」中的「Creating a RAID-1 Volume」


    phys-schost# ls -l /dev/rdsk/root-disk-slice
    
  12. 在叢集中剩餘的每個節點上,重複執行步驟 1步驟 11

    請確定每個掛載全域裝置檔案系統 /global/.devices/node@nodeid 鏡像的磁碟區名稱在整個叢集中是唯一的。


範例 4–2 鏡像根 (/) 檔案系統

下列範例顯示在節點 phys-schost-1 上建立的鏡像 d0,是由分割區 c0t0d0s0 上的子鏡像 d10 和分割區 c2t2d0s0 上的子鏡像 d20 組成。裝置 c2t2d0 是多主機磁碟,因此已啟用 localonly 特性。此範例同時也顯示用來記錄的替代啟動路徑。


phys-schost# metainit -f d10 1 1 c0t0d0s0
d11: Concat/Stripe is setup
phys-schost# metainit d20 1 1 c2t2d0s0
d12: Concat/Stripe is setup
phys-schost# metainit d0 -m d10
d10: Mirror is setup
phys-schost# metaroot d0
phys-schost# lockfs -fa
phys-schost# clnode evacuate phys-schost-1
phys-schost# shutdown -g0 -y -i6
phys-schost# metattach d0 d20
d0: Submirror d20 is attached
phys-schost# cldevicegroup show dsk/d2
Device Group Name:                              dsk/d2
…
  Node List:                                      phys-schost-1, phys-schost-3
…
  localonly:                                     false
phys-schost# cldevicegroup remove-node -n phys-schost-3 dsk/d2
phys-schost# cldevicegroup set -p localonly-true dsk/d2
phys-schost# ls -l /dev/rdsk/c2t2d0s0
lrwxrwxrwx  1 root     root          57 Apr 25 20:11 /dev/rdsk/c2t2d0s0 
–> ../../devices/node@1/pci@1f,0/pci@1/scsi@3,1/disk@2,0:a,raw

接下來的步驟

若要鏡像全域裝置名稱空間 /global/.devices/node@nodeid,請至如何鏡像全域裝置名稱空間

若要鏡像無法卸載的檔案系統,請至如何鏡像無法卸載的 Root (/) 以外的檔案系統

若要鏡像使用者定義的檔案系統,請至如何鏡像無法卸載的檔案系統

否則,請至在叢集中建立磁碟集,以建立磁碟集。

疑難排解

此鏡像程序中的某些步驟可能會導致出現類似 metainit: dg-schost-1: d1s0: not a metadevice 的錯誤訊息。此類錯誤訊息無害並可忽略。