首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >kubernetes replicaSet关机策略

kubernetes replicaSet关机策略
EN

Unix & Linux用户
提问于 2021-01-30 14:18:49
回答 2查看 95关注 0票数 0

库伯奈特斯在倒数replicaSet时使用术语信号。

这对我的申请来说太危险了。

我使用Tomcat应用服务器,这个应用服务器有自己的关闭机制来终止应用服务器。

当我发送操作系统(Linux)信号时(9,15,.)对于jvm,JVM不知道jvm中的线程如何处理,所以线程在成功完成之前就被杀死了。

代码语言:javascript
运行
复制
Request -----> BackEnd API -----> [Process] -----> Response
                                      ^   
                   Send TERM (Signal) while thread doing Process

有没有办法改变库伯奈特集装箱停运机制?

我要库伯奈特斯使用:

代码语言:javascript
运行
复制
catalina.sh stop
EN

回答 2

Unix & Linux用户

回答已采纳

发布于 2021-02-01 15:16:31

Kubernetes生命周期是解决以下问题的好方法:

集装箱生命周期钩

票数 0
EN

Unix & Linux用户

发布于 2021-01-30 16:02:31

做这件事的方法应该是哑口无言。

建造容器,哑巴-init通常是一个很好的做法,处理僵尸等。在您的情况下,它还允许重新映射信号。

在您的Dockerfile中,您可能有如下所示

代码语言:javascript
运行
复制
CMD ["dumb-init", "--rewrite", "15:28", "/app/start.sh"]

请与kill -l核对,SIGINT应该是15号。

然后,在开始脚本中,您可以捕获SIGWINCH (28)信号:

代码语言:javascript
运行
复制
#!/bin/sh

trap "cd /app ; catalina.sh stop" SIGWINCH

[your startup script]
exec $JAVA_HOME/bin/java ...

编辑,正如我所看到的,另一个答案被接受了:当然,容器生命周期挂钩可能听起来不错。

一方面,它们在这里已经有一年了:根据集群版本的不同,它们可能无法使用。

然后,您会发现它们只在API驱动的终端上运行,这可能是一个问题。

票数 1
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/631772

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档