伴隨著 TiDB 6.0 的發(fā)布,PingCAP Clinic 服務也揭開了她的面紗,提供 Tech Preview 版本給廣大用戶試用。Clinic 服務源于 TiDB Cloud,以智能診斷提升 TiDB Cloud SLA ,以 AIOPS 方式降低 TiDB Cloud 成本;同時 Clinic 也會將 Cloud 中積累的診斷經(jīng)驗、運維最佳實踐以診斷服務方式提供給本地部署的集群,使所有的云下用戶也從中受益。
本次發(fā)布的 Tech Preview 版本,對本地部署的用戶提供了診斷數(shù)據(jù)的快速采集和診斷環(huán)境的線上復現(xiàn),當 TiDB 集群遇到問題,邀請 PingCAP 技術支持人員協(xié)助遠程定位時,或者在 AskTUG 社區(qū)提問時,通過 Clinic 服務采集并上傳診斷數(shù)據(jù),將大大加快問題定位的速度。
Clinic 在 TiDB Cloud 中的應用
小吳是 TiDB Cloud 的技術工程師,在協(xié)助 TiDB Cloud 用戶進行 POC 時,需要實時關注客戶集群的健康狀態(tài)和各種監(jiān)控指標,根據(jù)客戶的業(yè)務壓力指標,推薦最優(yōu)的集群拓撲配置和數(shù)據(jù)庫參數(shù)配置;當用戶集群出現(xiàn)異常時,及時分析并解決問題,保證集群 SLA。
Clinic 診斷場景
小吳登錄到 Clinic 診斷服務,可以快速查詢到用戶所在集群的各個時間段的診斷數(shù)據(jù)。Clinic 將TiDB Cloud 平臺上的日志、監(jiān)控指標等診斷數(shù)據(jù)安全存儲,并提供可視化的展示。
除了基礎查看以外,Clinic 還提供智能分析。
智能分析延遲問題
某個用戶抱怨這段時間的延遲突然變大了,小吳同學會很直覺地去找系統(tǒng)中哪個環(huán)節(jié)哪個實例的耗時更大,這似乎不是一件很難的事情,但是他需要在各個 Grafana 面板之間反復橫跳地查找瓶頸,并從中眾多節(jié)點中找出一個問題節(jié)點,這是一件費時費力并且考驗耐心的工作。Clinic 診斷服務的智能分析很貼心地直接為小吳準備好了結果如下:
在診斷延遲變大問題時,識別當前的負載類型也是一個重要的步驟。如果只是單單看讀寫的比例可能還好,但是如果要看哪個實例間的讀寫不平衡度呢?現(xiàn)在有些用戶集群的 TiKV 實例已經(jīng)達到數(shù)十甚至上百,想要分析這些實例上的讀寫不平衡,幾乎是一件不適宜人眼工作的事情。但對于機器來說,計算這些并不是一個難事,Clinic 會結合上述問題時間段(比如延遲升高時),給出這段時間內不平衡度與平時(基線數(shù)據(jù))的區(qū)別。下圖是一個智能分析輸出的例子:
從上圖的分析上可以看出,在問題時間段內,點讀請求和 coprocessor 讀請求比平時上升,小吳可以根據(jù)這個線索繼續(xù)定位。
智能日志聚類分析
小吳同學除了分析 Metrics ,也要對集群日志進行分析查看。咱們 TiDB 集群的日志量是相當驚人的,組件再正交上實例,這個工作量也是非常大的。Clinic 提供智能日志聚類,幫助小吳同學在海量的日志中快速發(fā)現(xiàn)問題。
日志聚類將每個時間段內的不同日志的趨勢以可視化的方式展示,哪類日志的數(shù)量發(fā)生了突變,哪個實例的日志數(shù)量發(fā)生了突變,小吳同學一目了然,抓大放小,迅速聚焦到主要矛盾上。從下圖來看,當前時間段,TiDB 集群處理最多的是紅框中的兩件事,數(shù)量占比多的可以考慮優(yōu)先排查。
TiDB Cloud 場景小結
Clinic 的智能診斷還處于初級階段,在近期還會有更多的分析模型上線并應用到 TiDB Cloud 的診斷中,在實戰(zhàn)中不斷的訓練模型,輸出高準確率的問題判斷規(guī)則,提前發(fā)現(xiàn)集群風險點,提高問題修復速度,從而不斷提升 TiDB Cloud 服務的 SLA。
Clinic 助力云下本地部署集群的問題診斷
Clinic 診斷服務在 TiDB Cloud 上為小吳帶來了巨大的幫助,我們把 Clinic 的功能也提供給本地部署的集群,讓云下集群也能使用該功能進行問題診斷,這樣可以大大加速用戶問題的解決。
在 Tech Preview 階段,Clinic 中數(shù)據(jù)導出、診斷環(huán)境重建的功能開放給了本地部署的集群。當本地部署的TiDB集群遇到問題,邀請 PingCAP 技術支持人員協(xié)助遠程定位時,或者在 AskTUG 社區(qū)提問時,通過 Clinic 服務采集并上傳診斷數(shù)據(jù),將大大加快問題定位的速度。
注意 Clinic 的智能分析相關功能暫時未在 Tech Preview 階段開放給本地部署的集群。我們需要在 TiDB Cloud 中做更多的數(shù)據(jù)訓練,當分析模型的準確度和計算成本都達到一定標準后,即會對云下的集群開放。
數(shù)據(jù)采集和上傳
小宇是 TiDB 集群的 DBA,近期集群接入了一個新的上層業(yè)務,集群出現(xiàn)性能問題, 小宇向 PingCAP 技術支持上報了問題,期望能盡快得到優(yōu)化的建議。
在以往的類似場景中,上報問題以后,PingCAP 技術支持會要求小宇上傳各種診斷信息,小宇需要去集群上手動執(zhí)行多個復雜的命令,包括抓取各個節(jié)點的日志文件、使用 Metrics Tool 逐個 Dashboard 保存數(shù)據(jù)等,一套采集、溝通和傳送數(shù)據(jù),往往就花了大半天時間。如今 PingCAP 技術支持同學建議小宇使用 Clinic 的采集工具,只需要一條命令,快速完成數(shù)據(jù)采集,然后直接上傳數(shù)據(jù)分享給技術支持。
小宇運行一條簡單的命令,就能采集最近 2 小時的集群各節(jié)點日志、metrics、配置項、硬件參數(shù)信息:
采集完成后,直接上傳至 Clinic 服務:
Clinic 的診斷環(huán)境復現(xiàn)
數(shù)據(jù)上傳后,小宇登錄 Clinic,就能可視化的查看自己的診斷數(shù)據(jù)。將數(shù)據(jù)鏈接分享給 PingCAP 技術支持以后,PingCAP 技術專家也能立即查看全面的診斷數(shù)據(jù),加速問題定位。
·查看 Metrics
支持在線查看 Metrics,提供多個 Grafana Dashboard 模板以方便查看。
·查看日志
支持在線查看日志,可以通過各種過濾條件高效查看日志。
·查看慢查詢
支持在線查看慢查詢信息,與在集群內部的 TiDB Dashboard 上看到的信息一致。
Clinic 的未來
Clinic 服務的發(fā)布,代表 PingCAP 會在保證數(shù)據(jù)庫的健康運行方面持續(xù)地投入,Clinic 的最終愿景是通過 TiDB Cloud 的技術積淀,整體提升云上云下 TiDB 集群的穩(wěn)定性,降低運維成本,讓數(shù)據(jù)庫的運維更簡單。
Clinic 服務后續(xù)發(fā)展的方向主要集中在這幾點:
·云上云下兼顧:Clinic 服務始終堅持在云上做技術沉淀,將云上積累的經(jīng)驗通過診斷服務、運維服務的方式提供給云下集群 ,讓所有部署類型的集群都受益。
·AI for DB:Clinic 服務使用最新的 AI 技術,由數(shù)據(jù)庫領域專家和 AI 領域專家深入合作進行模型建立和訓練,最大限度地借助 AI 能力進行問題預判、問題診斷和根因排查。
·數(shù)據(jù)庫自治服務:Clinic 服務逐步實現(xiàn)數(shù)據(jù)庫自預判、自優(yōu)化、自修復,以自治的方式替代人工運維操作,幫助用戶消除數(shù)據(jù)庫管理的復雜性及人工操作引發(fā)的服務故障,及時分析并解決問題,保證集群穩(wěn)定運行。
(免責聲明:本網(wǎng)站內容主要來自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網(wǎng)站出現(xiàn)的信息,均僅供參考。本網(wǎng)站將盡力確保所提供信息的準確性及可靠性,但不保證有關資料的準確性及可靠性,讀者在使用前請進一步核實,并對任何自主決定的行為負責。本網(wǎng)站對有關資料所引致的錯誤、不確或遺漏,概不負任何法律責任。
任何單位或個人認為本網(wǎng)站中的網(wǎng)頁或鏈接內容可能涉嫌侵犯其知識產(chǎn)權或存在不實內容時,應及時向本網(wǎng)站提出書面權利通知或不實情況說明,并提供身份證明、權屬證明及詳細侵權或不實情況證明。本網(wǎng)站在收到上述法律文件后,將會依法盡快聯(lián)系相關文章源頭核實,溝通刪除相關內容或斷開相關鏈接。 )