开发者社区> 问答> 正文

在Kubernetes中自动生成Pod

我之前创建了一个使用Docker Python SDK生成Docker容器的Flask服务器。当客户端命中特定端点时,服务器将生成容器。它将维护队列,并且能够杀死不响应请求的容器。

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

docker.from_env().containers.run('alpine', 'echo hello world')
Docker Swarm是一个更好的解决方案,还是在Kubernetes中有一个隐藏的做法?Kubernetes Python API是否是自动生成pod和作业的逻辑解决方案,其中Flask服务器是管理集群中其他pod的pod?

展开
收起
k8s小能手 2018-12-29 15:57:25 2786 0
1 条回答
写回答
取消 提交回答
  • 整合最优质的专家资源和技术资料,问答解疑

    Kubectl run'很像'docker run',因为它会创建一个带有基于docker镜像的容器的Pod(例如,如何从Kubernetes pod中运行curl命令)。有关更多比较,请参阅https://kubernetes.io/docs/reference/kubectl/docker-cli-to-kubectl/。但是你使用k8s运行的是包含容器而不是直接运行容器的Pod / Jobs,这将为你增加额外的复杂性。

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

    我不知道swarm足以比较。我怀疑它对你来说会更容易,因为它更专注于docker(k8s API旨在支持其他运行时),但也许其他人可以对此发表评论。无论是使用swarm还是帮助你,我都会猜测取决于你的动机。

    2019-07-17 23:24:09
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
ACK 云原生弹性方案—云原生时代的加速器 立即下载
ACK集群类型选择最佳实践 立即下载
企业运维之云原生和Kubernetes 实战 立即下载

相关镜像