首页 > 其他分享 >pod退出过程和preStop

pod退出过程和preStop

时间:2024-03-31 10:55:56浏览次数:16  
标签:对象 宽限期 Terminating preStop 退出 pod Pod

1, 用户发送删除pod的指令.

2, API-Server服务器中的pod对象会随着时间的推移而更新,在宽限期内 terminationGracePeriodSeconds: 30 ; 默认是30秒, Pod 被视为dead.

3,  将pod标记为Terminating状态。

4,(与第3步同时运行),kubelet 在监控到pod对象转为Terminating状态的同时启动Pod关闭过程。

5, (与第3步同时运行) Endpoint控制器监控到Pod对象的关闭行为时将其从所有匹配到此端点的Service资源的端点列表中移除。

6, 如果当前pod对象定义了preStop勾子句柄,在其标记为Terminating后 即会以同步方式启动执行, 如若宽限期结束后,preStop仍未执行完,则从新执行第2步并额外获取一个时长为2秒的小宽限期。

7,Pod对象中的容器进程收到TERM信号。

8,宽限期结束后,若存在任何一个仍在运行的进程,Pod对象即会收到SIGKILL信号。

9,Kubelet请求API-Server将此Pod资源的宽限期设置为0 从而完成删除操作,它变得对用户不再可见。

--

 pod 状态变为Terminating, kubelet启动关闭过程,Endpoint移除pod, 同时执行preStop里的指令。

---- 

参考:https://blog.csdn.net/weixin_38889300/article/details/120520753

标签:对象,宽限期,Terminating,preStop,退出,pod,Pod
From: https://www.cnblogs.com/tian-jun-cs/p/18106481

相关文章

  • K8s Pod亲和性、污点、容忍度、生命周期与健康探测详解(中)
    ......
  • Kubernetes之Pod
    什么是Pod通俗的来讲就是以pause为基础容器,其它容器共享pause容器的网络名称空间、主机名以及进程间通信,组成的一个逻辑的容器集合。•KubernetesPod是Kubernetes的基础单元,一个Pod是一组功能相关的部署到一起的容器的集合。•在Kubernetes中,每个Pod会有自己独立的内部动......
  • Windows 安装 Podman Desktop
    简介: Podman(PODMANager)是一个用于管理容器和映像、挂载到这些容器中的卷以及由容器组组成的pod的工具。Podman在Linux上运行容器,但也可以使用Podman管理的虚拟机在Mac和Windows系统上使用。Podman基于libpod,libpod是一个用于容器生命周期管理的库,也包含在此存储......
  • podman 入门实战
     一入编程深似海,从此节操是路人。最近使用podman,就想着写一篇总结性的笔记,以备后续参考。就如同写代码,不写注释,过了一段时间可能会想这是我写的吗?不会吧,还要理一下逻辑才能读懂,不利于后期维护。感觉整体体验下来,镜像获取、容器创建、容器监控、容器移除,和docker差不多,感觉可......
  • 如何在K8s中实现 Pod 的自动扩展
    在Kubernetes中实现Pod的自动扩缩,你可以使用HorizontalPodAutoscaler资源。以下是一个简单的例子:首先,你需要确保你的Kubernetes集群中已经安装了MetricsServer,因为HPA需要它来获取Pod的资源使用情况。1、部署MetricsServer(如果尚未部署):kubectlapply-fhttps......
  • 【K8s】scale缩容时删除指定pod
    PodDeletionCost是k8s1.22后默认开启的新特性,以annotation的方式作用于Pod,表示这个pod的“删除代价”,代价越小的pod删除优先级相对越高。因此在scale前给需要删除的pod加上annotation即可。//ActivePodsWithRanksisasortablelistofpodsandalistofcorresponding//r......
  • C# 退出应用程序
    常见的有如下几种退出的方式this.Close关闭当前窗口如果我们操作的对象是Form时可以采用这种方式退出对应的Form,若不是主窗体的话,是无法退出程序的另外若有托管线程(非主线程),也无法干净地退出privatevoidbtnClose_Click(objectsender,EventArgse){this.close();......
  • Kubernetes之Pod调度策略
    一、NodeSelector:定向调度1.基本原理在Kubernetes上部署应用时,有时候可能需要限制Pod的调度范围,将Pod调度到指定的一些Node上。此时,可以为需要调度的这些Node打上标签,同时设置Pod的nodeSelector属性,使二者相匹配来达到定向调度的目的。2.简单实践(1)为目标......
  • 实验:基于Red Hat Enterprise Linux系统在终端使用vim进行拷贝、删除、查找、替换、保
    目录一.实验目的二.实验内容三.实验设计描述及实验结果        一.vim文本编译器模式切换:    命令模式:        输入模式:        末行模式:        二.复制、删除:        三.查找字符串:        四.替换:......
  • Podman能够替代Docker吗
    导读:参考:ExploringPodman:AMoreSecureDockerAlternative作者:MarinBezhanov网址:https://betterstack.com/community/guides/scaling-docker/podman-vs-docker/该随笔为文章部分摘要和学习笔记架构区别Docker属于CS架构(client-server),Podman利用了无守护架构(daemonless......