《專場11.5-同程旅行-MySQL雙中心構建的實戰之路-張充.pdf》由會員分享,可在線閱讀,更多相關《專場11.5-同程旅行-MySQL雙中心構建的實戰之路-張充.pdf(43頁珍藏版)》請在三個皮匠報告上搜索。
1、MySQLMySQL雙中心構建的實戰之路雙中心構建的實戰之路01姓名:張充02030405負責團隊:數據庫運維研發團隊、運維研發團隊項目接手時間:2021-03月就職公司:同程旅行雙中心項目啟動時間:2021前CO NT E NT雙中心的獨特性1為什么方案不能簡單的套用分享路線如何開展2我在面對雙中心項目需求,所使用的方法論如何驗收3在什么階段,怎么去驗收雙中心未來計劃4雙中心不是一蹴而就,是需要分階段開展的雙中心的獨特性 目標需求技術架構技術債務人力、人才資金時間成本獨特性WHAT WHY WHENWHOHOW MUCHHOWHOWHOW MUCH如何開展的雙中心項目 接到任務接到任務雙中心
2、繼續開展雙中心繼續開展20210305?12驗收驗收目標倒推目標倒推先畫靶子后射箭先畫靶子后射箭 目標需求WHAT WHY WHENWHAT:把什么做成雙中心、怎么算做完?WHEN:需要什么時間做完?WHY:為什么做雙中心?異地災備異地災備同城雙中心同城雙中心兩地三中心兩地三中心異地災備同城雙中心兩地三中心原方案A中心故障后,B中心可獨立支撐,保障公司核心業務的穩定性WHY:為什么做雙中心?怎么算做完?異地災備同城雙中心兩地三中心滿足總目標的方案原方案目標錯=方向錯=步步錯怎么算做完=今年的驗收標準=斷網演練WHAT:把什么做成雙中心?怎么算做完?A中心B中心異步復制斷網演練:A中心斷網+A中
3、心數據庫的自動切換到B中心+業務恢復在異步同步的機制下在異步同步的機制下先斷后切,意味著先斷后切,意味著A A中心的中心的MySQLMySQL集群基本要集群基本要廢掉廢掉先斷后切的前提先斷后切的前提:B B中心的可靠性中心的可靠性+A A B B中心的容災能力中心的容災能力1.1.先切后斷先切后斷,我們驗證的是“,我們驗證的是“B B中心的承載能力中心的承載能力”和“”和“業務的完整性業務的完整性”2.2.先斷后切先斷后切,我們驗證的是“,我們驗證的是“容災的恢復能力容災的恢復能力”公司業務(全量)=核心業務(非全量)+非核心業務(非全量)WHAT:把什么做成雙中心?怎么算做完?非全量非全量全
4、量全量時間資金架構復雜度人力合作公司業務(全量)=核心業務(非全量)+非核心業務(非全量)WHAT:把什么做成雙中心?怎么算做完?核心業務核心業務A核心業務B核心業務C核心應用app1app2app3app20000DBMySQL 10000 個Redis 40000 個MongoDB 10000個SRESRE確定確定核心業務核心業務應用列表應用列表1.1.SRESRE梳理梳理數據庫列表數據庫列表2.2.DBADBA梳理梳理3.3.采購第一批采購第一批應用列表應用列表4.4.SRESRE查漏補缺查漏補缺數據庫列表數據庫列表5.5.DBADBA梳理梳理6.6.采購第二批采購第二批采購周期:采購周
5、期:1 1個月個月按照應用列表,梳理按照應用列表,梳理DBDB列表列表應用應用配配置置中中心心未知應用未知應用應用應用TVSTVS模塊模塊TOATOA配置中心配置中心DBADBA抓取會話客戶端地址雙中心應用列表雙中心應用列表校驗3月目標:核心業務目標:核心業務驗收:先切后斷驗收:先切后斷5月12月8月11月摸底:摸底:inging采購:第一批采購:第一批主庫切換主庫切換B B中心中心搭建雙中心集群搭建雙中心集群BufferBuffer6月采購:第二批采購:第二批10月如何選擇搭建過程的策略是否一次搭建是否一次搭建B B中心節點后,一次性切換?中心節點后,一次性切換?是否邊搭建是否邊搭建B B中
6、心節點邊切換的風險?中心節點邊切換的風險?搭建過程,人力和時間成本如何節約時間成本如何節約業務穩定性是否會影響?業務穩定性是否會影響?如何控制延期風險?如何控制延期風險?12345 業務高峰業務高峰DBA 添加添加B中心節點中心節點業務低峰業務低峰DBA 切換寫庫到切換寫庫到B中心中心業務穩定性被影響人力成本奇大雙中心雖然是雙中心雖然是機房級別機房級別的容災方案,的容災方案,實際要實現的是實際要實現的是集群維度集群維度的雙中心容災能力的雙中心容災能力 MHAMHA容器化管理容器化管理服務器:千臺服務器:千臺數據庫集群:萬套數據庫集群:萬套數據庫節點:萬個數據庫節點:萬個MHA服務中心A中心BM
7、HAMHAMHAMHAMHAMHAMHAMHA機房切換模塊切換優化中心A中心B主從復制主從復制主從復制集群維度沒有解耦機房切換模塊DTS數據傳輸服務切換優化中心A中心B集群維度解耦,跨機房節點延遲略有升高機房切換模塊中心A公有云APP智能解析TVSVIP+VPORTIP+PORTIP+PORTProxy中心BAPP智能解析TVSVIP+VPORTIP+PORTIP+PORTProxy寫讀讀避免環路中心A公有云APP智能解析TVSVIP+VPORTIP+PORTIP+PORTProxy中心BAPP智能解析TVSVIP+VPORTIP+PORTIP+PORTProxy寫中心C管控服務讀讀災備直連驗收:驗收:斷網斷網演練演練 中心A斷網,告警怎么辦?如何知道A、B中心的DB狀態符合預期如何判定斷網成功?網絡隔離不符合預期應用關系依賴問題第一次斷網演練的異常A中心B中心會話采集器狀態預測會話采集器狀態預測收集結果Grafana開通白名單00:10:10會話采集器開始運行MySQLProcesslist00:10:00開始斷網MySQL是否有其他中心的IP訪問MySQLTime 是否小于10秒10秒 保障B中心的業務完整性解決技術債務實現雙中心自動切換未來規劃