Kubernetes----Pod生命周期简介

简介: Kubernetes----Pod生命周期简介

【原文链接】

一、Pod生命周期简介

一般将pod对象从创建至终止的这段时间范围称为pod的盛名周期,它主要包含下面的过程:

  • pod创建过程
  • 运行初始化容器(init container)过程
  • 运行注容器(main container)过程

    • 容器启动后钩子(post start),容器终止前钩子(pre stop)
    • 容器的存活性探测(liveness probe),就绪性探测(readness probe)
  • pod终止过程

在这里插入图片描述

在整个声明周期中,Pod会出现5种状态(相位),如下:

  • 挂起(Pending):挨批server已经创建了pod资源对象,但它尚未被调度完成或者仍处于下载镜像的过程中
  • 运行中(Running):pod已经被调度至某节点,并且所有容器都已经被kubectl创建完成
  • 成功(Succeed):pod中的所有容器都已经成功终止并且不会被重启
  • 失败(Failed):所有容器都已经停止,但至少有一个容器终止失败,即容器返回了非0的退出状态
  • 未知(Unknown):apiserver无法正常获取到pod对象的状态信息,通常由网络通信失败所致

二、Pod的创建过程

  • 1、用户通过kubectl或其他api客户端提交需要创建的pod信息给apiServer
  • 2、apiServer开始生成pod对象的信息,并将信息存入etcd,然后返回确认信息至客户端
  • 3、apiServer开始反映etcd中的pod对象的变化,其他组件使用watch机制来跟踪检查apiServer上的变动
  • 4、scheduler发现有新的pod对象要创建,开始为pod分配足迹并将结果更新只apiServer
  • 5、node节点上的kubectl发现有pod调度过来,尝试调用docker启动容器,并将结果回送至apiServer
  • 6、apiServer将接收到的pod状态信息存入etcd中

在这里插入图片描述

三、Pod的终止过程

  • 1、用户向apiServer发送删除pod对象的命令
  • 2、apiServer中的pod对象信心ui随着时间的退役而更新,在宽限期内(默认30秒),pod被视为dead
  • 3、将pod标记为terminating状态
  • 4、kubelet在监控到pod对象转为terminating状态的同时启动pod关闭过程
  • 5、端点控制器监控到pod对象的关闭行为时将其从所有匹配到此端点的service资源的端点列表中移除
  • 6、如果当前pod对象定义了preStop钩子处理器,则在其标记为terminating后即会以同步的方式启动执行
  • 7、pod对象的容器进程收到停止信号
  • 8、宽限期结束后,若pod中还存在仍在运行的进程,那么pod对象会收到吉利终止的信号
  • 9、kubelet请求apiServer将此pod资源的款限制设置为0从而完成删除操作,此时pod对于用户已不可见
相关实践学习
容器服务Serverless版ACK Serverless 快速入门:在线魔方应用部署和监控
通过本实验,您将了解到容器服务Serverless版ACK Serverless 的基本产品能力,即可以实现快速部署一个在线魔方应用,并借助阿里云容器服务成熟的产品生态,实现在线应用的企业级监控,提升应用稳定性。
云原生实践公开课
课程大纲 开篇:如何学习并实践云原生技术 基础篇: 5 步上手 Kubernetes 进阶篇:生产环境下的 K8s 实践 相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
目录
相关文章
|
6月前
|
Kubernetes Cloud Native 调度
【云原生】深入掌握k8s中Pod和生命周期
【云原生】深入掌握k8s中Pod和生命周期
79 0
|
4月前
|
运维 Kubernetes Cloud Native
k8s学习-Pod(生命周期、探针、模板、创建、删除等)
k8s学习-Pod(生命周期、探针、模板、创建、删除等)
60 0
|
12天前
|
存储 Kubernetes 调度
Kubernetes Pod生命周期
Kubernetes Pod生命周期
19 0
Kubernetes Pod生命周期
|
24天前
|
存储 Kubernetes 调度
K8s Pod亲和性、污点、容忍度、生命周期与健康探测详解(下)
本文全面探讨了Kubernetes集群中Pod的四种关键机制——Pod亲和性、污点(Taints)、容忍度(Tolerations)、生命周期以及健康探测,为读者提供了深入理解并有效应用这些特性的指南。
|
8月前
|
监控 NoSQL 调度
k8s--pod 生命周期、初始化容器、钩子函数
k8s--pod 生命周期、初始化容器、钩子函数
|
5月前
|
Kubernetes 网络协议 API
k8s教程(pod篇)-生命周期、重启策略及健康检查
k8s教程(pod篇)-生命周期、重启策略及健康检查
67 0
|
6月前
|
Kubernetes 数据管理 容器
|
11月前
|
Kubernetes API Perl
k8s中pod生命周期整理
k8s中pod生命周期整理
86 0
|
Kubernetes 网络协议 API
Docker 与 K8S学习笔记(二十一)—— Pod生命周期、重启策略与健康检查
Pod在整个生命周期中被系统标示为各种状态,熟悉Pod的各种状态对于理解Pod的调度策略、重启策略很有必要。 一、Pod生命周期 Pod的所处阶段信息保存在PodStatus.Phase,Phase有如下几种值: Pending: API Server已经创建该Pod,但一个或多个容器还没有被创建
327 0
|
Kubernetes NoSQL 网络安全
Kubernetes的 pod 重启策略、Pod状态、生命周期
Kubernetes的 pod 重启策略、Pod状态、生命周期
902 1

推荐镜像

更多