52、Kubernetes Pod 生命周期管理与应用优雅关闭实践

Kubernetes Pod优雅关闭实践

Kubernetes Pod 生命周期管理与应用优雅关闭实践

1. Pod 生命周期基础理解

容器的运行形式不同,会影响其主进程的执行方式。第一种形式的容器将 mybinary 可执行文件作为主进程运行,而第二种形式则以 shell 作为主进程, mybinary 进程作为 shell 进程的子进程运行。

需要强调的是,Kubernetes 中的生命周期钩子是针对容器而非 Pod 的。例如, pre-stop 钩子在容器终止时调用,通常是因为存活探针失败,这可能在 Pod 的生命周期内多次发生,并非仅在 Pod 关闭时触发。所以,不能用 pre-stop 钩子来执行仅在 Pod 终止时才需要的操作。

2. Pod 关闭流程解析

Pod 的关闭由通过 API 服务器删除 Pod 对象触发。当 API 服务器收到 HTTP DELETE 请求时,不会立即删除对象,而是设置 deletionTimestamp 字段,此时 Pod 进入终止状态。

Kubelet 检测到 Pod 需要终止后,开始终止每个容器。它会给每个容器一定时间进行优雅关闭,这个时间称为终止宽限期,可在 Pod 规范中通过 spec.terminationGracePeriodSeconds 字段进行配置,默认值为 30 秒。终止流程如下:
1. 若配置了 pre-stop 钩子,则运行该钩子并等待其完成。
2. 向容器的主进程发送 S

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值