k8s如何修改限制节点启动的Pod数量?

介绍


由于业务需要,我们在3个节点上需要运行大量资源消耗非常小的pod,每个节点运行200个pod;

今天意外发生故障,造成这3个节点上所有容器并发重启。造成这3个节点在容器重启过程中,资源耗尽,并进入挂掉的状态。

Node节点默认的Pod数量


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

即:需要调整Node节点的最大可运行Pod数量。
一般来说,我们只需要在kubelet启动命令中增加–max-pods参数,然后,重启kubelet 服务,就生效。
重启kubelet,不影响现有运行中的容器,不会造成容器重启。

修改限制Pod启动数量


在这里插入图片描述

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

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

修改Pod启动数量

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

[root@code404.icu ~]# 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中,将变量添加到启动参数后即可。

3、修改/etc/kubernetes/kubelet

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

[root@code404.icu ~]# vim /etc/kubernetes/kubelet
# 增加
MAX_PODS="--max-pods=61"
4、修改/usr/lib/systemd/system/kubelet.service

注意:必须在启动命令后加入该变量,才可以使刚才定义的–max-pods=61生效。
在这里插入图片描述

5、重启kubelet

[root@code404.icu ~]# systemctl  daemon-reload
[root@code404.icu ~]# systemctl restart kubelet

查看修改结果
在这里插入图片描述
可以看到,已经完成修改的节点的最大可调度Pod数量已经调整为61。配置生效。

CSDN_码404:k8s如何修改限制节点启动的Pod数量?
https://www.code404.icu/1488.html

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值