Google云容器引擎vs正常vm

关于容器引擎的简短问题:为什么我应该使用它,而不是在正常的VM(在计算引擎中)处理我的docker容器? 可以省一点钱,这样…

问候,马克

在小规模的情况下,在正常的虚拟机中运行容器是很好的。 谷歌甚至提供了一个容器优化的图像 ,使这真的很容易。 而且比运行Kubernetes集群(无论是在Google Container Engine还是自己)都要便宜。

Kubernetes / GKE真正强大的是集群pipe理API。 它允许您使用CLI / UI或其他程序反思计算机上运行的所有容器。 使用一个普通的虚拟机,找出你正在运行的所有容器,你需要反复ssh进入每个虚拟机并运行docker ps或者专门构build你的容器,以便“通过电话回家”到一个中央容器版本pipe理机构如果你想使用现成的容器,这将是不可能的)。 与Kubernetes,你可以说kubectl get pods并用一个单一的命令知道你正在运行的一切。 您可以使用为Deployments(或kubectl rolling-update )等应用程序pipe理构build的构build体来推送新版本的容器,而无需重新启动任何VM。 而且您还可以在集群范围内logging和监视您的容器。

这是使用自己的基础设施或付费服务方法的一般问题。 这可能是最好的经济解释(你有内存前期投资自己的硬件来创造虚拟机?)

但也有一些技术问题:使用付费服务时,您不需要提供电源或连接性,硬件维护或更低级别的pipe理问题,或者…当然,这也意味着您无法影响(快速,昂贵,符合您的需求等),这些问题是由您的供应商解决的。

简而言之:使用虚拟机可以让你拥有更多的自由,但也有更多的工作,可能还有更高的前期成本(也是你自己的劳动力成本 ,所以需要更多的时间来启动项目的基本部分)。 有偿服务的总体财务成本可能会更高,但费用分摊的时间。 您对平台的自由度较低,但这也意味着您可以专注于与您的特定应用程序相关的更高级别的问题 – 而且您可以尽早开始思考。

您也可以考虑两者 – 例如具有用于灾难恢复,testing或备份的额外计算能力。