`
JerryWang_SAP
  • 浏览: 1029587 次
  • 性别: Icon_minigender_1
  • 来自: 成都
文章分类
社区版块
存档分类
最新评论

通过describe命令学习Kubernetes的pod属性详解

阅读更多

我们可以首先使用kubectl get pods命令得到pod列表,比如我们想研究pod nginx-storage-pod的明细:

 

使用命令kubectl describe pod nginx-storage-pod > nginx-storage-pod.yaml, 将describe命令的输出重定向到一个yaml文件里。用vi打开这个yaml文件:

 

pod的所有属性可以从这个yaml文件里学习:

node:shoot--k8s-train--shacw46-worker-prvfv-z1-7844dc6744-ghd5m/10.250.0.6

表明pod所在的node,这个node一定是命令kubectl get node返回的结果之一:

 
image

Image:代表该pod是基于哪一个docker image创建的。

 

Mount:该pod使用的persistent volume对应的物理文件目录,我的例子是.usr/share/nginx/html

 

这个路径从哪里来的呢?就是我的pod文件的yaml文件里的定义:

 

describe命令除了本文介绍的可以用来深入学习pod的属性外,还可以用于pod不能正常启动时的错误排查。

比如我有一个pod名为another3,状态一直处于CrashLoopBackOff, RESTART次数为12:

 

使用kubectl describe pod another3就可以看到这个容器启动的明细:Back-off restarting failed container

 

仔细检查pod的yaml文件,发现原因是因为我定义了volume的name为content-storage,但是没有指定persistentvolumeclaim。当我把volumes: - name: content-storage删除之后,

 

下图是修改后的yaml文件:

 

重新创建名为another3的pod,很快就创建成功并且状态处于running了:

 

要获取更多Jerry的原创文章,请关注公众号"汪子熙":

 
0
0
分享到:
评论

相关推荐

    k8s入门之pod(四).doc

    k8s入门之pod详解 pod是Kubernetes项目中的最小编排单位, 它是运行中的一组(一个或多个)容器,这些容器共享存储、网络、调度等资源。pod是一个逻辑概念,同一个名称空间下不同pod可以通过ip互相访问。 一、通过...

    Kubernetes(k8s)面试题.pdf

    ### Kubernetes(k8s)面试题详解 #### 一、基础知识 **1. Kubernetes是什么?** Kubernetes(简称k8s)是一个开源平台,旨在自动部署、扩展和管理容器化的应用。它通过提供一系列工具和服务简化了应用生命周期...

    kubernetes-client-windows-amd64 (v1.10.11).tar.gz

    《Kubernetes 客户端在 Windows 平台上的应用与详解》 Kubernetes(简称 k8s)是Google开源的一款容器编排系统,用于自动化容器化的应用程序部署、扩展和管理。在Windows环境下,为了能够方便地操作和管理...

    Kubernetes-Java-Project:将Java项目部署到Kubernetes中以进行监视和扩展的插图

    我在项目中遵循的步骤如下:创建资源荚:使用CLI创建pod: kubectl run wildfly --image=jboss/wildfly --port=8080检查状态: kubectl get -w pods显示从部署名称派生的Pod名称描述pod: kubectl describe pod <pod...

    kubernetes-server-linux-amd64-v1.19.15.tar.gz

    3. **故障排查**:通过`kubectl describe`、`kubectl logs`等命令了解Pod状态和日志,定位问题。 4. **扩展性**:k8s支持水平和垂直扩展,通过调整Deployment的副本数量或调整Pod资源请求来适应负载变化。 总结,...

    第二周第一天的学习笔记-yaml

    通过以上几个示例,我们不仅了解了Kubernetes中常见的几种资源对象的YAML定义方式,还学习了如何通过YAML文件来管理和部署这些资源。这为我们在生产环境中高效利用Kubernetes奠定了坚实的基础。

    K8S日常基础速记指南

    2. **kubectl describe**:通过`kubectl describe`命令可以查看资源的详细信息,包括事件记录和配置信息。 #### 九、安装与配置 1. **Minikube**:Minikube是一款轻量级的工具,用于在本地环境中快速搭建单节点的...

    k8s安装部署和知识点整理

    - 使用YAML文件定义Pod结构,并通过`kubectl create -f`命令进行部署。 #### 五、实践案例 假设我们想要部署一个简单的Nginx服务,步骤如下: 1. **编写YAML文件:** - 创建Nginx的ReplicaSet和Service定义文件。...

    k8s详解,主要带你了解k8s,以及如何使用和运维

    4.1 **故障排查**:通过`kubectl describe`、`kubectl logs`和`kubectl get events`检查Pod状态。 4.2 **资源管理**:设置Node资源限制,避免资源争抢。 4.3 **网络策略**:使用Network Policy控制Pod间的通信。 4.4...

    k8s实战之kubectl

    学习 k8s 实战之kubectl,不仅仅是掌握一系列命令的使用,更重要的是理解 Kubernetes 的核心概念,如工作负载、服务发现、存储、网络策略等。结合源码分析,可以深化对 Kubernetes 内部机制的理解,这对于解决实际...

    ckad_examtips

    9. **故障排查**:学习如何使用kubectl、describe、logs等命令进行故障排查,以及如何使用kubectl debug进行调试。 10. **最佳实践**:掌握Kubernetes的最佳实践,包括资源配额管理、命名规范、版本控制等,以确保...

Global site tag (gtag.js) - Google Analytics