MFS分佈式文件系統的管理和使用維護(二)

    MFS的管理和使用

 1.mfsgetgoal和mfssetgoal命令

 goal是指文件被複制的份數,設定了複製的份數後就可以通過mfsgetgoal命令來證實,也可以通過

mfssetgoal來改變設定

 /usr/local/mfs/bin/mfssetgoal 3 /mnt/mfs/wq.txt
 /mnt/mfs/wq.txt: 3

 /usr/local/mfs/bin/mfsgetgoal /mnt/mfs/wq.txt
 /mnt/mfs/wq.txt: 3
 

 也可以使用-r 對整個目錄進行遞歸操作
 /usr/local/mfs/bin/mfssetgoal -r 5 /mnt/mfs/dir/

 2.實際的副本數可以通過mfscheckfile和 mfsfileinfo命令來實現
  /usr/local/mfs/bin/mfscheckfile /mnt/mfs/test.txt
   /mnt/mfs/test.txt:
   2 copies: 1 chunks

  /usr/local/mfs/bin/mfsfileinfo /mnt/mfs/test.txt
/ mnt/mfs/test.txt:
        chunk 0: 0000000000000002_00000001 / (id:2 ver:1)
                copy 1: 192.168.0.162:9422
                copy 2: 192.168.0.163:9422

 注意,如果一個不包含數據的零長度文件,雖然沒有被設置爲非零目標但是查詢後將返回一個空的結果


 3.mfsdirinfo
  整個目錄的內容摘要可以通過一個類似 du -s的命令mfsdirinfo來實現
   /usr/local/mfs/bin/mfsdirinfo /mnt/mfs/dir/
/mnt/mfs/dir/:
 inodes:                          2
  directories:                    1
  files:                          1
 chunks:                          1
 length:                          5
 size:                        70656
 realsize:                   353280

 
 4.爲垃圾箱設定隔離時間
 刪除的文件存放在垃圾箱的時間就是隔離時間,這個時間可以用mfssettrashtime命令來設置,也可以用

mfsgettrashtime命令來設置
 
  /usr/local/mfs/bin/mfsgettrashtime /mnt/mfs/dir/2.txt
  /mnt/mfs/dir/2.txt: 86400
  /usr/local/mfs/bin/mfssettrashtime 604800 /mnt/mfs/dir/2.txt
  /mnt/mfs/dir/2.txt: 604800
  /usr/local/mfs/bin/mfsgettrashtime /mnt/mfs/dir/2.txt
  /mnt/mfs/dir/2.txt: 604800

  依然可以用-r遞歸選項來對整個目錄操作
  /usr/local/mfs/bin/mfsgettrashtime -r /mnt/mfs/dir/
   /usr/local/mfs/bin/mfssettrashtime -r 604800 /mnt/mfs/dir/
/mnt/mfs/dir/:
 inodes with trashtime changed:                        1
 inodes with trashtime not changed:                    1
 inodes with permission denied:                        0

  /usr/local/mfs/bin/mfsgettrashtime -r /mnt/mfs/dir/
/mnt/mfs/dir/:
 files with trashtime            604800 :                    1
 directories with trashtime      604800 :                    1


  以上的單位時間是秒,如果設定的數字是0的話,則意外着立即刪除,不可能再恢復了

 刪除的文件可以通過一個單獨安裝的mfsmeta輔助文件系統來恢復




需要注意的是被刪除的文件時全路徑文件名時,一定要使用單引號引起來,如果在同一路徑下有個新的同名文件名 那麼恢復將是不成功的

  

5.維護MFS
 
      維護mfs最重要的是維護元數據服務器的/usr/local/mfs/var/mfs/,MFS的存儲修改更新等操作變化都

會記錄在這個目錄中,因此只要保證這個目錄的數據安全就能保證整個MFS的數據安全和可靠性。

   啓動mfs集羣的順序。安全的啓動順序步驟爲:
   啓動mfsmaster->啓動所有的mfschunkserver->啓動mfsmetalogger進程

   停止mfs集羣
   在所有的客戶端卸載mfs文件系統 -> mfschunkserver -s停止所有的數據存儲進程 -> mfsmetalogger -s 停止元數據日誌服務進程 -> mfsmaster -s 停止管理服務器進程

   數據存儲服務器的維護,如果每個文件的goal目標都不小於2,並且沒有under-goal文件,那麼一個數據存儲服務器在任何時候都可以停止或重新啓動
 
  mfs管理服務器的恢復
  如果元管理服務器崩潰,需要最後一個元數據改變的日誌changelog和主要元數據文件metadat.mfs,這個

操作可以通過mfsmetarestore工具來完成
         mfsmetarestore -a
 執行此命令後會默認在/usr/local/mfs/var/mfs目錄自動尋找需要改變的日誌文件和主要的元數據,mfsmetarestore在命令恢復時自動查找的是metadata.mfs.back文件。


  從備份恢復MFS管理服務器步驟如下
  1)安裝一個元管理服務器利用同樣的配置來配置這臺服務器
  2)找回metadata.mfs.back文件,也可以從啓動的元數據日誌服務器中找,放到數據目錄如/usr/local/mfs/var/mfs/
  3)從元管理服務器宕機之前的任何運行元數據日誌服務器上覆制最後一個changelog.*.mfs文件放入元管理服務器的數據目錄
  4) 利用 mfsmetarestore -a 來恢復
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章