首页 运维杂谈Kubernetes如何高效管理节点的资源

Kubernetes如何高效管理节点的资源

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

Kubernetes如何高效管理节点的资源插图

kubelet是Kubernetes中的主要节点组件,它执行许多关键任务。Kubelet主要职责在:

  • 向kube-apiserver注册节点
  • watch kube-apiserver中已经调度完成的Pod,并在Pod被调度完成之后告诉容器运行时(例如Docker)启动容器
  • 监视运行中的容器并将其状态报告给kube-apiserver
  • 执行活动性探针并在容器失败后重新启动容器
  • 运行由kubelet直接管理的静态Pod
  • 与Core Metrics Pipeline和容器运行时进行交互以收集容器和节点metrcis

我们在本文中要讨论的另一个重要的kubelet任务是,当节点资源耗尽时,“agent”具有将Pods逐出的功能。当计算资源(例如磁盘,RAM或CPU)不足时,kubelet在维护节点稳定性方面起着至关重要的作用。对于Kubernetes管理员来说,了解配置资源超过配额的最佳做法很有用,以使节点资源更灵活,同时保留系统的整体容错性和关键系统进程的稳定性。

Kubelet如何确定资源不足?

如前所述,kubelet可以从节点上驱逐工作负载,以释放资源来处理其他Pod和/或系统任务,例如容器运行时或kubelet本身。但是,kubelet如何确定资源不足?

Kubelet根据收回信号和收回阈值确定何时回收资源。驱逐信号是系统资源(如内存或存储器)的当前容量。反过来,驱逐阈值是kubelet应该维护的此资源的最小值。

换句话说,每个驱逐信号都与某个驱逐阈值相关联,该阈值告诉kubelet何时开始回收资源。目前,支持以下驱逐信号:

  • memory.available — 描述集群内存状态的信号。内存的默认逐出阈值为100Mi。换句话说,当内存下降到100 Mi时,kubelet开始驱逐Pod。
  • nodefs.available — nodefs是kubelet用于卷,守护程序日志等的文件系统。默认情况下,如果nodefs.available <10%,则kubelet开始回收节点资源。
  • nodefs.inodesFree — 描述nodefs索引节点内存状态的信号。默认情况下,如果nodefs.inodesFree <5%,则kubelet将开始驱逐工作负载。
  • imagefs.available — imagefs文件系统是容器运行时使用的可选文件系统,用于存储容器镜像和容器可写层。默认情况下,如果imagefs.available <15%,则kubelet开始驱逐工作负载。
  • imagefs.inodesFree — imagefs索引节点内存的状态。它没有默认驱逐阈值。

上述驱逐阈值是非常合理的默认值。但是,用户可以通过在kubelet二进制文件上设置适当的标志来配置其自定义逐出阈值。这些用户定义的阈值可以更改默认的kubelet驱逐行为。

目前,Kubernetes支持硬驱和软驱逐阈值。

如果达到硬驱逐阈值,则kubelet将立即开始回收资源,而没有任何宽限期。相反,软驱逐阈值包括用户定义的宽限期,该宽限期应在kubelet开始回收任何资源之前到期。

您可以使用kubelet二进制文件上的--eviction-hard标志定义硬驱逐阈值。例如,kubelet-eviction-hard = memory.available <1Gi将告诉kubelet在节点的memory.available低于1Gi时开始回收资源。

如果要在驱逐之前允许宽限期,则可以将 -eviction-soft标志与--eviction-soft-grace-period标志结合使用。例如,kubelet —- eviction-soft=memory.available

译文链接:https://medium.com/kubernetes-tutorials/efficient-node-out-of-resource-management-in-kubernetes-67f158da6e59
原文链接:https://segmentfault.com/a/1190000022962779
作者:iyacontrol

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

网友评论comments

发表评论

电子邮件地址不会被公开。

暂无评论

Copyright © 2012-2020 YUNWEIPAI.COM - 运维派
扫二维码
扫二维码
返回顶部