每一個叢集節點均需要建立 rootdg 磁碟群組。此磁碟群組是由 VxVM 所用來儲存配置資訊,而且有下列的限制。
存取節點的 rootdg 磁碟群組,需限制僅存取該節點。
遠端節點無法存取儲存於另一個節點的 rootdg 的資料。
請勿使用 scconf(1M) 指令,將 rootdg 磁碟群組註冊為共用磁碟群組。
儘可能將每一個節點的 rootdg 配置於非共用磁碟上。
Sun Cluster 軟體支援下列配置 rootdg 磁碟群組的方法。
封裝節點的根磁碟 - 此方法可以鏡映根磁碟,當根磁碟毀損或損壞時可以啟動 另一個磁碟。根磁碟封裝需要兩個可用磁碟片段以及可用的磁柱,最好是在磁碟的開頭或結尾。
使用區域、非根磁碟 - VxVM 可以 起始設定或封裝區域磁碟作為 rootdg,實際上建立對該節點而言是區域的磁碟群組 (非全域可存取或高可用性)。對於根磁碟,封裝非根磁碟需要兩個可用磁碟片段以及在磁碟開頭或結尾的可用的磁柱。
請參照 VxVM 安裝文件以取得其他資訊。
使用本程序以封裝根磁碟來建立 rootdg 磁碟群組。
取得 VERITAS 容體管理者 (VxVM) 授權碼。
成為叢集中節點的高階使用者。
確定根磁碟至少有兩個具 0 磁柱的片段,並且在磁碟結尾或開頭有一或多個可用磁柱。
必要時,使用 format(1M) 指令,指定每一個 VxVM 片段的 0 磁柱區域。如果片段 7 保留供容體管理者使用,格式化片段 7 也會在磁碟結尾處釋出所需的額外空間。
啟動 vxinstall(1M) 公用程式。
# vxinstall |
選擇「自訂安裝」。
封裝根磁碟。
選擇根磁碟名稱,此名稱在叢集中需是唯一的。命名根磁碟的一種簡單方式 是在預設名稱上加上額外的字母。
例如,如果預設名稱是 rootdisk, 則第一個節點的根磁碟命名為 rootdiska,下一個節點命名為 rootdiskb,以此類推。
請不要在增加任何其它磁碟到 rootdg 磁碟群組。
對任何其它的控制器,請選擇 4 (不理會這些磁碟)。
請不要接受關機並重新開機。
請參照 VxVM 安裝文件以取詳細資訊。
因為動態多重路徑 (DMP) 已停用,可能會產生類似下列的錯誤訊息。您可以忽略該訊息。
vxvm:vxdmpadm: ERROR: vxdmp module is not loaded on the system. Command invalid. |
編輯 /global/.devices/node@nodeid 檔案系統的 /etc/vfstab 檔案裝置名稱。
您需要進行這項修改,使 VxVM 可以辨識根磁碟上有 /global/.devices/node@nodeid 檔案系統。
以 /globaldevices 項目中使用的名稱 (標示為註釋)來 取代現存的裝置名稱。例如,考慮下列 /globaldevices 和 /global/.devices/node@2 的 /etc/vfstab 檔案項目。
#device device mount FS fsck mount mount #to mount to fsck point type pass at boot options ... #/dev/dsk/c1t3d0s3 /dev/rdsk/c1t3d0s3 /globaldevices ufs 2 yes - ... /dev/did/dsk/d4s3 /dev/did/rdsk/d4s3 /global/.devices/node@2 ufs 2 no global |
您要將 /global/.devices/node@2 的登錄項目變更如下。
#device device mount FS fsck mount mount #to mount to fsck point type pass at boot options ... #/dev/dsk/c1t3d0s3 /dev/rdsk/c1t3d0s3 /globaldevices ufs 2 yes - ... /dev/dsk/c1t3d0s3 /dev/rdsk/c1t3d0s3 /global/.devices/node@2 ufs 2 no global |
在某個節點上使用 scshutdown(1M) 指令關閉叢集。
# scshutdown |
在非叢集模式下,將每個節點重新開機。
在每個節點執行下列指令,在非叢集模式下,重新啟動。
ok boot -x |
請不要在叢集模式下,將節點重新啟動。
如果節點顯示類似下列的訊息,請按下 Control-D,繼續開機。
忽略要手動執行 fsck 的指示。而是,按下 Control-D 繼續開機並完成未完成的根磁碟封裝程序。
WARNING - Unable to repair the /global/.devices/node@1 filesystem. 手動執行 fsck (fsck -F ufs /dev/vx/rdsk/rootdisk3vola)。 完成後退出 shell 以繼續啟動程序。 按下 control-d 繼續正常的啟動, (或輸入系統維護的根密碼): |
/global/.devices/node@nodeid 檔案系統 仍需要做另外的變更,叢集才能裝設於全域每一個節點。由於這種限制,所以在重開機期間,只有一個節點可以裝設 /global/.devices/node@nodeid 檔案系統, 因此會產生警告訊息。
VxVM 封裝根磁碟和更新 /etc/vfstab 登錄。
解除裝設在 步驟 8 中成功裝設的 /global/.devices/node@nodeid 的檔案系統。
# umount /global/.devices/node@nodeid |
解除裝設此檔案系統,可讓您重新指定在 步驟 10 間磁碟群組的次要號碼, 不需要重新啟動節點兩次,就可以起始變更設定。此檔案系統會在 步驟 14 期間重新開機時自動重新裝設。
重新指定叢集每一個節點上 rootdg 磁碟群組的次要號碼。
指定叢集中唯一而且小於 1000 的 rootdg 的次要號碼,以防止該次要號碼 與共用磁碟群組衝突。有效重新指定次要號碼的一個機制,是在第一個節點指定 100,第二個節點指定 200,以此類推。
# vxdg reminor rootdg n |
指定 rootdg 次要號碼
在執行這個指令之後,可能會顯示類似下列的警告訊息。 您可以忽略此訊息。
vxvm:vxdg: WARNING: Volume swapvol: Device is open, will renumber on reboot |
新的次要號碼已套用至根磁碟容體。交換容體在您重開機後會重新編號。
# ls -l /dev/vx/dsk/rootdg total 0 brw------- 1 root root 55,100 Apr 4 10:48 rootdiska3vol brw------- 1 root root 55,101 Apr 4 10:48 rootdiska7vol brw------- 1 root root 55, 0 Mar 30 16:37 rootvol brw------- 1 root root 55, 7 Mar 30 16:37 swapvol |
在叢集的每一個節點,如果 /usr 檔案系統沒有與根 (/) 檔案系統同在根磁碟上,請手動更新 /usr 容體的裝置節點。
刪除現存的 /usr 裝置節點。
# rm /dev/vx/dsk/usr # rm /dev/vx/dsk/rootdg/usr # rm /dev/vx/rdsk/usr # rm /dev/vx/rdsk/rootdg/usr |
決定要指派給 /usr 檔案系統的新的次要號碼。
# vxprint -l -v usrvol Disk group: rootdg Volume: usrvol ... device: minor=102 bdev=55/102 cdev=55/102 path=/dev/vx/dsk/rootdg/usrvol |
使用新的次要號碼建立 /usr 裝置節點。
# mknod /dev/vx/dsk/usr b major_number new-minor-number # mknod /dev/vx/dsk/rootdg/usr b major_number new-minor-number # mknod /dev/vx/rdsk/usr c major_number new-minor-number # mknod /dev/vx/rdsk/rootdg/usr c major_number new-minor-number |
在叢集的每一個節點,如果 /var 檔案系統沒有與根 (/) 檔案系統同在根磁碟上,請手動更新 /var 容體的裝置節點。
刪除現存的 /var 裝置節點。
# rm /dev/vx/dsk/var # rm /dev/vx/dsk/rootdg/var # rm /dev/vx/rdsk/var # rm /dev/vx/rdsk/rootdg/var |
決定要/var檔案系統的新的次要號碼。
# vxprint -l -v usrvol Disk group: rootdg Volume: usrvol ... device: minor=103 bdev=55/102 cdev=55/102 path=/dev/vx/dsk/rootdg/usrvol |
使用新的次要號碼建立 /var 裝置節點。
# mknod b /dev/vx/dsk/var major_number new-minor-number # mknod b /dev/vx/dsk/rootdg/var major_number new-minor-number # mknod c /dev/vx/rdsk/var major_number new-minor-number # mknod c /dev/vx/rdsk/rootdg/var major_number new-minor-number |
在某一個節點上關閉叢集。
# scshutdown |
在叢集模式下,將啟動每個節點。
ok boot |
(選擇性的) 鏡映叢集每一個節點上的根磁碟。
請參照 VxVM 文件以取得鏡映根的磁碟的說明。
如果您鏡映根磁碟,請在叢集每一個節點上,啟用與鏡映根磁碟相關的原始磁碟裝置 的 localonly 屬性。
對於各節點,請配置不同的原始磁碟裝置群組,以便節點可專用於鏡映根磁碟。您必須啟用 localonly 屬性,在啟動裝置連接多個節點時, 可以避免在無意中將節點與其啟動裝置隔離。
# scconf -c -D name=rawdisk_groupname,localonly=true |
請指定原始磁碟裝置群組的叢集唯一名稱
使用 scdidadm -L 指令顯示原始磁碟裝置群組完整裝置的 ID (DID) 虛擬驅動程式名稱。在下列範例中,原始磁碟裝置群組名稱 dsk/d1 是從輸出第三欄 (完整 DID 虛擬驅動程式名稱) 中擷取出來的。此項 scconf 指令接著便會配置 dsk/d1 原始磁碟裝置,以便由節點 phys-schost-3 來專用於鏡映其根磁碟。
# scdidadm -L ... 1 phys-schost-3:/dev/rdsk/c0t0d0 /dev/did/rdsk/d1 phys-schost-3# scconf -c -D name=dsk/d1,localonly=true |
有關 localonly 屬性的其他資訊,請參照 scconf_dg_rawdisk(1M) 線上援助頁。
若要建立共用磁碟群組,請至 "如何建立和註冊共用磁碟群組"。