容器应用优雅关闭
通过Prestop参数调用
1 | 定义一个优雅关闭的脚本,通过 k8s-prestop 在关闭 POD 前调用优雅关闭脚本,实现 pod 优雅关闭。 |
shell脚本修改为exec执行
1 | shell 中添加一个 exec 即可让应用进程替代当前 shell 进程,可将 SIGTERM 信号传递到业务层,让业务实现优雅关闭 |
通过init工具启动
1 | 使用 dump-init 或 tini 做为容器的主进程,在收到退出信号的时候,会将退出信号转发给进程组所有进程。,主要适用应用本身无关闭信号处理的场景。docker –init 本身也是集成的 tini |
总结
1 | 对于容器化应用启动命令建议使用 EXEC 模式。 |