[英]How to get Java Heap Dump from a Kubernetes Pod using jmap?
[英]How to identify a terminating pod in kubernetes using java
我正在使用fabric8通过以下代码获取kuberenetes吊舱的状态。
KubernetesHelper.getPodStatusText(pod);
我在容器中部署了一个应用程序,并且容器和容器之间存在一对一的映射。 我的要求是重新部署该应用程序。 因此,删除吊舱后,我检查状态,并且该方法在删除时返回状态“正在运行”。
由于新部署的应用程序还返回“正在运行”状态,因此我无法确定该Pod已被删除。 容器的其他变量是否可用于识别正常容器和终止容器。
一种方法是执行滚动升级。 这将确保您部署的应用程序不会造成停机(在停止旧Pod之前先启动新Pod)。 一个警告是您必须使用复制控制器或复制集来执行此操作。 大多数滚动部署仅涉及为新版本的软件更新容器的映像。
您可以通过fabric8的Kubernetes Java客户端通过Java完成此操作。 这是一个例子:
client.replicationControllers()
.inNamespace("thisisatest")
.withName("nginx-controller")
.rolling().updateImage("nginx");
您可以更改复制控制器的任何配置(副本,环境变量等)。 当您运行新版本的Pod处于“ Ready
”状态且旧的复制和Pod已停止并删除时,该呼叫将返回。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.