国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Elasticsearch索引數(shù)據(jù)恢復(fù)

IT那活兒 / 2491人閱讀
Elasticsearch索引數(shù)據(jù)恢復(fù)

點擊上方“IT那活兒”公眾號,關(guān)注后了解更多內(nèi)容,不管IT什么活兒,干就完了!!!


1

背景介紹

1.1 關(guān)于分片

elasticsearch分片可以理解為數(shù)據(jù)的容器。

elasticsearch的索引文檔存儲在分片中,然后分片分配到集群中的節(jié)點上。當(dāng)集群擴(kuò)容或縮小,Elasticsearch 將會自動在節(jié)點間遷移分片,以使集群保持平衡。這類似于 MySql 的分庫分表,只不過 Mysql 分庫分表需要借助第三方組件而 ES 內(nèi)部自身實現(xiàn)了此功能。

分片分為主分片和副本分片,在索引寫入時,新文檔首先被索引進(jìn)主分片然后再同步到其它所有的副本分片。副本分片可以服務(wù)于讀請求,如果你的索引也如常見的那樣是偏向查詢使用的,那你可以通過增加副本的數(shù)目來提升查詢性能。

與幾乎所有的分布式組件存儲數(shù)據(jù)一樣,如果主分片和所有副本的分片都失效了,那么這部分?jǐn)?shù)據(jù)也意味著丟失了。本文涉及的索引副本數(shù)為1,也就是索引的所有分片存在1個主分片和1個副本分片。

1.2 故障問題

此次elasticsearch故障是因為node04節(jié)點數(shù)據(jù)盤損壞,原本集群一個節(jié)點的一塊數(shù)據(jù)盤損壞,因為分片有副本的關(guān)系,并不會對數(shù)據(jù)的完整性造成威脅,如上文描述,主分片失效后,副本分片會成為主分片,并在后續(xù)會重新生成一份副本分片,達(dá)到索引的主副分片要求。

當(dāng)異常節(jié)點恢復(fù)啟動完成后,丟失副本的分片會成為主分片,然后進(jìn)行同步生成新的副本分片,但是在同步的過程中,另一個節(jié)點node01出現(xiàn)服務(wù)崩潰,最終定位也損壞了一塊硬盤,短時間內(nèi)同時損壞不同節(jié)點的2塊硬盤,對于副本為1的分片來說,就有較大的概率丟失數(shù)據(jù)了,事實證明確實有索引存在數(shù)據(jù)丟失的情況,好在node01的盤還部分可讀,于是我們嘗試讀取恢復(fù)了一部分索引的數(shù)據(jù),詳細(xì)步驟如下。 

2

故障處理步驟

2.1 某日elasticsearch集群node04節(jié)點服務(wù)崩潰,檢查發(fā)現(xiàn)磁盤損壞,硬件進(jìn)行了磁盤更換和掛載,node04節(jié)點啟動后集群正在同步數(shù)據(jù)。

2.2 此時node01節(jié)點服務(wù)出現(xiàn)崩潰,嘗試啟動node01節(jié)點的服務(wù),發(fā)現(xiàn)elasticsearch無法拉起,檢查日志發(fā)現(xiàn)加載過程中就直接關(guān)閉了,完成不了啟動。

檢查messages發(fā)現(xiàn)sde盤出現(xiàn)讀取錯誤,懷疑磁盤問題,為了快速恢復(fù)業(yè)務(wù),決定先注釋sde盤的/data04目錄,再次啟動可以拉起服務(wù)了。

報錯信息:

對elasticsearch.yml配置修改:

2.3 經(jīng)過較為漫長的恢復(fù)后,發(fā)現(xiàn)仍然有3個索引處于red狀態(tài),可以確認(rèn)這部分索引已經(jīng)丟失了主分片和副本分片,也即數(shù)據(jù)丟失了。

2.4 對此3個索引進(jìn)行indices檢查,確認(rèn)索引分片名分別為:

red   open  eopstat-2022.03.03                                na8D2ItQQt2aY1M8Mka_Lg

red   open  eopstat-2022.03.12                                kLybkgdoSluZTpcLnnraeQ

red   open  eopstat-2022.03.13                                4uvJV5zeQ6az7cUBhXyhbQ

2.5 因sde磁盤尚未完全損壞,/data04目錄部分?jǐn)?shù)據(jù)是可以讀寫的,所以我們考慮將以上三個索引在/data04上的分片先備份出來,然后更換磁盤后恢復(fù),以達(dá)到修復(fù)數(shù)據(jù)的目的。

2.6 備份過程中發(fā)現(xiàn)某索引報錯padding with zeros,估計磁盤上這個索引的數(shù)據(jù)已經(jīng)損壞了,但是另外的索引備份正常。

2.7 我們將其備份至/tmp目錄下,待磁盤重新更換后將其恢復(fù)。

2.8 然后對node01節(jié)點進(jìn)行磁盤更換和重新掛載,再將兩個備份的分片恢復(fù)至原目錄/data04/es/nodes/0/indices。

2.9 恢復(fù)完成后,我們將node01節(jié)點配置還原,將/data04目錄加入,然后再進(jìn)行es服務(wù)的重啟。

2.10 待完全啟動后,發(fā)現(xiàn)原本狀態(tài)為red的索引2022.03.13/12已變?yōu)閥ellow,也就表示主分片正常了,正在恢復(fù)副本分片。

2.11 恢復(fù)完成后,檢查索引狀態(tài),發(fā)現(xiàn)已經(jīng)恢復(fù)為green了,數(shù)據(jù)恢復(fù)完成。

3

故障總結(jié)

此次故障雖然恢復(fù),但是部分索引的數(shù)據(jù)依舊是主副都丟失了,只能進(jìn)行清理,無法恢復(fù)了。所以此恢復(fù)方法也只能建立在原數(shù)據(jù)盤數(shù)據(jù)部分依舊可讀的前提下進(jìn)行,如果兩個數(shù)據(jù)盤全部徹底損壞,也基本是不具備從系統(tǒng)層面進(jìn)行恢復(fù)的,只能找專業(yè)人士從磁盤底層進(jìn)行嘗試了,這也是本文恢復(fù)方法的局限性。

另外針對老舊服務(wù)器搭建的集群,比如本文中的節(jié)點服務(wù)器其實服役年限都超過8年了,我們還是強(qiáng)烈適當(dāng)增加集群的冗余配置,比如配置副本數(shù)為2,也即一主兩副的配置,從而降低因為硬件故障造成的數(shù)據(jù)損失的風(fēng)險。


 


END



 



本文作者:何 青

本文來源:IT那活兒(上海新炬王翦團(tuán)隊)

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/129508.html

相關(guān)文章

  • Elasticsearch入門(一)

    摘要:倒排索引我們將需要掃描檢索的內(nèi)容的每一個詞建立一個索引,指明該詞在文章中出現(xiàn)的次數(shù)和位置,當(dāng)用戶查詢時,根據(jù)事先建立的索引進(jìn)行查找,并將查找的結(jié)果反饋給用戶。 ES概述 1、什么是Elasticsearch (是什么?) 什么是ElasticSearch呢,首先看看百度百科上的解釋: ElasticSearch是一個基于的搜索服務(wù)器。它提供了一個分布式多用戶能力的全文搜索引擎,基于RE...

    Imfan 評論0 收藏0
  • 慕課網(wǎng)_《ElasticSearch入門》學(xué)習(xí)總結(jié)

    摘要:時間年月日星期四說明本文部分內(nèi)容均來自慕課網(wǎng)。那么里面的數(shù)據(jù)就可以分為各種各樣的索引,比如汽車索引圖書索引家具索引等等。圖書索引又可以細(xì)分為各種類型,比如科普類小說類技術(shù)類等等。具體到每一本書籍,就是文檔,就是整個圖書里面最小的存儲單位。 時間:2017年09月14日星期四說明:本文部分內(nèi)容均來自慕課網(wǎng)。@慕課網(wǎng):http://www.imooc.com教學(xué)源碼:無學(xué)習(xí)源碼:https...

    notebin 評論0 收藏0

發(fā)表評論

0條評論

IT那活兒

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<