Kubernetes限制節(jié)點啟動的Pod數(shù)量


Node節(jié)點默認的Pod數(shù)量
Kubernetes Node節(jié)點每個默認允許最多創(chuàng)建110個Pod,有時可能會由于系統(tǒng)硬件的問題,從而需要控制Node節(jié)點的Pod的運行數(shù)量。
即:需要調(diào)整Node節(jié)點的最大可運行Pod數(shù)量。
一般來說,我們只需要在kubelet啟動命令中增加–max-pods參數(shù),然后,重啟kubelet 服務(wù),就生效。
重啟kubelet,不影響現(xiàn)有運行中的容器,不會造成容器重啟。
修改限制Pod啟動數(shù)量

可以看到,集群當前有3臺Node節(jié)點,且最大可運行Pod數(shù)量均為默認值:110。
接下來,我們來修改該參數(shù)值。
修改
1、登錄 Node 節(jié)點,查看kubelet啟動文件路徑
[root@VM-2-8-centos?~]#?systemctl?status?kubelet

從上圖可以看到,kubelet 的啟動文件為/usr/lib/systemd/system/kubelet.service
2、查看 systemd 啟動文件

可以看到,Environment文件是引用/etc/kubernetes/kubelet,至此,我們只需要在/etc/kubernetes/kubelet中增加max-pods的變量,然后在/usr/lib/systemd/system/kubelet.service中,將變量添加到啟動參數(shù)后即可。
3、修改/etc/kubernetes/kubelet
強烈建議,在修改Pod數(shù)量的時候,如果是縮減(當前運行70個Pod,所見到20個),強烈建議先把Node上的Pod驅(qū)散,等驅(qū)散完了在重啟,最后在激活Node。
[root@VM-2-8-centos?~]#?vim?/etc/kubernetes/kubelet??
#?增加??
MAX_PODS="--max-pods=61"
4、修改/usr/lib/systemd/system/kubelet.service
注意:必須在啟動命令后加入該變量,才可以使剛才定義的--max-pods=61生效。

5、重啟kubelet
[root@VM-2-8-centos?~]#?systemctl??daemon-reload??
[root@VM-2-8-centos?~]#?systemctl?restart?kubelet
查看修改結(jié)果

可以看到,已經(jīng)完成修改的節(jié)點的最大可調(diào)度Pod數(shù)量已經(jīng)調(diào)整為61。配置生效。
新建監(jiān)控視圖
在這里,我們可以部署Prometheus + Grafana,配置監(jiān)控視圖,更好的體現(xiàn)集群中節(jié)點的 Pod 分配率。
PromQL:
sum(kubelet_running_po\_count{node=~"$node"})?by?(cluster,?node)?/?sum(kube_node_status_allocatable_pods{node=~"$node"})?by?(cluster,?node)
效果展示:

原文鏈接:https://juejin.cn/post/6997242322769412127
文章轉(zhuǎn)載:分布式實驗室
(版權(quán)歸原作者所有,侵刪)
![]()

點擊下方“閱讀原文”查看更多
