我從 2018 年開始使用 Kubernetes,最近因緣際會又重新學了一遍。雖然這些年一直在用,但發現 Kubernetes 在這六年間有了不少變化。為了更新自己的知識,也想跟大家分享,所以參加了鐵人賽。
對我來說,學習就是不斷思考的過程。這次重新學 Kubernetes,就像是重新思考一次,所以我選了 "Think Again" 當主題。
市面上已經有很多介紹 Kubernetes 的好文章了,所以這系列文章我會更專注於設計原理、有趣的細節挖掘,還有一些範式的討論。希望你在閱讀時,能發現一些有趣的想法,也能享受這個過程。
Day 21 利用 kube-scheduler-simulator 測試 Preemption 在 Kubernetes 中,搶佔(Preemption)是一...
什麼是驅逐? 驅逐是指 Kubernetes 從叢集中移除正在執行的 Pod 的過程。這可以透過 API 主動進行,也可以由 kubelet 作為對節點壓力做出...
這篇文章會解釋 Node Pressure Eviction 是什麼 什麼時候觸發 Node Pressure Eviction kubelet 是 Ku...
自我修復 (Self Healing) 與資源回收: 在啟動驅逐程序之前,Kubelet 會嘗試進行自我修復,盡可能回收 Node 的資源,避免不必要的 驅逐。...
當我們在配置 pod.spec.containers.resources.requests 以及 pod.spec.containers.resources.l...
誤解2:resources.limits 只要比 usage 還要高就不會有事。 由於記憶體是一種不可壓縮資源,所以 usage 超過 limits 就會出現...
Layerd cgroup 啟動 kubelet 之後,kubelet 會創建一個五層 cgroup,這篇文章介紹這五層 cgroup 的責任與角色 roo...
這個文章將用 kind 帶領大家探索 Layered cgroup 步驟 創建 kind 在設定檔中指定 worker node 進入 worker...
前面提到設定 resources.limits.cpu 會造成 CPU throttling,造成資源沒有效率的應用,也影響到應用程式的表現,Kubernete...
Day 30 ArgoCD: 架構、Pipeline 以及 GitOps bridge 這是第三十天,作為完成鐵人賽的最後一篇文章,作者要分享的是關於 Argo...