天天看点

[问题已处理]-kubernetes的pod状态更新延迟比较久

导语:不知道我这样形容恰不恰当,其实就是describe 查看pod发现明明镜像都下好了,pod已经start了,但是get pods的时候发现pod还在containercreating状态,并且最终到达running的时间也是其他环境的好几倍。如图

现象出问题的环境containercreating持续40s以上,更新为running的话可能需要10分钟,正常环境containercreating持续7-8s,删除pod的时候 明明deployment已经删除了,但是pod还存在,需要使用–grace-period=0 删除才可以。

异常情况

[问题已处理]-kubernetes的pod状态更新延迟比较久
[问题已处理]-kubernetes的pod状态更新延迟比较久

正常环境

[问题已处理]-kubernetes的pod状态更新延迟比较久

同样5台机子 铲掉重装之后就正常了 诡异~

原故障集群参数 正常集群参数
kubeadm版本 1.18.4 1.18.2
kubelet版本 1.18.4 1.18.2
kubectl版本 1.18.4或者1.20.0 1.18.2
flannel版本 比较旧 apiVersion是extensions/v1beta1 目前最新apiVersion: apps/v1
coredns 应该是coredns:1.6.7 coredns:1.6.7
ECS系统 centos7.6 centos7.8

就集群在安装完成之后 访问svc 的cluster ip 很慢 添加了一条命令

ethtool -K flannel.1 tx-checksum-ip-generic off

但是应该不影响。新集群不用跑这个命令返回就很快,不知道是不是flannel版本的问题。

查看各个组件的报错 kubelet报错PLEG is not healthy 出现这个问题的原因比较多 就没有细细排查 直接铲掉了。

结论:铲掉换版本就没有问题了 说明和机子本身无关。怀疑是网络插件和kubelet的问题。安装的flannel可能不适合1.18.4版本,导致kubelet上报有问题。

暂时做个笔记 后续再出现问题时仔细排查。

继续阅读