使用describe命令进行Kubernetes pod错误排查
我有一个pod名叫another,用kubectl create创建后发现过了29分钟,状态还是处于ContainerCreating阶段。
使用kubectl describe命令检查:
从错误消息发现是因为这个pod attach volume失败:
FailedAttachVolume 2m1s (x22 over 31m) attachdetach-controller AttachVolume.Attach failed for volume “pvc-c4d41f5c-e7ed-11e8-8726-fe6d42bf075f” : googleapi: Error 400: RESOURCE_IN_USE_BY_ANOTHER_RESOURCE - The disk resource ‘projects/sap-pi-coo-acdc-dev/zones/europe-west1-b/disks/shoot–k8s-train–shac-pvc-c4d41f5c-e7ed-11e8-8726-fe6d42bf075f’ is already being used by ‘projects/sap-pi-coo-acdc-dev/zones/europe-west1-b/instances/shoot–k8s-train–shacw46-worker-prvfv-z1-7844dc6744-ghd5m’
Warning FailedMount 31s (x14 over 29m) kubelet, shoot–k8s-train–shacw46-worker-prvfv-z1-7844dc6744-hhrmd Unable to mount volumes for pod “another_part-0110(13f15fa4-e819-11e8-8726-fe6d42bf075f)”: timeout expired waiting for volumes to attach or mount for pod “part-0110”/“another”. list of unmounted volumes=[content-storage]. list of unattached volumes=[content-storage default-token-6z5sk]
查看这个pod的yaml文件,果然发现有一个persistent volume的claim:
用命令kubectl get pv, 发现当前所有的persistent volume都被占用了(BOUND状态):
解决方案有很多种,处于测试目的,我只是简单地将另一个同样声明了nginx-pvc作为PersistentVolumeClaim的pod删除,然后这个名为another的pod状态就很快变成Running了:
从describe命令生成的日志里也能清楚的观察到这个成功mount volume的事件:
Normal SuccessfulAttachVolume 84s attachdetach-controller AttachVolume.Attach succeeded for volume “pvc-c4d41f5c-e7ed-11e8-8726-fe6d42bf075f”
要获取更多Jerry的原创文章,请关注公众号"汪子熙":
使用describe命令进行Kubernetes pod错误排查相关推荐
- 通过describe命令学习Kubernetes的pod属性详解
我们可以首先使用kubectl get pods命令得到pod列表,比如我们想研究pod nginx-storage-pod的明细: 使用命令kubectl describe pod nginx-st ...
- k8s服务发布错误排查
转载请注明出处:k8s服务发布错误排查 K8s错误排查步骤是我们使用k8s的必经之路,可以参考如下步骤: 首先查看pod的情况,使用命令: kubectl get pods 输出如下: [zzq@lo ...
- Kubernetes pod状态出现CrashLoopBackOff 的原因
做个实验: $ kubectl run crasher --image=rosskukulinski/crashing-app 查看这个pod的状态: $ kubectl get pods NAME ...
- Kubernetes pod 状态出现 ImagePullBackOff 的原因
通过一个试验作为例子来学习一下. 我们创建一个名为fail 的 deployment,让它故意指向一个实际并不存在的 Docker 镜像: $ kubectl run fail --image=jer ...
- kubectl describe命令详解
输出指定的一个/多个资源的详细信息. 摘要 输出指定的一个/多个资源的详细信息. 此命令组合调用多条API,输出指定的一个或者一组资源的详细描述. $ kubectl describe TYPE NA ...
- kubernetes—Pod详解
Pod详解 前言 Pod介绍 Pod结构 Pod定义 pod的几种基础配置 概述 基本配置(name,image) 镜像拉取(imagePullPolicy) 启动命令(command和args) 环 ...
- 【4】Kubernetes pod资源
容器与pod资源对象 为什么Kubernetes要引入pod的概念,而不直接操作Docker容器 首先我们要明确一个概念,Kubernetes并不是只支持Docker这一个容器运行时,通过我的另一篇文 ...
- config kubectl_kubectl常用命令归档及pod诊断工具安装
kubectl常用命令归档: 1 - k8s运行的服务是 kubectl,一般这个服务要设置默认开机启动 [root@k8s-master ~]# systemctl enable kubelet.s ...
- Kubernetes pod状态出现ImagePullBackOff的原因
通过一个试验作为例子来学习一下. 我们创建一个名为fail 的 deployment,让它故意指向一个实际并不存在的 Docker 镜像: $ kubectl run fail --image=jer ...
最新文章
- 十 	mybatis逆向工程
- 岭回归与Lasso回归
- javascript中的try finally
- DjangoHTML页面加载和静态文件加载
- WPF轮播图实现方式(二)
- 做开发,这几种锁机制你不得不了解一下
- python twisted框架_Python 基于Twisted框架的文件夹网络传输源码
- sql server中数据约束相关的查询
- Python对图像进行二维Gabor滤波加速
- 目前项目wordpress插件记录
- Truecrypt 破解工具
- 电路布线问题的动态规划实现(java)
- 全国高校计算机能力挑战赛Java试题(一)
- PS个人证件照片更换背景颜色
- STM32旋转立方体
- FPGA仿锆石代码风格组合电路时序电路严格分开之(一)8通道16位AD采集
- 这几款超好用的协同办公软件,你都get了吗
- macbookair有没有touchbar_高配MacBook Air和低配MacBook Pro选哪个?
- left join和left outer join 有什么区别?这样解释通俗易懂
- 计算机共享打印机怎么弄,电脑共享打印机怎么设置,手把手教你设置共享打印机...
热门文章
- 对jvm 同步锁的理解
- J2EE中下载和安装spring插件
- 今日代码(20210313)--美赛代码记录
- 机器学习中的不平衡分类方法(part4)--朴素贝叶斯分类器
- Python3--文件读取、写入、追加及seek()方法的使用
- jMeter HTTP Request Defaults 的学习笔记
- SAP Spartacus Accessibility E2E 端到端测试
- 如何使用 API 的方式给 SAP service cloud Registered product 上传图片
- SAP Spartacus central Travis build的lint环节
- 程序员打造个人品牌 - Personal Brand的重要性