這篇文章主要介紹“GlusterFS的brick文件丟失怎么辦”,在日常操作中,相信很多人在GlusterFS的brick文件丟失怎么辦問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”GlusterFS的brick文件丟失怎么辦”的疑惑有所幫助!接下來,請跟著小編一起來學(xué)習(xí)吧!
成都創(chuàng)新互聯(lián)公司服務(wù)項目包括屯昌網(wǎng)站建設(shè)、屯昌網(wǎng)站制作、屯昌網(wǎng)頁制作以及屯昌網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,屯昌網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到屯昌省份的部分城市,未來相信會繼續(xù)擴大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!
0、測試環(huán)境
GlusterFS 3.6.4/3.6.7/3.6.9
CentOS 6.7/7.1
1、測試用例及結(jié)果一
假設(shè)A、B副本主機,C客戶機,C掛載到A。
先通過C在卷中創(chuàng)建1到99文件。
測試一:
A上刪除 rm -f 2*,A執(zhí)行heal full,看是否恢復(fù),如果不行,再在B上執(zhí)行heal full,A上看文件是否恢復(fù)。操作期間不要在C上ls。
A上刪除 rm -f 3*,只在C上ls,C上看是否有3*,A上看是否恢復(fù)。
測試二:
A上刪除 rm -f 4*,同時刪除對應(yīng)gfid文件。A執(zhí)行heal full,看是否恢復(fù),如果不行,再在B上執(zhí)行heal full,A上看文件是否恢復(fù)。操作期間不要在C上ls。
A上刪除 rm -f 5*,同時刪除對應(yīng)gfid文件。只在C上ls,C上看是否有5*,A上看是否恢復(fù)。
測試三:
B上刪除 rm -f 6*,A執(zhí)行heal full,看是否恢復(fù),如果不行,再在B上執(zhí)行heal full,B上看文件是否恢復(fù)。操作期間不要在C上ls。
B上刪除 rm -f 7*,只在C上ls,C上看是否有7*,B上看是否恢復(fù)。
測試四:
B上刪除 rm -f 8*,同時刪除對應(yīng)gfid文件。A執(zhí)行heal full,看是否恢復(fù),如果不行,再在B上執(zhí)行heal full,B上看文件是否恢復(fù)。操作期間不要在C上ls。
B上刪除 rm -f 9*,同時刪除對應(yīng)gfid文件。只在C上ls,C上看是否有9*,B上看是否恢復(fù)。
測試結(jié)果:
實驗一
可以C 上可以看到3* 其它都不行
實驗二
可以C 上可以看到5* 其它都不行
實驗三
1. 可以恢復(fù)6*
2. B上沒有恢復(fù) 且C看不到7*
實驗四
1. 可以恢復(fù)8*
2. B上9*沒有恢復(fù) 且C看不到9*
2、測試用例及結(jié)果二
再補充兩個測試用例,這兩個需要恢復(fù)快照,保證環(huán)境純凈可靠后再分別執(zhí)行。
假設(shè)A、B副本主機,C客戶機,C掛載到A。
先通過C在卷中創(chuàng)建1到99文件。
場景一:
A上刪除 rm *,A執(zhí)行heal full,看是否恢復(fù),如果不行,再在B上執(zhí)行heal full,A上看文件是否恢復(fù)。如果不行再在C上ls,看C上是否能看到文件。
如果還不行,重啟A上glusterd服務(wù),然后再執(zhí)行上述操作看結(jié)果。
假設(shè)A、B副本主機,C客戶機,C掛載到A。
先通過C在卷中創(chuàng)建1到99文件。
場景二:
B上刪除 rm *,同時刪除對應(yīng)gfid文件。A執(zhí)行heal full,看是否恢復(fù),如果不行,再在B上執(zhí)行heal full,B上看文件是否恢復(fù)。如果不行再在C上ls,看C上是否能看到文件。
如果還不行,重啟B上glusterd服務(wù),然后再執(zhí)行上述操作看結(jié)果。
測試結(jié)果:
場景一
C上看到文件,其它都不行
場景二
都不行
3、測試總結(jié)-副本文件丟失修復(fù)
當(dāng)復(fù)制卷中的副本文件被不小心刪除(同時刪除對應(yīng)的gfid文件)后,可以通過
gluster volume heal VOLNAME full
命令來修復(fù),如果不加full參數(shù),則不會檢測到丟失的副本,不進行副本修復(fù)操作。
當(dāng)一個副本丟失后,客戶端可能看到丟失的文件,也可能看不到丟失的文件,取決于掛載的主機位置。
當(dāng)仍能看到丟失的文件時:
雖然能看到丟失的文件,但此時的ls或ls -l并不能恢復(fù)副本,當(dāng)再次對丟失的文件進行修改操作時,副本文件才會被修復(fù)。
當(dāng)不能看到丟失的文件時:
1)重新掛載會修復(fù)丟失的副本,修復(fù)后,客戶端可以看到全部文件。顯然線上系統(tǒng)通常不能這樣操作。
2)后臺執(zhí)行g(shù)luster volume heal VOLNAME full命令可以修復(fù)丟失副本文件,同時讓客戶端再次看到丟失的文件。
在復(fù)制卷情況下,假設(shè)有兩個brick做成的volume,當(dāng)在其中一個brick上刪除一個文件file(不刪除對應(yīng)的gfid文件)時,有可能導(dǎo)致(兩個副本,刪除其中一個副本會導(dǎo)致,但具體哪個副本暫不確定,也有可能是非掛載點的副本)客戶端看不到該文件,此時的情況是:
客戶端看不到file;其中一個brick上有file;另外一臺上無file。
此時,執(zhí)行g(shù)luster volume heal full自我修復(fù)操作,效果和上面描述一樣,客戶端無法看到該文件,此時的file稱之為暗文件。
客戶端重新掛載法修復(fù)(有時重新掛載可以修復(fù),需要考慮最壞情況)。
服務(wù)器端heal full無法修復(fù)。
如何恢復(fù)暗文件?
在客戶端執(zhí)行l(wèi)s file操作。此時服務(wù)器端的file也會自動恢復(fù)。
這樣做的前提是,必須知道丟失的文件名,否則無法恢復(fù)。
未恢復(fù)前,客戶端對file進行touch、寫等操作都能正常進行,當(dāng)執(zhí)行一次后,服務(wù)端文件會自動恢復(fù),前提還是必須知道文件名。
服務(wù)器端之利用用cp機制恢復(fù)。
客戶端重新掛載法修復(fù)(有時重新掛載可以修復(fù),需要考慮最壞情況)。
出現(xiàn)暗文件是非常糟糕的事情,在線上很難確定哪些副本丟失,重新掛載基本也是不予許的,所以要盡量避免此類情況出現(xiàn)。
到此,關(guān)于“GlusterFS的brick文件丟失怎么辦”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識,請繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>
網(wǎng)站標(biāo)題:GlusterFS的brick文件丟失怎么辦
本文URL:http://chinadenli.net/article6/joehog.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站排名、微信小程序、域名注冊、移動網(wǎng)站建設(shè)、網(wǎng)站內(nèi)鏈、關(guān)鍵詞優(yōu)化
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)