Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/kubernetes/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
当一个容器完成时,完成Kubernetes作业_Kubernetes - Fatal编程技术网

当一个容器完成时,完成Kubernetes作业

当一个容器完成时,完成Kubernetes作业,kubernetes,Kubernetes,当一个容器完成时,有可能有一个竞争性的工作吗 例如,我想用两个容器运行一个pod的作业: 弹性搜索容器 某些Java应用程序容器连接到Elasticsearch Java应用程序容器运行并完成,但显然Elasticsearch容器继续无限期运行。 因此,这项工作永远无法完成。解决办法是什么 干杯不确定您的用例。我的理解是Elasticsearch应该一直运行以查询数据 看你能跑两个不同的吊舱。一个用于Elasticsearch,另一个用于java应用程序。只需从工作中调用java应用程序。不

当一个容器完成时,有可能有一个竞争性的工作吗

例如,我想用两个容器运行一个pod的作业:

  • 弹性搜索容器
  • 某些Java应用程序容器连接到Elasticsearch
Java应用程序容器运行并完成,但显然Elasticsearch容器继续无限期运行。
因此,这项工作永远无法完成。解决办法是什么


干杯

不确定您的用例。我的理解是Elasticsearch应该一直运行以查询数据


看你能跑两个不同的吊舱。一个用于Elasticsearch,另一个用于java应用程序。只需从工作中调用java应用程序。

不确定您的用例。我的理解是Elasticsearch应该一直运行以查询数据


看你能跑两个不同的吊舱。一个用于Elasticsearch,另一个用于java应用程序。只需从工作中调用java应用程序。

您应该查看
livenessProbe
功能。这是部署中定义的一种功能,在容器运行时每x秒运行一次,以确保容器正确运行。当活性探测失败时,Kubernetes将终止容器。是Kubernetes关于活动性和就绪性探测的官方文档

这里的策略是使用Elasticsearch容器上的liveness探测器来检查Java应用程序是否与之连接。一旦java应用程序完成,连接将不再存在,导致liveness探测失败,kubernetes将终止Elasticsearch容器


但是请注意,我认为
kubectl
会尝试在容器因活动性探测失败而终止时重新启动容器。您可能需要研究禁用该功能或其他功能。

您应该研究
livenessProbe
功能。这是部署中定义的一种功能,在容器运行时每x秒运行一次,以确保容器正确运行。当活性探测失败时,Kubernetes将终止容器。是Kubernetes关于活动性和就绪性探测的官方文档

这里的策略是使用Elasticsearch容器上的liveness探测器来检查Java应用程序是否与之连接。一旦java应用程序完成,连接将不再存在,导致liveness探测失败,kubernetes将终止Elasticsearch容器


但是请注意,我认为
kubectl
会尝试在容器因活动性探测失败而终止时重新启动容器。您可能需要研究禁用该功能或其他功能。

这可能不是最简单的方法,但您可以使用Kubernetes API删除作业:


我不确定您是如何开始作业的,也不确定此解决方案在您的场景中有多现实。

这可能不是最简单的方法,但您可以使用Kubernetes API删除作业:


我不确定您是如何开始这项工作的,也不确定此解决方案在您的场景中有多现实。

ES不必一直运行,它将是一个资源的腰部。我只想在同一个pod上运行这两个容器,并将第二个容器用作实际执行此任务的第一个容器的工具。在我看来,它缺少一种在作业完成时配置需求的方法。ES不必一直运行,它将是一个资源的腰围。我只想在同一个pod上运行这两个容器,并将第二个容器用作实际执行此任务的第一个容器的工具。在我看来,它缺少了一种在作业完成时配置需求的方法