ES索引誤刪的名場面

大資料技術前線發表於2023-12-21

來源:知了一笑

慌了3秒,果斷發個郵件;


01


最近,在版本釋出時;

ES線上未備份的索引,被當場「誤刪」了;

對於新手來說,妥妥的社死名場面;

對於老手來說,慌它3秒錶示一下態度;

當時的情況也不復雜;

某「個別」隊友在處理動態索引的欄位問題時,反覆重新構建結構和資料;

為了嚴謹;

還在自個本地環境不斷的測試;

萬事皆因忙中錯;

忙著忙著,本地環境和線上環境就混了,手一抖,生產環境的資料跟著就沒了;

當場傻楞了3秒,接著就是一句國粹脫口而出;

這一幕,屬實有點似曾相識;


02


人禍橫跳出來的時候;

慌沒用,自責沒用,甩鍋更沒用;

有用的操作就是團隊靜心找補,快速把問題解決好,不然都得跟著耗時間;

【首先】客觀的說明一下專案情況;

體量很小的專案,幾個「資深」的碼農在三心二意應付著,然後就有老六不按常理出牌,事後還狡辯說鍛鍊了團隊的應急能力;

【再來】聊聊當時每個人的應對;

  • 專案經理:郵件通知相關人員,版本釋出+結構模型和資料升級,並且禁用了相關模組;
  • 當事人甲:平復情緒,穩住完成索引上線;
  • 圍觀人甲:拖出執行緒池指令碼,快速完成幾千條索引條資料的重建;
  • 運維同學:完成服務的最終升級,備份相關索引;

【縱觀】全程,主打一手:若無其事,一本正經;

此處,細思極恐;

如果不是專案不值一提,這些個參與者弄不好還值得開會表揚一下;

職場上的隊友要都是這般夢幻,一定要珍惜;


03


客觀來說,專案本身「規格」很低;

但是,這種有開發介入,釋出還在臨時除錯的情況本身就不常見;

在實際情況中;

雖然版本釋出,有嚴謹的執行步驟,依然避不開個別老六靈光乍現的騷操作;

結果就是,和手搓的BUG正面對線;

這種要是出現在公司系統級的專案中,必然是得祭出點什麼,取決於業務模組和影響面;

必須要鄭重提醒;

不能輕易用手動的方式執行刪除動作,可以用流程管理的方式實現;

這樣整體可控,也有利於測試驗收;


04


雖然索引刪除的場面比較尷尬;

但是經過實踐考驗的應對流程,值得反思和總結;

不怕一萬,就怕下一次的一萬;

至於哪裡能值得借鑑,這得看實際情況;

關於索引刪除和重建的問題,在以前的文章中有提過,這裡更多是記錄一下處理思路;「參考文尾」

ES索引誤刪的名場面

  • 【1】快速下線相關功能模組,問題影響面廣會增加複雜度,當時絕對在5分鐘內下線;
  • 【2】索引資料是基於訊息佇列排程的,並且可以暫停流程執行,方便處理索引結構;
  • 【3】基於執行緒池高效的實現索引資料恢復,(沒實際對比過,經常倒騰資料用順手的工具指令碼);
  • 【4】運維進行索引備份,增強資料安全;

BUG對線過程,半個小時內就處理完畢了;

這裡對於團隊的人來說,每個人都迅速找準解決問題的切入點,順暢的合作,準確並高效的解決;

專案負責人說,他那會去給客戶道歉的話都想好了;

可惜,沒給他兜底表演的機會;


05


最後總結兩句;

雖然釋出故障有點出其不意,但是團隊在處理上還算體面妥當

所以,魔幻的職場不重要,重要的是有魔幻的隊友。


來自 “ ITPUB部落格 ” ,連結:https://blog.itpub.net/70027827/viewspace-3000844/,如需轉載,請註明出處,否則將追究法律責任。

相關文章