首页 运维干货Kubernetes限制节点启动的Pod数量

Kubernetes限制节点启动的Pod数量

运维派隶属马哥教育旗下专业运维社区,是国内成立最早的IT运维技术社区,欢迎关注公众号:yunweipai
领取学习更多免费Linux云计算、Python、Docker、K8s教程关注公众号:马哥linux运维

Kubernetes限制节点启动的Pod数量插图

Node节点默认的Pod数量

Kubernetes Node节点每个默认允许最多创建110个Pod,有时可能会由于系统硬件的问题,从而需要控制Node节点的Pod的运行数量。

即:需要调整Node节点的最大可运行Pod数量。

一般来说,我们只需要在kubelet启动命令中增加–max-pods参数,然后,重启kubelet 服务,就生效。

重启kubelet,不影响现有运行中的容器,不会造成容器重启。

修改限制Pod启动数量

Kubernetes限制节点启动的Pod数量插图1

可以看到,集群当前有3台Node节点,且最大可运行Pod数量均为默认值:110。

接下来,我们来修改该参数值。

修改

1、登录 Node 节点,查看kubelet启动文件路径

[root@VM-2-8-centos ~]# systemctl status kubelet

Kubernetes限制节点启动的Pod数量插图2

从上图可以看到,kubelet 的启动文件为/usr/lib/systemd/system/kubelet.service

2、查看 systemd 启动文件

Kubernetes限制节点启动的Pod数量插图3

可以看到,Environment文件是引用/etc/kubernetes/kubelet,至此,我们只需要在/etc/kubernetes/kubelet中增加max-pods的变量,然后在/usr/lib/systemd/system/kubelet.service中,将变量添加到启动参数后即可。

3、修改/etc/kubernetes/kubelet

强烈建议,在修改Pod数量的时候,如果是缩减(当前运行70个Pod,所见到20个),强烈建议先把Node上的Pod驱散,等驱散完了在重启,最后在激活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生效。

Kubernetes限制节点启动的Pod数量插图4

5、重启kubelet

[root@VM-2-8-centos ~]# systemctl  daemon-reload  
[root@VM-2-8-centos ~]# systemctl restart kubelet

查看修改结果

Kubernetes限制节点启动的Pod数量插图5

可以看到,已经完成修改的节点的最大可调度Pod数量已经调整为61。配置生效。

新建监控视图

在这里,我们可以部署Prometheus + Grafana,配置监控视图,更好的体现集群中节点的 Pod 分配率。

PromQL:

sum(kubelet_running_po\_count{node=~"$node"}) by (cluster, node) / sum(kube_node_status_allocatable_pods{node=~"$node"}) by (cluster, node)

效果展示:

Kubernetes限制节点启动的Pod数量插图6

原文链接:https://juejin.cn/post/6997242322769412127

本文链接:http://www.yunweipai.com/40778.html

网友评论comments

发表评论

您的电子邮箱地址不会被公开。

暂无评论

Copyright © 2012-2022 YUNWEIPAI.COM - 运维派 京ICP备16064699号-6
扫二维码
扫二维码
返回顶部