ES索引誤刪的名場(chǎng)面
最近,在版本發(fā)布時(shí);
ES線(xiàn)上未備份的索引,被當(dāng)場(chǎng)「誤刪」了;
對(duì)于新手來(lái)說(shuō),妥妥的社死名場(chǎng)面;
對(duì)于老手來(lái)說(shuō),慌它3秒表示一下態(tài)度;
當(dāng)時(shí)的情況也不復(fù)雜;
某「?jìng)€(gè)別」隊(duì)友在處理動(dòng)態(tài)索引的字段問(wèn)題時(shí),反復(fù)重新構(gòu)建結(jié)構(gòu)和數(shù)據(jù);
為了嚴(yán)謹(jǐn);
還在自個(gè)本地環(huán)境不斷的測(cè)試;
萬(wàn)事皆因忙中錯(cuò);
忙著忙著,本地環(huán)境和線(xiàn)上環(huán)境就混了,手一抖,生產(chǎn)環(huán)境的數(shù)據(jù)跟著就沒(méi)了;
當(dāng)場(chǎng)傻楞了3秒,接著就是一句國(guó)粹脫口而出;
這一幕,屬實(shí)有點(diǎn)似曾相識(shí);
人禍橫跳出來(lái)的時(shí)候;
慌沒(méi)用,自責(zé)沒(méi)用,甩鍋更沒(méi)用;
有用的操作就是團(tuán)隊(duì)靜心找補(bǔ),快速把問(wèn)題解決好,不然都得跟著耗時(shí)間;
【首先】客觀的說(shuō)明一下項(xiàng)目情況;
體量很小的項(xiàng)目,幾個(gè)「資深」的碼農(nóng)在三心二意應(yīng)付著,然后就有老六不按常理出牌,事后還狡辯說(shuō)鍛煉了團(tuán)隊(duì)的應(yīng)急能力;
【再來(lái)】聊聊當(dāng)時(shí)每個(gè)人的應(yīng)對(duì);
- 項(xiàng)目經(jīng)理:郵件通知相關(guān)人員,版本發(fā)布+結(jié)構(gòu)模型和數(shù)據(jù)升級(jí),并且禁用了相關(guān)模塊;
- 當(dāng)事人甲:平復(fù)情緒,穩(wěn)住完成索引上線(xiàn);
- 圍觀人甲:拖出線(xiàn)程池腳本,快速完成幾千條索引條數(shù)據(jù)的重建;
- 運(yùn)維同學(xué):完成服務(wù)的最終升級(jí),備份相關(guān)索引;
【縱觀】全程,主打一手:若無(wú)其事,一本正經(jīng);
此處,細(xì)思極恐;
如果不是項(xiàng)目不值一提,這些個(gè)參與者弄不好還值得開(kāi)會(huì)表?yè)P(yáng)一下;
職場(chǎng)上的隊(duì)友要都是這般夢(mèng)幻,一定要珍惜;
客觀來(lái)說(shuō),項(xiàng)目本身「規(guī)格」很低;
但是,這種有開(kāi)發(fā)介入,發(fā)布還在臨時(shí)調(diào)試的情況本身就不常見(jiàn);
在實(shí)際情況中;
雖然版本發(fā)布,有嚴(yán)謹(jǐn)?shù)膱?zhí)行步驟,依然避不開(kāi)個(gè)別老六靈光乍現(xiàn)的騷操作;
結(jié)果就是,和手搓的BUG正面對(duì)線(xiàn);
這種要是出現(xiàn)在公司系統(tǒng)級(jí)的項(xiàng)目中,必然是得祭出點(diǎn)什么,取決于業(yè)務(wù)模塊和影響面;
必須要鄭重提醒;
不能輕易用手動(dòng)的方式執(zhí)行刪除動(dòng)作,可以用流程管理的方式實(shí)現(xiàn);
這樣整體可控,也有利于測(cè)試驗(yàn)收;
雖然索引刪除的場(chǎng)面比較尷尬;
但是經(jīng)過(guò)實(shí)踐考驗(yàn)的應(yīng)對(duì)流程,值得反思和總結(jié);
不怕一萬(wàn),就怕下一次的一萬(wàn);
至于哪里能值得借鑒,這得看實(shí)際情況;
關(guān)于索引刪除和重建的問(wèn)題,在以前的文章中有提過(guò),這里更多是記錄一下處理思路;「參考文尾」
圖片
- 【1】快速下線(xiàn)相關(guān)功能模塊,問(wèn)題影響面廣會(huì)增加復(fù)雜度,當(dāng)時(shí)絕對(duì)在5分鐘內(nèi)下線(xiàn);
- 【2】索引數(shù)據(jù)是基于消息隊(duì)列調(diào)度的,并且可以暫停流程執(zhí)行,方便處理索引結(jié)構(gòu);
- 【3】基于線(xiàn)程池高效的實(shí)現(xiàn)索引數(shù)據(jù)恢復(fù),(沒(méi)實(shí)際對(duì)比過(guò),經(jīng)常倒騰數(shù)據(jù)用順手的工具腳本);
- 【4】運(yùn)維進(jìn)行索引備份,增強(qiáng)數(shù)據(jù)安全;
BUG對(duì)線(xiàn)過(guò)程,半個(gè)小時(shí)內(nèi)就處理完畢了;
這里對(duì)于團(tuán)隊(duì)的人來(lái)說(shuō),每個(gè)人都迅速找準(zhǔn)解決問(wèn)題的切入點(diǎn),順暢的合作,準(zhǔn)確并高效的解決;
項(xiàng)目負(fù)責(zé)人說(shuō),他那會(huì)去給客戶(hù)道歉的話(huà)都想好了;
可惜,沒(méi)給他兜底表演的機(jī)會(huì);
最后總結(jié)兩句;
雖然發(fā)布故障有點(diǎn)出其不意,但是團(tuán)隊(duì)在處理上還算體面妥當(dāng);
所以,魔幻的職場(chǎng)不重要,重要的是有魔幻的隊(duì)友。
























