万级 K8S 集群背后,etcd 如何保持稳定性?
這幾年,隨著 Kubernetes 成為容器編排領域霸主,etcd 越來越火,GitHub star 已超過 34.2K。這與它的應用場景廣泛密不可分,從服務發現到分布式鎖,從配置存儲到分布式協調,可以說,etcd 已成為云原生和分布式系統的存儲基石。
?
作為最熱門的云原生存儲之一,etcd 在騰訊、阿里、Google、AWS、美團、字節跳動、拼多多、Shopee 等公司都有大量應用,覆蓋的業務不僅僅是 Kubernetes 相關的容器產品,更有視頻、推薦、安全、游戲、存儲、集群調度等核心業務。
?
但在使用 etcd 的過程中,還是會遇到不少問題,比如:
etcd Watch 機制能保證事件不丟嗎?
哪些因素會導致集群 leader 發生切換??
為什么基于 Raft 實現的 etcd 還會數據不一致?
當你在一個 namespace 下創建了數萬個 Pod/CRD 資源,并通過標簽頻繁查詢指定 Pod/CRD 資源時,為什么 APIServer 和 etcd 會扛不住??
?
其實,在學習和使用 etcd、k8s 的過程中,會遇到的問題遠不止這些。分享給你一張?etcd 典型問題圖譜,你可以對照自己的經歷仔細查閱。
?
?
這張圖出自騰訊云資深工程師唐聰,他是騰訊云 etcd 負責人、2020 年?etcd 社區全球 Top3 活躍貢獻者,之前在社區沒少看到他提交的代碼。
?
后來我才知道,這幾年他一直在和 Redis、etcd 打交道,解決過很多大規模業務增長中的存儲穩定性、可擴展性等問題,積累了豐富的大規模集群實戰、治理經驗。參與 etcd 開源項目的貢獻經歷,也讓他對 etcd 和分布式服務有了更深入的理解。
?
所以,他能從開發者的視角出發,為你分析問題、梳理最佳實踐、解讀特性設計方案、闡述社區未來演進方向等等。這兩天,看他推出了專欄《etcd 實戰課》,試讀了幾篇文章和目錄,很想推薦給你。
?
在專欄中,他深入解析了 etcd 核心原理,系統梳理其高效學習路徑,幫你掌握實踐中各類復雜 etcd 問題的解決方案,和在 Kubernetes、服務發現等應用場景的最佳實踐,構建高可靠的 etcd 集群運維體系。
?
唐聰說,這個專欄是他自己多年經驗的交付,能解決你在學習、使用 etcd 過程中的很多問題。所以,跟著他學,你一定能用最低的學習成本,掌握 etcd 核心原理與最佳實踐,讓 etcd 真正為你所用,在工作中少踩坑、少交學費,多升職、多漲薪。
?
????掃碼免費試讀
拼團+口令「Happy2021」立省 ¥30
原價 ¥99,僅限今天 24:00 前
唐聰是誰?
前面已經提到,唐聰是騰訊云資深工程師,也是 2020 年 etcd 社區全球 Top3 的活躍貢獻者,修復了 etcd 數據不一致、內存泄露、死鎖、panic 等眾多問題,提升了 etcd 在大規模數據場景下的啟動、讀性能等。
?
他 2014 年本科畢業加入騰訊,不到一年時間,就主導完成了一個億級用戶的業務核心存儲平滑遷移任務。之后兩年,又構建了大規模排行榜和 Redis 集群平臺服務,支撐了公司內部多個重要業務,在這個過程中,他積累了大量 NoSQL 數據庫知識與經驗。
?
2017 年,唐聰開始接觸 Docker 和 Kubernetes,并通過 Kubernetes 解決大規模 Redis 集群的治理問題,提升服務的可用性、降低運維成本。而后他轉崗到騰訊云,負責 Kubernetes 集群存儲 etcd 治理工作。
?
現在他是騰訊云 etcd 負責人,主導構建的騰訊云原生 etcd 平臺,成功解決了集群大規模增長過程中各類 etcd 穩定性問題,支撐了萬級 Kubernetes 和 etcd 集群。目前,etcd 作為騰訊眾多產品的基礎設施,服務用戶已達數億。
唐聰是如何講解 etcd 的?
他把專欄分為兩大模塊,基礎篇和實踐篇。
?
基礎篇可以幫你建立對 etcd 的整體認知,搞懂讀寫請求、各個核心特性背后的原理。此外,基礎篇的學習也是一個中小型分布式存儲系統從 0 到 1 實現的案例解讀,你不僅會收獲 etcd,還有分布式存儲系統構建的理論知識,為下一步進階打好基礎。
?
?
在實踐篇中,唐聰為你解讀了 etcd 實際使用過程中可能會出現的各種典型問題,和各類復雜 etcd 問題的解決方案。
?
此外,他還分享了 etcd 在Kubernetes、Apache APISIX、分布式鎖等場景中的應用,為你梳理最佳實踐,讓你在業務中更好地使用 etcd,進而對 Kubernetes、Apache APISIX 等原理有更深層次的理解。
?
更多實踐篇內容,可以參考下面的思維導圖:
?
?
在課程中,他利用拆解法,為你制定了大、中、小三級目標,讓你每節課都有收獲,通過每個小目標的實現,最終達成個人能力的提升,徹底掌握 etcd。
?
下面是課程目錄:
?
訂閱福利
拼團+口令「Happy2021」立省 ¥30
到手僅 ¥69,原價 ¥99。
?
????掃碼免費試讀
????點擊「閱讀原文」
結算使用口令「happy2021」
立省 ¥30?入手,僅限今天 24:00 前有效。
總結
以上是生活随笔為你收集整理的万级 K8S 集群背后,etcd 如何保持稳定性?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: EntityFramework Core
- 下一篇: 穿背心的老院士,86岁,重病,还在敲代码