Docker 在Kubernetes的吊舱中从另一个容器启动一个容器
我有一个容器,它对一些数据执行一些操作。这个容器内存和CPU资源都很重,我希望它只能按需启动 例如,在Kubernetes的docker compose中,我是这样使用它的:Docker 在Kubernetes的吊舱中从另一个容器启动一个容器,docker,kubernetes,Docker,Kubernetes,我有一个容器,它对一些数据执行一些操作。这个容器内存和CPU资源都很重,我希望它只能按需启动 例如,在Kubernetes的docker compose中,我是这样使用它的: docker-compose run heavycontainer perform.sh some-action 容器执行操作并结束 在Kubernetes中,我希望此容器执行它提供的操作,但响应某些消息(由其他容器创建的AMQP消息)。我有一个监听消息的容器。我首先想到的是一个有两个容器的吊舱:听众和表演者。但我不知道
docker-compose run heavycontainer perform.sh some-action
容器执行操作并结束
在Kubernetes中,我希望此容器执行它提供的操作,但响应某些消息(由其他容器创建的AMQP消息)。我有一个监听消息的容器。我首先想到的是一个有两个容器的吊舱:听众和表演者。但我不知道是否有可能从另一个容器启动一个容器
Init或sidecar容器似乎不是解决方案。我更喜欢避免创建自定义图像来将侦听器注入到执行者中
有什么办法可以做到这一点吗?
我希望它能帮助你
- pod需要定期运行
- pod需要按需运行
注:OpenShift是Enterprise Kubernetes,因此您可以认为OpenShift与Kubernetes是相同的。您可以根据队列中相关消息的数量,使用水平Pod自动缩放()来编排heavycontainer。有趣的阅读,谢谢。但这是我尝试或想要避免的三种情况:init和sidecar容器无法控制pod中的其他容器,第三种情况是关于构建自定义映像。提供的链接没有提到基于水平缩放的“队列中的消息”。你能提供更多的细节吗?除非您的意思是只支持基于CPU的beta api。@ucipass,我的意思是基于自定义指标的HPA,请参见示例:“K8s水平Pod Autoscaler:作为一个控制循环实现,它通过Metrics.K8s.io API(如CPU/内存)定期查询资源度量API以获取核心度量,以及针对特定于应用程序的度量(external.Metrics.K8s.io或Custom.Metrics.K8s.io API)的自定义度量API。”