• Pod频繁被重拉


    背景:

    四个同一副本控制集的Pod被频繁的重拉,数日内次数达到了百余次。

     

    问题原因

    node资源不足。

    排查:

    1、kubectl describe pod $pod名

    输出只显示就绪探测失败。

    就绪探测是当时Pod重拉时候未Running 1/1时显示的,Running 1/1后此报错就不用关注了。

    输出的describe也没有报oomkill的问题

    所以没有输出相关的重拉原因。

    2、将此Pod的优先级调高。

    kubectl edit sts pod的副本控制集名 

    将里面的limit与requests添加cpu 2 并且将requests的8g改为与limit相同的16g

    将资源调大后两个被频繁重拉的 Pod可以快速变为1/1 Running了,能改善被频繁重拉的次数。

    3、按照上步操作后部署被频繁重拉的四个pod结果有两个pod起不来报错node上的内存不足

    kubectl describe pod $pod名

    执行出来后有内存不足的报错。

    4、kubectl get pod -owide |grep pod名   查看被频繁重拉pod所在节点名字

    5、 kubectl top node 发现Pod所在的node内存使用率达到百分之60以上,pod就被自动delete重拉

    6、登陆到被频繁重拉pod对应的节点上查看/var/logs/messages显示有内存不足的报错:
    Mar 13 12:55:59 $主机名 systemd: Scope libcontainer-75049-systemd-test-default-dependencies.scope has no PIDs. Refusing.
    Mar 13 12:55:59 $主机名 systemd: Scope libcontainer-75049-systemd-test-default-dependencies.scope has no PIDs. Refusing.
    Mar 13 12:55:59 $主机名 systemd: Created slice libcontainer_75049_systemd_test_default.slice.
    Mar 13 12:55:59 $主机名 systemd: Removed slice libcontainer_75049_systemd_test_default.slice.
    Mar 13 12:56:00 $主机名 systemd: Scope libcontainer-75086-systemd-test-default-dependencies.scope has no PIDs. Refusing.
    Mar 13 12:56:00 $主机名 systemd: Scope libcontainer-75086-systemd-test-default-dependencies.scope has no PIDs. Refusing.
    Mar 13 12:56:00 $主机名 systemd: Created slice libcontainer_75086_systemd_test_default.slice.
    Mar 13 12:56:00 $主机名 systemd: Removed slice libcontainer_75086_systemd_test_default.slice.

    8、free -gh 查看到节点是32G内存,此问题是node内存不足导致的,需要给node扩容内存。

  • 相关阅读:
    Git 思想和工作原理
    scala 内部类
    nginx -stream(tcp连接)反向代理配置 实现代理ldap转发
    【转载】Keepalived安装使用详解
    【转载】Linux内存中buffer和 cached的比较
    【转载】Vmware Vconverter从物理机迁移系统到虚拟机P2V
    InfluxDB 备份和恢复
    Mongodb 主从同步
    Redis主从同步
    ActiveMQ 高可用集群安装、配置(ZooKeeper + LevelDB)
  • 原文地址:https://www.cnblogs.com/wannengachao/p/14593077.html
Copyright © 2020-2023  润新知