CephFS管理命令

這些命令在你的Ceph集群中的CephFS文件系統(tǒng)上運,注意,默認情況下僅允許使用一個文件系統(tǒng),要啟用創(chuàng)建多個文件系統(tǒng),請使用?ceph fs flag set enable_multiple true命令?
文件系統(tǒng)相關(guān)ceph fs new <file system name> <metadata pool name> <data pool name>?
這條命令創(chuàng)建一個新的文件系統(tǒng),文件系統(tǒng)名稱和元數(shù)據(jù)池名稱很清晰明了。指定的數(shù)據(jù)池是默認數(shù)據(jù)池,一旦設(shè)置便無法更改,每個文件系統(tǒng)都有自己的一組MDS守護程序分配給等級,因此請確保你有足夠的備用守護程序來容納新文件系統(tǒng)?
ceh fs ls?
列出已有的文件系統(tǒng)?
ceph fs dump [epoch]?
這將在給定的時期(默認值:當前)轉(zhuǎn)儲FSMap,其中包括所有文件系統(tǒng)設(shè)置,MDS守護程序及其所擁有的等級以及備用MDS守護程序的列表?
ceph ?fs rm <file system name> [--yes-i-really-mean-it]?
銷毀CephFS文件系統(tǒng),這會從FSMap擦除有關(guān)文件系統(tǒng)狀態(tài)的信息,元數(shù)據(jù)池和數(shù)據(jù)池保持不變,必須分別銷毀。?
ceph ?fs get <file system name>?
獲取有關(guān)命名文件系統(tǒng)的信息,包括設(shè)置和等級,這是來自fs dump命令的相同信息的子集?
ceph fs set <file system name> <var> <val>?
更改文件系統(tǒng)上的設(shè)置,這些設(shè)置特定于命名文件系統(tǒng),并且不影響其他文件系統(tǒng)?
ceph ?fs add_data_pool <file system name> <pool name/id>?
將數(shù)據(jù)池添加到文件系統(tǒng),該池可用于文件布局,作為存儲文件數(shù)據(jù)的備用位置。?
ceph fs rm_data_pool <file system name> <pool name/id>?
此命令從文件系統(tǒng)的數(shù)據(jù)池列表中刪除指定的池,如果有任何文件具有已刪除數(shù)據(jù)池的布局,則文件數(shù)據(jù)將不可用,無法刪除默認數(shù)據(jù)池(在創(chuàng)建文件系統(tǒng)時創(chuàng)建的第一個數(shù)據(jù)池)?
設(shè)置相關(guān)ceph fs set <fs name> max_file_size <size in bytes>?
CephFS具有可配置的最大文件大小,默認情況下為1TB,如果希望在CephFS中存儲大文件,則可以將此限制設(shè)置得更高,它是一個64位字段。 將max_file_size設(shè)置為0不會禁用該限制,它將僅限制客戶端的權(quán)限為僅有權(quán)限創(chuàng)建空文件。?
最大文件大小和性能CephFS在追加文件或設(shè)置文件大小時會強制執(zhí)行最大文件大小限制,它不影響以任何存儲方式存儲的任何內(nèi)容。 當用戶創(chuàng)建一個巨大的文件(不必向其寫入任何數(shù)據(jù))時,某些操作(例如刪除)會導(dǎo)致MDS必須執(zhí)行大量操作,檢查是否存在可能存在的RADOS對象(根據(jù)文件大小)?
max_file_size設(shè)置可防止用戶創(chuàng)建艾字節(jié)大小的文件,導(dǎo)致MDS上的負載,因為它在進行統(tǒng)計或刪除之類的操作期間會嘗試枚舉對象。?
down掉集群通過設(shè)置down?參數(shù)來關(guān)閉CephFS集群?
ceph fs set <fs_name> down true?
恢復(fù)集群?
ceph fs set <fs_name> down false?
這還將恢復(fù)max_mds的先前值,以某種方式關(guān)閉MDS守護程序,以便將日記刷新到元數(shù)據(jù)池,并停止所有客戶端的I / O操作。?
快速關(guān)閉群集以進行刪除或災(zāi)難恢復(fù)要允許快速刪除文件系統(tǒng)(以進行測試)或快速關(guān)閉文件系統(tǒng)和MDS守護程序,可以使用fs fail命令,此命令設(shè)置文件系統(tǒng)標志,以防止備用文件在文件系統(tǒng)上被激活?
ceph fs fail <fs_name>?
也可以通過以下操作手動完成此過程?
ceph fs set <fs_name> joinable false?
然后,操作員可能會使所有ranks失敗,這會導(dǎo)致MDS守護進程作為備用程序重生,文件系統(tǒng)將處于降級的狀態(tài)?
ceph mds fail <fs_name>:<n>?
一旦所有ranks都不活動,也可以刪除文件系統(tǒng)或?qū)⑵浔A粼谠摖顟B(tài)下以用于其他目的(也許是災(zāi)難恢復(fù)),要恢復(fù)集群,只需設(shè)置joinable標志?
ceph fs set <fs_name> joinable true?
守護進程大多數(shù)操作mds的命令都采用<role>參數(shù),該參數(shù)可以采用以下三種形式之一?
<fs_name>:<rank>?
<fs_id>:<rank>?
<rank>?
操作MDS守護程序的命令?
ceph mds fail <gid/name/role>?
將MDS守護進程標記為失,這相當于集群將執(zhí)行這個操作,當MDS守護進程未能向mon發(fā)送MDS_beacon_grace second消息的時候。如果守護進程處于活動狀態(tài),并且有合適的備用服務(wù)器可用,則使用mds fail將強制故障轉(zhuǎn)移到備用服務(wù)器。?
如果MDS守護進程實際上仍在運行,那么使用MDS fail將導(dǎo)致守護進程重新啟動。如果它處于活動狀態(tài),并且有備用程序可用,則“失敗”的守護程序?qū)⒆鳛閭溆贸绦蚍祷?
ceph tell mds.<daemon name> command ...?
將命令發(fā)送到MDS守護程序,使用mds.將命令發(fā)送到所有守護程序,使用ceph tell mds.來查看幫助文檔?
ceph mds repaired <role>?
獲取有關(guān)Mon的已知的給定MDS的元數(shù)據(jù)?
ceph mds repaired <role>?
將文件系統(tǒng)等級標記為已修復(fù),顧名思義,此命令不會更改MDS,它操作已標記為已損壞的文件系統(tǒng)ranks?
最低客戶端版本有時需要設(shè)置客戶端的最低Ceph版本能夠正常運行才能連接到CephFS群集。較早的客戶端有時可能仍在運行帶有可能導(dǎo)致客戶端之間鎖定問題的錯誤(由于功能發(fā)布)。?CephFS提供了一種設(shè)置最低客戶端版本的機制?
ceph fs set <fs name> min_compat_client <release>?
例如,僅允許Nautilus客戶端使用?
ceph fs set cephfs min_compat_client nautilus?
運行舊版本的客戶端將自動被驅(qū)逐?
全局設(shè)置ceph fs flag set <flag name> <flag val> [<confirmation string>]?
設(shè)置全局CephFS標志(即不特定于特定文件系統(tǒng)),當前,唯一的標志設(shè)置是“ enable_multiple”,它允許具有多個CephFS文件系統(tǒng)。 有些標志要求您使用“ –yes-i-really-mean-it”或類似的字符串來提示以確認。在繼續(xù)之前,請仔細考慮這些操作,因為他們是一些比較危險的操作?
高級用法這些命令在正常操作中不是必需的,在特殊情況下可以使用。不正確地使用這些命令可能會導(dǎo)致嚴重的問題,例如文件系統(tǒng)無法訪問?
ceph mds compat rm_compat #?刪除兼容性的功能標志?
ceph mds compat rm_incompat #?刪除不兼容性的功能標志?
ceph mds compat show #?顯示MDS兼容性標志?
ceph mds rmfailed #?從失敗的集合中刪除rank?
ceph fs reset <file system name> #?此命令將文件系統(tǒng)狀態(tài)重置為默認名稱(名稱和池除外),非零rank保存在停止集
了解更多網(wǎng)絡(luò)知識關(guān)注:http://www.vecloud.com/