溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Moosefs管理小技巧有哪些

發(fā)布時間:2021-11-02 16:46:13 來源:億速云 閱讀:111 作者:柒染 欄目:系統(tǒng)運維

Moosefs管理小技巧有哪些,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

最近在實際環(huán)境中部署了一套MooseFS系統(tǒng),用于備份和其他之用,在這個過程中又遇到了些問題,于是又重新找來文檔復習理解了一遍,又加深了對MFS的了解,下面是這次學習的點點收獲和大家分享下。

1. 掛載目錄管理

Moosefs系統(tǒng)支持客戶端根據需要掛載對應子目錄;默認不指定-S的話會掛載到根目錄(/)下,當通過df –sh查看空間使用used顯示的是當前整個mfs系統(tǒng)的硬盤使用情況;而掛載子目錄則只會看到目錄的使用情況。具體操作如下:

Shell> mfsmount /mnt –H mfsmaster — 掛載到根目錄(/)下   Shell> mkdir –p /mnt/subdir   Shell> umount /mnt   Shell> mfsmount /mnt –H mfsmaster –S /subdir — 掛載到子目錄(/subdir)下

在Moosefs的管理中,可以找一臺機器作為管理型的client端,在配置文件mfsexports.cfg中限制只有該臺機器可以掛載到根目錄下,同時也可限制只有該臺機器可以掛載metadata目錄(恢復誤刪除時可用到),而其他普通client端,則根據不同業(yè)務的需要讓管理client端為其創(chuàng)建獨立用途的目錄,分別掛載到對應的子目錄下,這樣就可以細化管理控制權限。Mfsexports.cfg的配置如下:

# managing client   192.168.0.2 / rw,alldirs,maproot=0  192.168.0.2 . rw   # for db backup sub-folder   192.168.0.20 /backup/db rw.maproot=0  # for image sub-folder   192.168.0.30 /app/image rw.maproot=0

2. 客戶端重啟后自動掛載mfs目錄

Shell> vi /etc/rc.local   /sbin/modprobe fuse   /usr/bin/mfsmount /mnt1 -H mfsmaster -S /backup/db   /usr/bin/mfsmount /mnt2 -H mfsmaster -S /app/image

Moosefs官方網頁上有提到,1.6.x以上的版本還可以通過/etc/fstab的方式,系統(tǒng)重啟后自動掛載mfs文件系統(tǒng),測試之后,并沒有成功,原因是FUSE模塊沒有加載到內核,所以,我覺得用/etc/fstab,F(xiàn)USE模塊需要事先將其編譯進系統(tǒng)內核中才行。fstab的配置如下:

Shell> vi /etc/fstab   mfsmount /mnt fuse mfsmaster=MASTER_IP,mfsport=9421,_netdev 0 0 (重啟系統(tǒng)后掛載MFS的根目錄)   mfsmount /mnt fuse mfstermaster=MASTER_IP,mfsport=9421,mfssubfolder=/subdir,_netdev 0 0(重啟系統(tǒng)后掛載MFS的子目錄)

采用fstab配置文件掛載方式可以通過如下命令,測試是否配置正確:

Shell> mount –a –t fuse

3. FUSE的安裝問題

FUSE模塊是mfsmount客戶端所依賴的模塊,我們所作的操作,先由FUSE接收,然后通過mfsmount進程與mfsmaster聯(lián)系,***應用到chunkserver上。FUSE(Filesystem in Userspace)叫作用戶態(tài)文件系統(tǒng),它提供了一個框架,讓我們開發(fā)的文件系統(tǒng)在用戶態(tài)下運行操作,減少了開發(fā)文件系統(tǒng)與內核模塊之間的過多接觸,了解后知道原來偉大的ZFS就是FUSE的。在Moosefs的文檔中,提到Linux內核2.6.14以后的版本中都將支持FUSE模塊,也就是說在系統(tǒng)目錄/lib/modules/`uname -r`/kernel/fs/下會有一個fuse的子目錄,里面會包含一個fuse.ko的文件。當我們編譯安裝好fuse后,執(zhí)行modprobe fuse命令,就可以動態(tài)將FUSE模塊加載進內核,有時候會出現(xiàn)找不到該模塊的提示,那就是在/lib/modules/`uname -r`/kernel/fs/目錄下沒有fuse這個子目錄,缺少那個ko文件。本人安裝時就遇到了,內核為2.6.18-92.el5,沒有fuse子目錄。當時使用的fuse-2.8.5,默認編譯安裝也沒有生成這個文件;后來韓老師幫我找問題,他用2.7.4版本默認編譯安裝(沒添加任何configure選項)后,modprobe便可以成功加載fuse模塊,這時fuse那個子目錄也被創(chuàng)建,網上有看到說需要加這個編譯項–enable-kernel-module。

4. Moosefs可以節(jié)省空間

不小心發(fā)現(xiàn)拷貝到mfs目錄下的文件大小比ext3下的小了很多,開始以為是少同步了一些文件,于是又將mfs下的所有文件拷回到ext3下,發(fā)現(xiàn)大小和之前的一致,于是,隱約感覺到mfs難道可以節(jié)省空間。測試后發(fā)現(xiàn),mfs對小文件(我用的是8K左右的)存儲空間的節(jié)省非常明顯,可以節(jié)省一半的空間,之后我又拷被了一個1.7G文件到mfs下,大小為1.6G。

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業(yè)資訊頻道,感謝您對億速云的支持。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI