繁体   English   中英

在Kubernetes中自动生成Pod

[英]Automatically Generate Pods in Kubernetes

我之前创建了一个Flask服务器,该服务器使用Docker Python SDK生成Docker容器。 当客户端到达特定端点时,服务器将生成一个容器。 它可以维护队列,并且可以杀死没有响应请求的容器。

我想向Kubernetes迁移,但是我开始认为我当前的服务器将无法像docker中那样自动“生成” pod。

docker.from_env().containers.run('alpine', 'echo hello world')  

Docker Swarm是否是一个更好的解决方案,还是在Kubernetes中进行了隐蔽的实践? Kubernetes Python API是否会是自动生成Pod和作业的逻辑解决方案,而Flask服务器是管理集群中其他Pod的Pod?

'Kubectl run'与'docker run'非常相似,因为它会基于docker映像创建一个带有容器的Pod(例如, 如何从Kubernetes容器中运行curl命令 )。 请参阅https://kubernetes.io/docs/reference/kubectl/docker-cli-to-kubectl/了解更多比较。 但是,使用k8运行的是包含容器而不是直接运行容器的Pod / Job,因此这将为您增加一层额外的复杂性。

Kubernetes的重点在于协调服务,而不是运行短期任务。 它具有一些功能,可用于运行作业,但这不是其重点。 如果您朝着这个方向发展,那么您可能想看一下knative(和knative构建)或kubeless,因为您所描述的听起来很像无服务器概念。 或者,如果您想更多地考虑乔布斯,那么也许是旅( https://brigade.sh )。 (有关更多信息,请参见https://www.quora.com/Is-Kubernetes-suited-for-long-running-batch-jobs )。如果您要运行可处理请求的Web应用程序工作负载,请注意不需要杀死无法在k8s上响应的容器,因为k8s将为您监视并重新启动它们。

我不知道有很多人可以比较。 我怀疑这对您来说会容易一些,因为它更集中于docker(k8s API旨在支持其他运行时),但是也许其他人可以对此发表评论。 我猜想使用群体是否对您有帮助,取决于您的动机。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM