《分布式數據庫運維-從自動化到智能化_徐戟.pdf》由會員分享,可在線閱讀,更多相關《分布式數據庫運維-從自動化到智能化_徐戟.pdf(25頁珍藏版)》請在三個皮匠報告上搜索。
1、從自動化到智能化徐戟基石數據技術總監分布式數據庫運維分布式數據庫運維數據庫運維中的最大困難是未知運維領域的至理名言 運維知識與經驗極其匱乏 復雜的集群架構 復雜的用戶租戶結構 超級復雜的指標與狀態體系 不同的數據庫產品之間的特性差異太大 日常運維訴求場景 IT核心資產的狀況掌握 IT組件當前運行健康狀態感知 大量耗費人力的日常巡檢如何自動化 關鍵系統上線時的專家護航 安全監管考核要求的合規檢查 性能瓶頸點的快速溯源和診斷 SQL審計與診斷分析 常見運維故障場景的快速響應分布式數據庫運維的挑戰橫向擴展,性能無憂通過橫向擴展解決系統容量問題分布式并行執行,提高大型查詢的效率多副本讀寫分離,充分利用
2、硬件資源不過擴容時是最容易出問題的時候分布式數據庫的復雜性帶來的運維新問題網絡問題引發的性能與運行問題比較難以發現與解決不怕硬件故障,就怕硬件時好時壞集群數據分布不合理導致的性能問題集群節點負載不均衡導致的性能問題指標背后的運維知識十分模糊出現問題后定位較為困難架構上的高可用特性,簡化了部分運維特性無單點故障故障自動切換小問題無需運維介入,出事都是大問題分布式數據庫運維的特點集群整體監控的難點z z分布式數據庫的服務能力取決于整個集群,因此集群的整體健康監控十分關鍵但是某個單一節點的問題很可能會對集群整體造成影響,又不能不關注。宏觀與微觀必須全面兼顧,出了問題需要先發現問題是屬于宏觀的集群問題
3、還是屬于微觀的組件問題。下面是OceanBase 數據庫的一個集群拓撲。分布式數據庫與集中式數據庫不同,多節點,多組件,多租戶等特復雜特性,讓指標采集、性能診斷、故障定位、監控預警等的復雜度都極大的提升。z z 指標的復雜性 時間同步 操作系統健康 可用內存/OOM SCORE/NUMA節點內存 IO負載與IO延時 CPU是否長時間處于瓶頸 負載是否均衡 長時間負載不均衡說明數據分布,業務負載分布等存在問題,影響數據庫健康 分布式執行計劃不合理可能導致某節點負載過高 數據分布不均衡可能daozhi某個節點負載過高 網絡健康 網絡延時 網絡吞吐量 網絡丟包 容量管理 分布式數據庫節點容量高水位不
4、宜過高分布式數據庫運維的一些特殊方面在分布式數據庫里,每個指標在各個節點上都有差異,因此指標采集和匯聚也會存在不同。需要對指標進行加工處理后才更有價值。以Oceanbase為例:問題多節點、多租戶的集群帶來極大的復雜性,依靠人工監控與運維難度極大。自動化智能化是分布式數據庫運維的必由之路分布式數據庫中的指標知識庫算法庫案例庫戰役拉動智能化算法智能化算法基于“運維知識自動化”理念可以構建一套自動化的體系,將專家知識、大數據分析、智能算法融為一體,從而將知識固化在系統中,實現真正的知識積累。并用積累下來的知識幫助運維人員分析問題,診斷故障,從而簡化分布式數據庫的運維。標準指標體系標準指標體系數據庫
5、運維新思路戰役拉動基礎數據能力增強是實現智能化運維的基礎。指標標準也是一種運維知識,通過運維專家對運維對象指標體系的分解,構建了能夠支持進行全面、準確分析的標準化指標體系。運維對象梳理要點管理類對象關系運維要點關鍵操作命令配置類配置文件核心參數技術類指標類日志運維基礎數據能力01 關鍵建設工作 運維對象梳理 運維對象健康要點分析 運維對象指標集梳理 運維對象關鍵指標梳理 運維對象編碼標準設計 指標分類標準設計 指標編碼標準設計 指標標準屬性設計 指標存儲結構設計 指標分級存儲規范設計 指標訂閱與應用接口規范設計02 指標采集原則 采集方式安全可靠,不會破壞生產系統 遵循數據與網絡安全規范安全可
6、靠 避免過多消耗生產系統的資源 避免帶來生產系統故障隱患最小影響 一次采集,多處使用,避免同一指標多次采集 只采集基礎數據,采集后平臺里加工,減少同類指標采集次數避免重復 一次連接采集多個指標,不允許單一指標建立獨立連接采集 盡可能在一個命令中采集多個指標批量采集基礎數據能力建設模式基礎數據能力構成節點操作系統數據庫服務網絡存儲服務存儲分布式數據庫集群組件負載均衡采集運維對象運行數據采集運維對象日志數據從數據中臺獲取加工數據指標原始數值時間段增量差值時間段平均值單次平均值加權平均值統計分析值平均值穩定性趨勢評估值風險評估值預測值直方圖標準差/方差每秒/每分最近5分鐘最近一小時繁忙時段空閑時段空
7、閑時段日平均周平均月平均指標分類及加工標準構建OceanBase知識的重要參考資料面向 OceanBase 的監控能力在基礎數據能力增強的幫助下,實現更加全面的監控。針對各類數據庫系統的關鍵指標、健康狀態、運行狀態、關鍵SQL等進行全面的監控。預警能力通過智能化算法實現動態基線,并不斷積累故障模型的知識,實現模型對運維故障90%以上的覆蓋,真正做到問題發生前能提前預知,問題發生時能及時告警。分析能力運維知識圖譜建設是數字化能力的基礎。通過知識梳理形成完善的知識庫體系,并根據實際應用案例不斷提煉和豐富知識圖譜,使分析能力不斷提升?;谶\維知識圖譜可以實現智能化推理,獲得超越專家的能力。實現智能診
8、斷的基礎指標知識指標的含義指標影響的主要因素指標可能的衍生影響指標和哪些數據庫的行為與特點相關,指標異??赡苡绊懩男┓矫娴却录R與等待事件相關的因素等待事件的風險等級等待事件的關聯性哪些等待事件出現說明系統存在風險,風險主要集中在什么方面,如何消除風險故障場景通過運維經驗積累故障場景對故障場景進行深度分析相關指標的異常相關等待事件相關異常哪些故障場景是我們需要關注,哪些需要預警。出現某個故障場景如何進行分析知識圖譜構建(1)-OceanBase fuse cache (加強行緩沖命中率)=+內存與配置問題數據問題并發問題應用問題加強行緩沖加強行緩沖命中率異常命中率異常資源池內存不足緩沖區配
9、置不合理數據異常增長數據版本過多訪問模式問題,較少重復訪問某一行數據SQL語句問題應用BUGSQL并發執行量過大分布式調度不均衡掃描范圍過大執行計劃錯誤知識圖譜構建(2)-OceanBase io延時平均讀延時=平均讀流量=平均讀lO延時過高讀讀ioio性能分析性能分析平均讀IO流量過大O 平均讀IO流量正常 IO設備問題 負載問題 SQL語句問題 負載問題平均讀IO延時STD較大&分區數據不均衡 內存問題 平均讀IO流量STD較大知識點工具巡檢知識點用于某個巡檢項由于巡檢與故障分析的尺度不同,因此無法與分析診斷共享分析診斷知識點用于分析某個具體問題只用于問題分析路由知識點用于建立知識點之間的
10、關聯可用于智能異常檢測,不能用于具體定位問題驗證知識點僅用于問題收斂時的確認與排除基于知識圖譜的自動化診斷問題感知知識點知識點知識點知識點知識點知識點指標規則指標規則指標指標指標指標指標知識點指標問題發現利用知識庫進行問題發現與隱性問題發現通過知識圖譜找出指標集異常檢測問題歸納診斷路徑推薦診斷工具推薦異常檢測ADFADFADFADF智能路徑推薦診斷結論工具工具工具工具運維模式的升級自動化運維通過基線、專家模型等方式自動處理采集回來的數據通過自動化工具代替部分人工運維具有基于規則的自動預警能力配置成本較高對于已知問題的處理效率較高知識積累成本較高智能化運維通過智能化算法輔助運維配置成本低,基線自
11、動管理知識積累成本較低可用于復雜的未知問題分析,輔助專家診斷監控自動采集數據以人為主的運維模式需要主動監控采集數據較為簡單技術路線的選擇以 NPM 為核心的全鏈路監控 優勢:可以較為全面的觀察到鏈路上每個環節的運行效率 缺點:較難深入的對具體IT組件進行下鉆分析大數據分析+算法為核心的智能化分析 優勢:利用大數據分析和算法的能力可能發現專家忽視的問題 缺點:需要大量的專家標注,成本較高,效率太低專家模型+運維知識圖譜+算法 優勢:針對具體IT組件的分析能力較強,根因溯源較容易實現 缺點:需要高水平專家參與,全鏈路整合分析數據聚合工作量較大簡單的采用某種方法都存在較大缺陷,很難達到預定目標日常監控采用方法一+方法二可以構建較為全面的監控與診斷能力方法二比較適合于分析重點問題,不太適合日常監控,方法二的結果可以用于提升方法三的能力采用方法三可以較快速的構建可長期起效的產品化的解決方案并進行長期迭代自動化運維&智能化運維各自擅長的領域自動化 指標監控 基線管理 系統日檢 數據庫巡檢 合規性檢查 SQL審計智能化 健康模型 故障模型 智能基線 故障診斷 關聯性分析 智能指標分析可探索的新方向-CHATGPT的啟示Thank you!歡迎交流