代码改变世界
[登录 · 注册]
  • Kubernetes 运维小记:node 为系统保留最低资源
  • 今天优化了 k8s 生产集群的部署,为系统(linux 与 k8s系统pod)保留最低资源,以免应用 pod 负载高拖垮整个节点。

    配置方法是手动给每个节点的 kubelet 添加配置文件 /etc/default/kubelet ,并在其中添加如下的配置:

    UBELET_EXTRA_ARGS="--kube-reserved=cpu=300m,memory=300Mi,ephemeral-storage=1Gi --system-reserved=cpu=200m,memory=200Mi,ephemeral-storage=1Gi --eviction-hard=memory.available<500Mi,nodefs.available<10%"
    

    通过 UBELET_EXTRA_ARGS 环境变量,添加了 kube-reserved, system-reserved, eviction-hard 这3个配置。

    重启 kubelet 使配置生效。

    systemctl restart kubelet
    

    节点使用的是4核8G的服务器,添加配置前节点的 allocatable 情况:

    $ kubectl get node k8s-node10 -o json | jq '.status.allocatable'
    {
      "cpu": "4",
      "ephemeral-storage": "75974665296",
      "hugepages-1Gi": "0",
      "hugepages-2Mi": "0",
      "memory": "8065516Ki",
      "pods": "110"
    }
    

    添加配置后节点的 allocatable 情况:

    $ kubectl get node k8s-node10 -o json | jq '.status.allocatable'
    {
      "cpu": "3500m",
      "ephemeral-storage": "73827181648",
      "hugepages-1Gi": "0",
      "hugepages-2Mi": "0",
      "memory": "7143916Ki",
      "pods": "110"
    }
    
  • 【推广】 阿里云小站-上云优惠聚集地(新老客户同享)更有每天限时秒杀!
    【推广】 云服务器低至0.95折 1核2G ECS云服务器8.1元/月
    【推广】 阿里云老用户升级四重礼遇享6.5折限时折扣!
  • 原文:https://www.cnblogs.com/dudu/p/12587234.html
走看看 - 开发者的网上家园