Title: Google 如何改善 Kubernetes Pod 啟動時 CPU 的使用問題
Source: https://github.com/google/kube-startup-cpu-boost
主要觀點:
- 部分應用程式可能因為框架或是程式語言的架構,導致 startup 時期需要更多的 CPU 來暖身
- 這導致應用程式很難去設定一個合理的 CPU 資源用量,給太多又浪費,給太少又會導致開機過慢
- Google 開發的這個控制器會嘗試啟動時期增加 CPU 資源用量,之後又會降到本來的階段,避免資源浪費
關鍵功能:
- 仰賴 k8s 後期推出的 in-place resource resize 功能來達到動態增加
- 透過 mutating admission webhook 來動態修改 YAML
結論
- k8s 1.27 的動態調整 CPU 用量實務上可以解決很多問題,不過要一直修改各種 YAML 來描述資源,因此透過這些 webhook 來達到動態修改似乎是個趨勢?

GitHub
GitHub - google/kube-startup-cpu-boost: Kube Startup CPU Boost is a controller that increases CPU resource requests and limits…
Kube Startup CPU Boost is a controller that increases CPU resource requests and limits during Kubernetes workload startup time - google/kube-startup-cpu-boost
October 20, 2024 831 3