原创 圖解kubernetes命令執行核心實現

K8s中的命令執行由apiserver、kubelet、cri、docker等組件共同完成, 其中最複雜的就是協議切換以及各種流拷貝相關,讓我們一起來看下關鍵實現,雖然代碼比較多,但是不會開發應該也能看懂,祝你好運 1. 基礎概念 K8s中

原创 圖解kubernetes中的api多版本機制實現

在web開發中隨着版本的更新迭代,通常要在系統中維護多個版本的api,多個版本的api在數據結構上往往也各不相同,今天就來一起學習下kubernetes中的Scheme機制是如何解決這個問題的,如何藉助HTTP請求裏面的數據進行反序列化操作

原创 # IT明星不是夢 #圖解kubernetes中Pod生命之初的坎坷歷程

kubernetes中的容器創建無疑是個複雜的過程,涉及內部各種組件的統一協作,還有對接外部的CRI運行時,本文嘗試初探一下容器創建流程中的各種細節,瞭解其各種組件協作流程,從而在後續出現問題的時候,也好能大概有點排查方向 1. 基礎築基

原创 # IT明星不是夢 # 圖解kubernetes Kubelet驅逐管理關鍵實現

驅逐管理是kubelet自我保護的一種機制,當資源缺乏的時候,通過閾值和策略主動驅逐部分的Pod從而保持系統的資源水位在一個合理的範圍內,本身的策略官方文檔上已經寫的很詳細,今天只是看下其在代碼上的一些設計 1. 設計臆測 1.1 驅逐總體

原创 # IT明星不是夢 #圖解kubernetes容器探活機制核心實現狀態管理

k8s爲實現容器探活worker的管理構建了一個Manager組件,該組件負責底層探活worker的管理,並且緩存當前的容器的狀態,並對外同步容器的當前狀態,今天我們就來分析下其部分核心組件 1. 核心原理實現 Manager緩存的狀態主要

原创 # IT明星不是夢 # 圖解kubernetes資源擴展機制實現(上)

k8s目前主要支持CPU和內存兩種資源,爲了支持用戶需要按需分配的其他硬件類型的資源的調度分配,k8s實現了設備插件框架(device plugin framework)來用於其他硬件類型的資源集成,比如現在機器學習要使用GPU等資源,今天

原创 # IT明星不是夢 # 圖解kubernetes資源QOS機制實現原理

QOS是k8s中一種資源保護機制,其主要是針對不可壓縮資源比如的內存的一種控制技術,比如在內存中其通過爲不同的Pod和容器構造OOM評分,並且通過內核的策略的輔助,從而實現當節點內存資源不足的時候,內核可以按照策略的優先級,優先kill掉哪