大資料叢集跨多版本升級、業務0中斷,只因背後有TA

船頭尺發表於2021-09-11
摘要:2021年4月21日,中國太平洋保險集團聯合華為雲完成了全球首例大資料叢集跨多版本的大資料叢集滾動升級。

本文分享自華為雲社群《》,作者: 沙漏 。

2021年4月21日,中國太平洋保險集團聯合華為雲完成了全球首例大資料叢集跨多版本的大資料叢集滾動升級,突破傳統方案需離線停機多次升級模式,一次性將核心現網叢集版本由FusionInsight HD C70升級到FusionInsight MRS 8.0.2,橫跨C80、6.5.1兩個版本,同時完成了大資料叢集從物理機向雲服務的模式轉變,實現該案例在金融同業首例突破,樹立同業新標杆。經過為期兩週的升級實施過程操作,實現太保上層業務無感的平滑滾動升級,全程叢集作業無中斷、效能無影響。本次跨版本滾動升級的成功對金融科技領域意義重大,標誌著中國太平洋保險為金融同業樹立了大資料服務跨多版本升級、業務連續性和可持續演進的新建設標杆。

一、專案背景

中國太平洋保險集團從2017年選擇華為雲FusionInsight構建保險大資料平臺。隨著太保與華為雲合作的持續深入,其內部主要業務系統都已使用華為雲大資料平臺。但是早期各業務系統都建設了獨立的大資料叢集,資料無法互通,存在資料冗餘,且多叢集造成維護難問題。截止升級前已建設18套大資料叢集,以FusionInsight HD C70版本為主。

隨著太保業務的高速發展,對大資料平臺的統一管理、資料共享、升級演進有了新的訴求,希望將現網18套生產叢集進行統一升級和歸併,同時面向未來提供大資料叢集可持續演進的能力。

為此,太保聯合華為雲,決定將現有18套大資料叢集,由FusionInsight HD C70版本統一升級到MRS8.0,升級的主要目標:

  • 透過對原叢集升級歸併,統一為一套大叢集,透過資源整合,提高資源利用率;
  • 統一到MRS平臺版本資源監控更完善,定位問題更準確;
  • 升級到雲平臺,可以按需靈活調配資源,實現可演進的湖倉一體架構,擴充套件其他高階服務。

大資料叢集跨多版本升級、業務0中斷,只因背後有TA

二、專案內容

2.1 技術挑戰

太保大資料叢集按需部署了HBase、Hive、HDFS、ZooKeeper、YARN、Oozie、Hue、Spark等各類元件。

此外,叢集中每日有上萬作業的執行,也為無感知的滾動升級加大了難度。主要挑戰有以下幾點:

  1. Hadoop元件核心由X到3.X的跨大版本升級中,社群僅提供了HDFS的滾動升級能力,YARN的社群原生目標版本由於與原版本協議不同,無法支援滾動升級;
  2. 社群原生版本的HDFS在升級過程中,刪除的檔案並不會物理刪除,而是移動到trash目錄,這一處理對大容量叢集的滾動升級造成儲存資源壓力,阻礙了剩餘資訊保護,如果不能及時清理會導致爆盤問題;
  3. Hive元件核心由X到3.X的跨大版本升級中,由於後設資料前後格式不相容、API前後版本有變化、部分語法不相容等問題,導致社群原生版本無法支援滾動升級;
  4. HBase元件核心由X到2.X的跨大版本升級中,API前後版本存在較大的變化,導致社群原生版本無法支援滾動升級;
  5. 每日上萬任務量,滾動升級期間如何保障平穩執行,尤其是損益分析、減值測算等核心場景;
  6. 600+節點的大資料叢集環境下,需要確保在升級過程中突發狀況,快速應對硬體(磁碟、記憶體等)故障,不影響升級;
  7. 70+業務系統,數百個業務在此叢集上執行,滾動升級過程中需要保證每一個業務執行不受損。

2.2 技術保障

滾動升級就是藉助於FusionInsight MRS的高可用機制、主備模式、多副本機制、機架策略等在不影響叢集整體業務的情況下,一次升級/重啟部分節點。迴圈滾動,直至叢集所有節點升級到新版本。

下圖為已HDFS元件滾動升級示例:

大資料叢集跨多版本升級、業務0中斷,只因背後有TA

為應對上述技術挑戰專案組建了滾動升級小組,由社群PMC、社群Commiter、版本Developer構成,主要執行了以下技術保障:

  • 依託協議同步、後設資料對映轉換、API封裝轉換等方式,解決了社群協議不同、後設資料格式不同、API變化等導致的相容性問題,保障了滾動升級過程中低版本的元件客戶端的正常使用;

大資料叢集跨多版本升級、業務0中斷,只因背後有TA

  • 針對HDFS社群新版本升級過程中的檔案未刪除問題,額外實現了trash目錄自動清理,將邏輯刪除轉換為物理刪除,並增補了舊版本定期清理trash目錄的工具。確保了基礎設施資源利用的有效性,降低儲存成本;
  • 針對元件升級前後效能狀況、升級時長、升級過程中和事後可能出現的瓶頸點等問題,做了相應架構調整及最佳化,助力實現滾動升級的全域性可控、全程無感、全面無誤;
  • 運維管理方面,專案組針對性的研發了升級管理服務介面,可以端到端、分步驟地完成滾動升級,便於檢視滾動升級狀態,實現元件級控制。為了降低在升級過程中對關鍵任務服務連續性的影響,專案實現了按升級批次暫停的功能,有助於在關鍵作業或者作業高峰時段,透過暫停升級進行風險規避,確保業務無影響。此外,為避免各種突發事件中斷升級程式,專案實現了故障節點隔離能力,在故障發生時,可以跳過對應節點的升級動作,保障了故障處理和升級的同步進行。

2.3 組織保障

專案啟動後,成立了以太保相關領導為專案經理,以華為交付和研發、太保的研發和運維為成員的聯合專案組。本次升級面向的應用部門多達20+,平臺涉及業務數量多且複雜。為保證滾動升級成功且整個過程中業務要做到0中斷,在升級前、中、後的6個月裡由華為方主導,客戶各個業務部門緊密配合,專案組制定了周密的組織保障制度。

大資料叢集跨多版本升級、業務0中斷,只因背後有TA

太保升級專案組織保障

  1. 升級前準備階段:在專案組整體協調和華為的研發支撐下,完成了70+應用程式碼改造及驗證,並輸出測試報告;為充分識別風險,華為主動提供測試環境硬體資源,專案組聯合各應用部門,進行了3次升級演練的聯合測試;為達成升級前置條件,華為專家調研指導,有效的進行了叢集小檔案合併、客戶端整改、叢集多次巡檢、升級方案的反覆評審改進等升級前準備工作;
  2. 升級過程保障:在升級過程的兩週期間,華為安排研發、方案等專家現場保障。華為協同太保聯合專案組制定了24小時排班保障、聯合專案組和應用部門間的資訊反饋及溝通(滾動升級中每元件升級完都需業務驗證及確認)、升級操作的聯合專案組授權、升級操作的錄屏監控等制度;
  3. 升級後觀察:滾動升級完成後,聯合專案組協調各應用部門進行應用業務驗證,且已全部輸出業務執行正常報告。後華為專案組後續持續觀察兩週時間,確認平臺及應用執行正常後進行了本次升級提交。

三、總結與展望

太平洋保險聯合華為公司完成的本次金融業首家大資料叢集跨多版本的滾動升級,實現了上層業務無感知、全程叢集作業無中斷、效能無影響,切實保障了客戶的核心利益,也樹立了金融同業新標杆。

隨著數字化技術的不斷迭代升級,將改變傳統保險運營模式,未來主要會呈現出以下三個方向的變革:

  1. 實現從大數到小數,加強風險數字刻畫,從過去的大數機率到小數更加敏銳的感知,將從根本上改變傳統的運營模式;
  2. 從實體到虛擬,資料已是重要的生產資料,透過海量資料識別和評估新型資產的風險,將成為保險業的核心能力;
  3. 從保險到治理,數字化將提升保險公司自身風險管理能力,將更多的參與到國家、城市的風險治理當中,逐步從損失補償到風險管理和治理。

面向未來,太平洋保險將攜手華為持續創新,不斷完善風險生態,貫徹"以客戶需求為導向"的戰略,建設"專注保險主業,價值持續增長,具有國際競爭力的一流保險金融服務集團"。

 

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

相關文章