叢集檔案系統是一個可以從叢集的任一節點讀取與存取的全域可用檔案系統。
表 5–4 對應作業:管理叢集檔案系統
作業 |
操作說明 |
---|---|
藉由使用 newfs(1M) 和 mkdir 來在初始 Sun Cluster 安裝後增加叢集檔案系統。 | |
藉由使用 fuser(1M) 和 umount(1M) 來移除叢集檔案系統 | |
藉由使用 sccheck(1M) 來跨節點檢查叢集中全域掛載點的一致性 |
初次安裝 Sun Cluster 後,請對建立的每一個叢集檔案系統執行這個程序。
請務必指定正確的磁碟裝置名稱。建立叢集檔案系統會毀損該磁碟中的所有資料。如果您指定錯誤的裝置名稱,您可能會消除不想刪除的資料。
請確保下列必要條件已在增加額外的叢集檔案系統前完成。
超級使用者權限建立於叢集中的節點上。
磁碟區管理程式軟體已安裝在叢集上,並且已經配置好了。
會有裝置群組 (Solaris Volume Manager裝置群組或 VxVM 裝置群組) 或區塊磁碟片段,以便在其上建立叢集檔案系統。
如果您已使用 Sun Cluster Manager 來安裝資料服務,而且有足夠用來建立叢集檔案系統的共用磁碟,那麼就已經有一個或多個叢集檔案系統存在了。
此程序提供長形式的 Sun Cluster 指令。大多指令也有短的形式。除了指令名稱有長形式和短形式之分外,指令本身是相同的。如需指令及其短形式的清單,請參閱附錄 ASun Cluster 以物件為導向的指令。
成為叢集中任何節點的超級使用者。
若要快速建立檔案系統,請在您想建立檔案系統之全域裝置的現行主要節點上成為超級使用者。
使用 newfs 指令建立檔案系統。
newfs 指令只有在建立新的 UFS 檔案系統時才有效。要建立新的 VxFS 檔案系統,請遵循 VxFS 說明文件中所列的程序。
# newfs raw-disk-device |
下表顯示 raw-disk-device 引數的名稱範例。請注意,每個磁碟區管理程式的命名慣例都不一樣。
磁碟區管理程式 |
磁碟裝置名稱 |
說明 |
---|---|---|
Solaris Volume Manager |
/dev/md/oracle/rdsk/d1 |
oracle 磁碟組中的原始磁碟裝置 d1。 |
SPARC:VERITAS Volume Manager |
/dev/vx/rdsk/oradg/vol01 |
原始磁碟裝置 vol01,在 oradg 磁碟組內 。 |
無 |
/dev/global/rdsk/d1s3 |
區塊片段 d1s3 的原始磁碟裝置。 |
在叢集的每個節點上,建立叢集檔案系統的掛載點目錄。
每一個節點均需要一個裝載點,即使不會從此節點存取叢集檔案系統。
為了方便管理,請在 /global/裝置群組目錄內建立掛載點。這個位置可讓您容易區分叢集檔案系統是全域可用或本機檔案系統。
# mkdir -p /global/devicegroup mountpoint |
與包含裝置的裝置群組名稱相對應的目錄名稱。
要裝載叢集檔案系統的目錄名稱。
在叢集的每一個節點上,將裝載點的項目加入 /etc/vfstab 檔。
使用下列的必要裝載選項。
記錄對所有的叢集檔案系統是必要的。
Solaris UFS 記錄 –使用 global,logging 掛載選項。請參閱 mount_ufs(1M) 線上手冊,以取得有關 UFS 掛載選項的更多資訊。
syncdir 裝載選項對於 UFS 叢集檔案系統而言並非必要。如果指定 syncdir,您可以獲得保證的 POSIX 相容檔案系統功能。如果沒有指定,您會發現功能將會與 UFS 檔案系統相同。當未指定 syncdir 時,可以明顯地增進配置磁碟區塊的寫入功能,例如在檔案中附加資料的情況時。但在某些情況下,如果沒有 syncdir,除非您關閉檔案,否則將不會發現空間不足的狀況。因為沒有指定 syncdir 而發生問題,這種機率非常小。使用 syncdir (和 POSIX 功能),在關閉之前就可發現空間不足的狀況。
Solaris Volume Manager 作業事件磁碟區 – 使用 global 裝載選項 (勿使用 logging 裝載選項)。請參閱 Solaris Volume Manager 文件以取得有關設定作業事件磁碟區的資訊。
未來的 Solaris 軟體發行版本將從 Solaris 作業系統中移除作業事件磁碟區。Solaris UFS 登入提供與其相同的功能,且效能更優、系統管理需求更低、管理費用更少。
VxFS 記錄 – 使用 global 和 log 掛載選項。請參閱 VxFS 軟體隨附的 mount_vxfs 線上說明手冊,以取得詳細資訊。
若要自動裝載叢集檔案系統,請將 mount at boot 欄位設定為 yes。
對每一個叢集檔案系統,確定其 /etc/vfstab 項目中的資訊在每一個節點上都相同。
請確定每一個節點的 /etc/vfstab 檔案中的項目是以相同次序列示裝置。
檢查檔案系統的啟動順序相依關係。
例如,考慮以下情況,phys-schost-1 裝載磁碟裝置 d0 到 /global/oracle 上,而 phys-schost-2 則裝載磁碟裝置 d1 到 /global/oracle/logs 上。使用此配置,phys-schost-2 只有在 phys-schost-1 啟動並掛載 /global/oracle 後才能夠啟動並掛載 /global/oracle/logs。
請參閱 vfstab(4) 線上援助頁,以取得詳細資訊。
在叢集的任一個節點上,驗證裝載點存在而且 /etc/vfstab 檔案項目在叢集的所有節點上都正確。
# sccheck |
如果沒有發生錯誤,則不會傳回任何項目。
從叢集的任一節點裝載叢集檔案系統。
# mount /global/devicegroup mountpoint |
在叢集的每一個節點上,驗證叢集檔案系統已經裝載。
您可以使用 df 或 mount 指令來列出已裝載的檔案系統。
若要在 Sun Cluster 環境中管理 VxFS 叢集檔案系統,您只能從裝載 VxFS 叢集檔案系統的主要節點上執行管理指令。
以下範例可以在 Solaris Volume Manager 中介裝置或磁碟區 /dev/md/oracle/rdsk/d1 上建立 UFS 叢集檔案系統。
# newfs /dev/md/oracle/rdsk/d1 ... [在每個節點:] # mkdir -p /global/oracle/d1 # vi /etc/vfstab #device device mount FS fsck mount mount #to mount to fsck point type pass at boot options # /dev/md/oracle/dsk/d1 /dev/md/oracle/rdsk/d1 /global/oracle/d1 ufs 2 yes global,logging [儲存並結束] [在每個節點:] # sccheck # mount /dev/md/oracle/dsk/d1 /global/oracle/d1 # mount ... /global/oracle/d1 on /dev/md/oracle/dsk/d1 read/write/setuid/global/logging/largefiles on Sun Oct 3 08:56:16 2001 |
您只要執行卸載,便可以移除叢集檔案系統。如果您還要移除或刪除資料,請從系統移除基礎磁碟裝置 (或中介裝置或磁碟區)。
當您執行 cluster shutdown 來停止整個叢集時,叢集檔案系統會自動卸載,當作系統關機序的一部份。當您執行 shutdown 以停止單一節點時,不會卸載叢集檔案系統。不過,如果要關機的節點是唯一連到磁碟的節點,則對該磁碟上叢集檔案系統的任何存取都會導致錯誤。
請確保在卸載叢集檔案系統前已完成下列先決條件:
超級使用者權限建立於叢集中的節點上。
檔案系統並不忙碌。如果使用者在檔案系統的某個目錄中工作,或者程式使該檔案系統中的某個檔案處於開啟狀態,則該檔案系統被視為處於工作狀態。使用者或程式不可以在叢集的任一個節點上執行。
成為叢集中任何節點的超級使用者。
判斷哪些叢集檔案系統已經裝載。
# mount -v |
在每一個節點上,列出正在使用叢集檔案系統的所有程序,這樣一來,您即可知道要停止哪個程序。
# fuser -c [ -u ] mountpoint |
產生檔案系統之裝載點以及所裝載之檔案系統內之檔案的報告。
(選用性) 顯示每一個處理 ID 的使用者登入名稱。
指定您要停止處理的叢集檔案系統名稱。
在每一個節點上,停止叢集檔案系統的所有處理。
請使用慣用的方法停止處理。如果必要,請使用以下指令來強迫結束與叢集檔案系統關聯的處理。
# fuser -c -k mountpoint |
將會傳送 SIGKILL 給每一個使用叢集檔案系統的程序。
在每個節點上,確認沒有其他程序正在使用檔案系統。
# fuser -c mountpoint |
僅從一個節點卸載檔案系統。
# umount mountpoint |
指定您要卸載的叢集檔案系統名稱,這可以是裝載叢集檔案系統的目錄名稱,也可以是檔案系統的裝置名稱路徑。
(選用) 編輯 /etc/vfstab 檔,刪除要移除之叢集檔案系統的項目。
請對每一個 /etc/vfstab 檔中含有該叢集檔案系統項目的叢集節點,執行這個步驟。
(可選擇) 移除磁碟裝置 group/metadevice/volume/plex。
請參閱磁碟區管理程式說明文件,以取得詳細資訊。
以下範例會移除 Solaris Volume Manager 中介裝置或磁碟區 /dev/md/oracle/rdsk/d1 上掛載的 UFS 叢集檔案系統。
# mount -v ... /global/oracle/d1 on /dev/md/oracle/dsk/d1 read/write/setuid/global/logging/largefiles # fuser -c /global/oracle/d1 /global/oracle/d1: 4006c # fuser -c -k /global/oracle/d1 /global/oracle/d1: 4006c # fuser -c /global/oracle/d1 /global/oracle/d1: # umount /global/oracle/d1 (在每個節點,移除反白的項目:) # vi /etc/vfstab #device device mount FS fsck mount mount #to mount to fsck point type pass at boot options # /dev/md/oracle/dsk/d1 /dev/md/oracle/rdsk/d1 /global/oracle/d1 ufs 2 yes global,logging [儲存並結束。] |
要移除叢集檔案系統上的資料,請移除其基礎裝置。請參閱磁碟區管理程式說明文件,以取得詳細資訊。
sccheck(1M) 公用程式會驗證 /etc/vfstab 檔案中叢集檔案系統項目的語法。如果沒有發生錯誤,則不會傳回任何項目。
請在進行影響裝置或磁碟區管理元件的叢集配置變更 (例如移除叢集檔案系統) 後執行 sccheck。