kubernetes - 在终止 kubernetes 中的 pod 之前等待进程完成
问题描述
我正在寻找一种解决方案,其中 pod 内的运行进程在删除之前完成。此外,停止服务以向终止的 pod 发送新请求。但我有点困惑
terminationGracePeriodSeconds
和
lifecycle:
preStop:
exec:
command:
- "sleep"
- "60"
解决方案
终止宽限期和 preStop 挂钩是两个不同的东西。宽限期是 kubelet 允许您正常关闭的时间(通过处理 TERM 信号)。preStop 钩子可用于在 pod 关闭之前运行命令。如果 preStop 钩子超过了宽限期,则会再给它 2 秒的时间来终止。
也就是说,我不会过分依赖优雅的关机。豆荚生活在寒冷和敌对的环境中,随时都会被杀死,你应该为此做好准备。
有关 pod 终止的更多信息:https ://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#pod-termination
推荐阅读
- vba - Powerpoint VBA 上标数字
- flutter - 每次我进入文本字段时,Flutter AnimatedSwitcher 都会重建
- outlook - AppleScript 到 Outlook:在新邮件中格式化文本颜色?
- r - 在循环中创建图形:一个图形与其他图形不同
- python - 将函数输出从文本文件返回到 html 烧瓶
- android - 区分真实系统应用程序和预装用户应用程序
- python - 如何计算通过 MSER 检测到的特征数量?
- apollo - 无法使用 Apollo 的 setContext() 设置授权标头
- sql - 在 oracle 11g 中使用触发器自动递增:ORA-00900:无效的 SQL 语句 [脚本位置:363 - 367] END
- javascript - 单击时将类添加到 HTML 列表中的一个且只有一个元素