【Kubernetes实战】K8S集群Pod异常状态排查
创始人
2024-06-02 00:37:23
0

机缘

本文旨在帮助朋友们能快速定位、以最简单可行只法解决遇到的问题,希望您能举一反三,篇幅有限不能详尽,见谅 (*^__^*)

内容概括:

  1. 实战项目经验
    如何有效减少排查解决问题的时间?尤其是有些问题解决,需要停服务,会影响关联的业务。
  2. 遇到的问题实用解法
  3. 扩展延伸

一、 实战项目经验

提示:意识理念很重要,所以先要保证遵守原则不变,才能处变不惊,最高效解决问题。我总结了三原则

原则:

  1. 勿求快,多想一步,多问一句 即便是感觉很小的操作,也要考虑到可能发生意料外之事,我们之前出现过几次类似问题,都是同一种方法解决的,同样的情况出现,可是这次,背景不一样,用相同的方法,不但没解决问题,还制造了新问题,欲速不达。
  2. 要全面了解 正向的反馈,不利的反馈都要听,提前做些努力,想出应对之法,做的时候会特别顺畅,高效。
  3. 不光多看运维文档,而且要用心观察 遇到一个问题,我们费了好大力气,花费时间不少,想最快解决,却找不到参照方法。等静下心,我发现运维文档的预案里明明就有,当时为什么就视而不见,现在想想,这类问题发生的次数少,而且平时这个文档阅读的少,而且是粗略的看。

二、遇到的问题实用解法

提示:当前创作和你的工作、学习是什么样的关系
例如:

  1. 节点NotReady
    请添加图片描述
    图1 命令返回信息显示节点异常

简单问题:可以一条命令看到,程序dead状态,直接启动即可。

1)kubelet进程异常
执行查看命令:systemctl status kubelet.service
执行启动命令:systemctl start kubelet.service

2)docker进程异常
执行命令:systemctl status docker.service
执行启动命令:systemctl start docker.service

复杂问题:需要执行多条命令,并和其他部门同事沟通确认情况,综合分析协助定位问题并解决。

依然是NodeReady报错:
第一步:执行上面两个查看服务状态命令,返回信息显示无异常;
第二步:执行kubectl describe nodes node01(异常节点名) | grep Events
在事件列信息里确认是哪里出现问题,如果显示和docker有关,则证明还是“docker进程异常”,但是状态并没有死掉。
第三步:docker为什么会异常?因场景而异,有的时候是承载docker的节点物理内存不足,导致进程被杀死,或没被杀死,不能提供正常运行及处理任务所需内存。
第四步:想办法释放节点内存,重启docker服务。

  1. pod异常状态

1)镜像下载失败:ImagePullBackOff

简单问题:镜像仓库异常或pod的镜像仓库配置项不正确。
解决方法:执行kubectl describe nodes node01(异常节点名) | grep Events,进一步确认是不是这个问题,或者是不是还有其他问题。docker images本地可以查看到镜像,则需要将其执行:docker push ip:port/soft:v1.0将其推送到私有远程仓库,如果用pod控制器创建的可以删除pod,自动创建方式实现重建pod。如果还是不成功,可能也有网络问题,需要手动导入docker.tar包文件,执行docker load即可。

2)pod状态为Error、Unknown

小知识:pod稳定态为Running、Error、Unknown,其余都是中间态;稳定态是一般情况不会变化了,此状态可能原因是镜像下载的次数超了配置的次数,不再尝试重试,返回的状态。

解决方法:一般是配置问题,如:请求的资源超过了管理员设置的限制。执行下面三条命令:
kubectl get pod -o yaml 与正常的pod对比确认 Pod 的配置是否正确
kubectl describe pod 查看 Pod 的事件
kubectl logs [-c ] 查看容器日志
此外,Unknown也可能是网络问题导致。多个应用部署在不同节点需要交互。


三、扩展延伸

提示:对基础知识了解的越透彻,k8s运行逻辑越清楚,越能快速定位问题,解决问题。
例如:

  1. k8s网络小知识
    在这里插入图片描述
    图2 k8s网络拓扑

    从微观来分:

1)容器间通信 例如:docker与docker
2)pod间通信
3)服务到pod通信 例如:service到pod

从宏观来分:

1)pod间通信 pod1和pod2属于同主机;pod1和pod3属于跨主机
2)Node与pod间通信 Node1和pod1/pod2属于同主机;Node1和pod3属于跨主机

跨主机通信,需要借助第三方网络插件,如:Flannel等


相关内容

热门资讯

企业晚会的主持词 企业晚会的主持词  借鉴诗词和散文诗是主持词的一种写作手法。在人们越来越多的参与各种活动的今天,主持...
年终总结会主持词 2021年终总结会主持词范文(精选13篇)  契合现场环境的主持词能给集会带来双倍的效果。现今社会在...
半台词爆笑 三句半台词大全爆笑  三句半是一种中国民间群众传统曲艺表演形式,下面是为带大家整理的爆笑的'三句半台...
三八妇女节活动主持词 三八妇女节活动主持词3篇  三月的春风拂过我们脚下的土地,三月的惊雷敲响了我们奋进的汽笛,三月我们迎...
文艺晚会主持人主持词 文艺晚会主持人主持词(精选10篇)  主持词是各种演出活动和集会中主持人串联节目的串联词。在当下这个...
校园文艺晚会结束语 下面文艺晚会结束语是小编为你们寻找的,希望你们会喜欢喔文艺晚会结束语一女1:最明快的,莫过于一年一度...
红色经典诵读主持词 红色经典诵读主持词红色经典诵读主持词尊敬的各位领导、敬爱的老师、亲爱的同学们 :大家好!甲:今天的阳...
答谢会主持词 答谢会主持词15篇  主持词要根据活动对象的不同去设置不同的主持词。随着中国在不断地进步,主持人在活...
年会游戏主持词 年会游戏主持词  主持词没有固定的格式,他的最大特点就是富有个性。在人们积极参与各种活动的今天,主持...
《我是女王》经典台词及剧情介... 《我是女王》经典台词及剧情介绍  一、经典台词  一个偶尔会消失的男人,总有一天会永远的消失。  女...
追梦的主持串词 关于追梦的主持串词  篇一:梦想串词  各位老师,大家好:  又到了一个追梦的季节。春之漫妙、夏之热...
生日宴会精彩致辞 生日宴会精彩致辞(精选5篇)  在日常学习、工作抑或是生活中,大家都不可避免地会接触到致辞吧,致辞是...
暨迎元旦合唱比赛主持词 暨迎元旦合唱比赛主持词  主持词没有固定的格式,他的最大特点就是富有个性。在当下这个社会中,很多场合...
六一主持词开场白和结束语 六一主持词开场白和结束语(精选9篇)  主持词是各种演出活动和集会中主持人串联节目的串联词。在如今这...
国学大讲堂主持词 国学大讲堂主持词  (开场语)同学们老师们:  大家下午好!在各方的积极努力下,国学大讲堂终于以全新...
文艺汇演主持词优秀 文艺汇演主持词优秀  主持词要注意活动对象,针对活动对象写相应的主持词。在当下这个社会中,主持人在活...
《老爸快跑》里的经典台词 《老爸快跑》里的经典台词  《老爸快跑》是由高一功执导,张云宵编剧,徐峥、伊春德主演的电视剧,于20...
公司领导年会致辞 公司领导年会致辞  在日常学习、工作和生活中,大家或多或少都用到过致辞吧,致辞要求风格的雅、俗、庄、...
秋季开学典礼主持词 秋季开学典礼主持词(精选6篇)  主持词已成为各种演出活动和集会中不可或缺的一部分。在一步步向前发展...
当幸福来敲门经典台词 当幸福来敲门经典台词大全  在日新月异的现代社会中,我们都可能会用到台词,台词可以刻画人物的性格,表...