当前位置: 首页 > article >正文

pod之debug初始化容器

上文,我们已经学习了如何配置初始化镜像,那么本文将带大家学习如何Debug初始化容器。

ps: 本文使用<pod-name> 来指代Pod的名称,使用<init-container-1><init-container-2> 来指代初始化容器的名称。

检查初始化容器的状态

执行命令,查看 Pod 的状态:

kubectl get pod <pod-name>    

例如,状态如果是 Init:1/2,则表明了两个初始化容器当中的一个已经成功执行:

NAME         READY     STATUS     RESTARTS   AGE
<pod-name>   0/1       Init:1/2   0          7s  

查看初始化容器的详情)查看初始化容器的详情

查看初始化容器的更多信息:

kubectl describe pod <pod-name> 

假设 Pod 包含两个初始化容器,显示结果可能如下所示:

Init Containers:
  <init-container-1>:
    Container ID:    ...
    ...
    State:           Terminated
      Reason:        Completed
      Exit Code:     0
      Started:       ...
      Finished:      ...
    Ready:           True
    Restart Count:   0
    ...
  <init-container-2>:
    Container ID:    ...
    ...
    State:           Waiting
      Reason:        CrashLoopBackOff
    Last State:      Terminated
      Reason:        Error
      Exit Code:     1
      Started:       ...
      Finished:      ...
    Ready:           False
    Restart Count:   3

也可以直接读取 Pod 的 status.initContainerStatuses 字段,命令行如下所示:

kubectl get pod <pod-name> --template '{{.status.initContainerStatuses}}'

该命令将以 JSON 格式返回信息

查看初始化容器的日志

执行命令查看初始化容器的日志:

kubectl logs <pod-name> -c <init-container-1>  

理解 Pod 状态

如果 Pod 的状态以 Init: 开头,表示该 Pod 正在执行初始化容器。下表描述了 Debug 初始化容器的过程中,一些可能出现的 Pod 状态:

状态描述
Init:N/MPod 中包含 M 个初始化容器,其中 N 个初始化容器已经成功执行
Init:ErrorPod 中有一个初始化容器执行失败
Init:CrashLoopBackOffPod 中有一个初始化容器反复执行失败
PendingPod 还未开始执行初始化容器
PodInitializing or RunningPod 已经完成初始化容器的执行

http://www.kler.cn/news/16313.html

相关文章:

  • 最优化方法Python计算:一元函数搜索算法——二分法
  • 【iOS】GCD学习
  • 【机器学习学习】第一天:入门指南
  • spring
  • QT实现固高运动控制卡示波器
  • 【SQL篇】面试篇之子查询
  • 一文解决MySQL突击面试,关键知识点总结
  • 解除Word的编辑保护【简单版】
  • 智能网联汽车城市化的进程和思考
  • next(), nextLine(),nextInt()报错分析
  • UG NX二次开发(C++)-建模-修改NXObject或者Feature的颜色(一)
  • Java学习报培训班好还是自学好?
  • 微服务SpringCloud面试题27问
  • appium-app测试-环境搭建手机和adb设置
  • 四和能聚分析做直播带货的商家通常发布什么类型的短视频
  • 电脑的选择
  • 06.toRef 和 toRefs
  • iOS 多线程使用示例
  • JSP 的本质原理解析:“编写的时候是JSP,心里想解读的是 java 源码“
  • 什么是Java中的反射机制?
  • Syncfusion Essential Studio Enterprise 2023.1 Crack
  • AOSP编译问题
  • 【Bus】编写一个Demo虚拟的总线-设备-驱动模型
  • 电话号码的字母组合
  • 荔枝派Zero(全志V3S)基于QT实现在LCD显示图片
  • 【五一创作】Scratch资料袋
  • 使用邻接矩阵实现有向图最短路径Dijkstra算法 题目编号:1136
  • 32岁阿里P7,把简历改成不知名小公司,学历改成普通本科,工作内容不变,投简历全挂!...
  • 什么是跨域?
  • 谈谈常用Reverse shell,以及他们是怎么做到的。