挑戰
PingCAP 是領先的流行開源 NewSQL 資料庫 TiDB 的開發公司。TiDB 相容 MySQL,可以處理混合事務/分析處理 (HTAP) 工作負載,並具有云原生架構設計。“擁有一個混合多雲產品是我們全球市場戰略的重要組成部分,”全球戰略與運營總經理 Kevin Xu 說。為了實現這一目標,團隊必須解決兩個挑戰:Kevin Xu 說:“如何在容器化世界中部署、執行和管理分散式有狀態應用程式,例如像 TiDB 這樣的分散式資料庫”,以及“如何為客戶在使用 TiDB 時提供易用、一致且可靠的體驗,無論是在單個雲提供商還是在不同雲環境的組合中。”意識到使用分散式系統並非易事,他們開始尋找合適的編排層來幫助減少終端使用者的複雜性。
解決方案
團隊很早就開始關注 Kubernetes 進行編排。Kevin Xu 說:“我們知道 Kubernetes 有望幫助我們解決問題。” “我們只是在等待它成熟。” 2018年初,PingCAP 開始將 Kubernetes 整合到其內部開發以及 TiDB 產品中。那時,團隊已經有使用其他雲原生技術的經驗,早期就已將 Prometheus 和 gRPC 整合到 TiDB 平臺中。
影響
Kevin Xu 表示,迄今為止,PingCAP 客戶對將 Kubernetes 作為部署和管理 TiDB 的工具反應“非常積極”。當客戶部署 TiDB 時,預設會安裝 Prometheus,並以 Grafana 作為儀表板,以便他們可以在生產中部署 TiDB 之前和期間監控效能並進行任何必要的調整以達到目標。Kevin Xu 說,這個監控層“使評估過程和溝通更加順暢”。
透過公司開源的 基於 Kubernetes 的 Operator 實現,客戶現在能夠以零停機時間、減少工作量、負擔和開銷的方式在雲中部署、執行、管理、升級和維護其 TiDB 叢集。Kevin Xu 說,在內部,“我們已完全轉向 Kubernetes 進行我們自己的開發和測試,包括我們的資料中心基礎設施和 Schrodinger,這是一個用於 TiDB 的自動化測試平臺。透過 Kubernetes,我們的資源利用率大大提高。我們的開發人員可以自行分配和部署叢集,部署過程已從數小時縮短到數分鐘,因此我們可以投入更少的人員來管理 IDC 資源。生產力提高了約 15%,隨著我們在除錯和診斷方面獲得更多 Kubernetes 知識,生產力應提高到 20% 以上。”
TiDB 背後的公司 PingCAP 從一開始就將平臺設計為雲優先,全球戰略與運營總經理 Kevin Xu 表示,“擁有一個混合多雲產品是我們全球市場戰略的重要組成部分。”
為了實現這一目標,團隊必須解決兩個挑戰:Kevin Xu 說:“如何在容器化世界中部署、執行和管理分散式有狀態應用程式,例如像 TiDB 這樣的分散式資料庫”,以及“如何為客戶在使用 TiDB 時提供易用、一致且可靠的體驗,無論是在單個雲提供商還是在不同雲環境的組合中。”
PingCAP 團隊深知使用分散式系統並非易事,因此開始尋找合適的編排層來幫助減少終端使用者的複雜性。Kubernetes 在他們的關注列表中已經有一段時間了。Kevin Xu 說:“我們知道 Kubernetes 有望幫助我們解決問題。” “我們只是在等待它成熟。”
2018 年初,時機成熟,PingCAP 開始將 Kubernetes 整合到其內部開發以及 TiDB 產品中。Kevin Xu 表示:“Kubernetes 成為 CNCF 的一部分,而不是僅得到一家公司的支援,這對於我們對這項技術的長久性充滿信心非常有價值。” 此外,“治理過程如此開放,不難發現技術和社群的最新發展,或者在我們遇到問題時知道該聯絡誰。”
TiDB 的雲原生架構由一個無狀態的 SQL 層(也稱為 TiDB)和一個支援分散式事務的持久鍵值儲存層(TiKV,目前在 CNCF Sandbox 中)組成,它們是鬆散耦合的。Kevin Xu 說:“你可以根據計算和儲存需求進行橫向擴充套件或收縮,這兩個擴充套件過程可以相互獨立地發生。” PingCAP 團隊還基於 Kubernetes 構建了 TiDB Operator,它有助於在任何雲環境中引導 TiDB 叢集,並簡化和自動化部署、擴充套件、排程、升級和維護。該公司最近還預覽了其完全託管的 TiDB Cloud 服務。
整個 TiDB 平臺利用 Kubernetes 和其他雲原生技術,包括用於監控的 Prometheus 和用於服務間通訊的 gRPC。
迄今為止,客戶對支援 Kubernetes 的平臺反應“非常積極”。當客戶部署 TiDB 時,預設安裝 Prometheus,並以 Grafana 作為儀表板,以便他們可以在生產中部署 TiDB 之前監控並進行任何必要的調整以滿足其效能要求。Kevin Xu 表示,這個監控層“使評估過程和溝通更加順暢”。透過公司基於 Kubernetes 的 Operator 實現,客戶現在能夠以零停機時間、減少工作量、負擔和開銷的方式在雲中部署、執行、管理、升級和維護其 TiDB 叢集。
這些技術也在內部產生了影響。Kevin Xu 說:“我們已完全轉向 Kubernetes 進行我們自己的開發和測試,包括我們的資料中心基礎設施和 Schrodinger,這是一個用於 TiDB 的自動化測試平臺。” “透過 Kubernetes,我們的資源利用率大大提高。我們的開發人員可以自行分配和部署叢集,部署過程耗時更短,因此我們可以投入更少的人員來管理 IDC 資源。
生產力提高了約 15%,隨著我們在除錯和診斷方面獲得更多 Kubernetes 知識,生產力應提高到 20% 以上。”
Kubernetes 現在是 PingCAP 產品路線圖的關鍵部分。對於任何考慮轉向雲原生的人,Kevin Xu 提出了以下建議:“現在是開始的最佳時機,”他說。“整個雲原生社群,無論是 Kubernetes、CNCF 整體,還是像我們這樣的雲原生供應商,都積累了足夠的經驗——並擁有證明這一點的戰鬥傷疤——隨時準備幫助你成功。”
事實上,PingCAP 團隊看到越來越多的客戶轉向雲原生方法,原因充分。Kevin Xu 表示:“IT 基礎設施正在迅速從成本中心和事後考慮轉變為任何公司的核心能力和競爭力。” “雲原生基礎設施不僅能節省你的資金,讓你更好地控制所消耗的基礎設施資源,還能賦能新的產品創新、為使用者帶來新的體驗以及新的商業可能性。它既能降低成本,又能創造收入。”