当前位置: 首页 > news >正文

k8s 调整Node节点 Max_Pods

默认情况下,Kubernetes集群中一个Node最多能起110个Pod。
这是基于性能和资源管理的考虑,以确保Kubernetes集群的稳定性和可靠性。

查看kht125节点上支持的最大pod数量:

kubectl describe node kht125 | grep -i “Capacity|Allocatable” -A 6
在这里插入图片描述

调整Node节点Max_Pods的方法如下:

  1. 查看节点上kubelet启动时用的配置文件:使用systemctl status kubelet -l命令查看。
  2. 修改配置文件:找到kubelet的配置文件,通常为/var/lib/kubelet/config.yaml。如果文件中存在maxPods参数,则将其修改为所需的值;如果没有此参数,则直接添加,例如maxPods: 120,注意要顶格,前面不要有空格。
  3. 重启修改Pod数量的节点上的kubelet服务:使用systemctl restart kubelet命令重启。在master节点上用kubectl get nodes查看该节点的状态,若为Ready则表示成功;如果是NotReady,可等一会或者查看kubelet日志以确定是否启动成功。也可以使用kubectl describe node查看输出结果里的Pods参数是否已变成修改后的值。

当Pod数量达到节点上限时,可以采取以下具体操作:

  • 增加节点数量:在节点页面查看容器组、CPU、内存的使用情况,确定集群的资源使用率,根据Pod声明的亲和性策略在集群中添加新的节点。例如,使用云服务提供商的相关接口或命令行工具创建新的节点并加入集群。
  • 调整资源分配:检查Pod资源配额设置,对于资源设置不合理的Pod,适当调整其CPU、内存等资源请求和限制,以释放一些节点资源,让新的Pod能够调度到该节点上。
  • 优化Pod分布:检查Pod的分布情况,看是否存在某些节点上Pod分布过于密集,而其他节点资源利用率较低的情况。可以通过调整Pod的调度策略,如使用节点亲和性、反亲和性等,将Pod分散到其他资源充足的节点上。
  • 删除不必要的Pod:如果有一些不重要或暂时不需要的Pod正在运行,可以考虑删除它们,以腾出空间来调度新的Pod。但在删除Pod时,需要确保不会影响到业务的正常运行。

###########################################

Kubernetes集群中一个Node默认最多能起110个Pod,但你看到大于110甚至是254的情况,可能有以下原因:

  • 网络插件影响:不同的网络插件对Node节点上Pod数量的限制有所不同。例如,在Flannel网络模式下,单节点默认支持的最大Pod数为256,扣除flannel、docker0占用的2个IP,实际最多可运行254个Pod。这是因为Flannel配置的本节点Pod网段是/24,提供了256个IP地址,而其中2个被保留。
  • 集群类型差异:某些特定的集群类型或发行版可能会对默认的Pod数量限制进行调整。比如OpenShift集群,在默认配置下,每个Node节点最多可以有254个Pod。这是因为OpenShift SDN按照RFC1918分配/16私有子网空间(默认10.1.0.0/16)作为集群网络,为每个Node节点分配/24大小的IP地址空间给Node节点上的Pods,扣除网关地址和广播地址,每个Node节点最多可容纳254个Pod。
  • 手动配置修改:通过修改kubelet的配置参数--max-pods,可以调整Node节点上允许运行的最大Pod数量。如果管理员根据实际业务需求和节点资源情况,将--max-pods参数设置为大于110的值,那么该节点就能运行更多的Pod。
http://www.xdnf.cn/news/15697.html

相关文章:

  • dify本地部署,docker-plugin_daemon-1启动不了,一直报错
  • rtps报文分析
  • 2025年消防设施操作员考试题库及答案
  • Windows 11设置开机自动运行 .jar 文件
  • 实战篇|多总线网关搭建与量产验证(5000 字深度指南)
  • 第五章、SpringBoot与消息通信(一)
  • useMemo + memo + useContext 性能优化实战:从无感重渲染到丝滑体验
  • 深入理解 Android Handler
  • Rocky8 升级 Python 3.9.20 并部署 Airflow 2.10.5
  • STM32F407的引脚说明
  • ActivityRecord、TaskRecord、ActivityStack、ActivityStackSupervisor、ProcessRecord
  • 【工具】在Cursor/VS Code中配置Python调试环境的完整指南
  • VASP 6.4.1 Ubuntu系统编译安装手册
  • STM32学习2
  • LeadeRobot具身智能应用标杆:无人机X柔韧具身智能,空中精准作业游刃有余
  • Python 浮点数运算之谜:深入解析round(0.675, 2)等输出异常
  • 人工智能在WEB开发中的应用与实践
  • string函数具体事例
  • 数字化音乐教育软件 UI 设计的关键要点
  • 如何删除 Launchpad 中 Chrome 的图标
  • orcad csi 17.4 DRC规则设置及检查
  • 使用人工智能大模型kimi,如何免费制作PPT?
  • flutter app实现分辨率自适应的图片资源加载
  • 论文阅读:2023 arxiv Safe RLHF: Safe Reinforcement Learning from Human Feedback
  • Git-使用教程(新手向)
  • STM32CubeMX-H7-15-SPI通信协议读写W25Q64
  • 【springsecurity oauth2授权中心】简单案例跑通流程
  • 游戏APP如何抵御DDoS攻击与黑客勒索?实战防护全攻略
  • Java中的函数式编程详解
  • 【笔记】【C++】【基础语法】作用域(scope)、持续时间(duration)和链接(linkage)