Google 云容器引擎与普通虚拟机
Google cloud container engine vs normal vm
关于容器引擎的简短问题:为什么我应该使用它而不是仅仅在普通 VM(在计算引擎中)中处理我的 docker 容器?可以省点钱,这样...
此致,
马克
这是使用您自己的基础架构或按服务付费方法的普遍问题。这可能最好用经济来解释(您是否有足够的内存来在自己的硬件上进行大量投资来创建 VM?)
但也有技术问题:有了付费服务,你就可以免于供电、连接、硬件维护、低级管理等问题,当然这也意味着你无法影响如何(快速、昂贵、适合您的需求等)这些问题由您的提供商解决。
简而言之:使用 VM,您有更多的自由,但也有更多的工作和可能更高的前期成本(还有 您自己的劳动力成本,因此需要 更多的时间来开始 项目的重要部分)。对于付费服务,总 财务 成本可能更高,但成本会及时分摊。您对平台的自由度较低,但这也意味着您可以专注于与您的特定应用程序相关的更高级别的问题 - 您可以更快地开始考虑它们。
你也可以考虑两者 - 例如。用于灾难恢复、测试或备份的额外计算能力。
在小规模下,运行在普通 VM 中安装容器就可以了。 Google 甚至提供了 container optimized image 让这变得非常简单。而且它绝对比 运行 构建 Kubernetes 集群(在 Google 容器引擎中或您自己)便宜。
Kubernetes / GKE 真正强大的是集群管理API。它允许您使用 CLI/UI 或其他程序 introspect 您计算机上的所有容器 运行ning。使用普通的 VM,要找出您正在 运行ning 的所有容器,您需要重复 ssh 进入每个 VM 和 运行 docker ps
或专门构建您的容器到 "phone home" 到中央容器版本授权机构(如果你想使用现成的容器,这是不可能的)。使用 Kubernetes,你可以说 kubectl get pods
并且用一个命令就知道你正在 运行 的一切。您可以使用为应用程序管理构建的结构,如 Deployments(或 kubectl rolling-update
)来推送新版本的容器,而无需重新启动任何 VM。您还可以获得容器的集群范围日志记录和监控。
关于容器引擎的简短问题:为什么我应该使用它而不是仅仅在普通 VM(在计算引擎中)中处理我的 docker 容器?可以省点钱,这样...
此致, 马克
这是使用您自己的基础架构或按服务付费方法的普遍问题。这可能最好用经济来解释(您是否有足够的内存来在自己的硬件上进行大量投资来创建 VM?)
但也有技术问题:有了付费服务,你就可以免于供电、连接、硬件维护、低级管理等问题,当然这也意味着你无法影响如何(快速、昂贵、适合您的需求等)这些问题由您的提供商解决。
简而言之:使用 VM,您有更多的自由,但也有更多的工作和可能更高的前期成本(还有 您自己的劳动力成本,因此需要 更多的时间来开始 项目的重要部分)。对于付费服务,总 财务 成本可能更高,但成本会及时分摊。您对平台的自由度较低,但这也意味着您可以专注于与您的特定应用程序相关的更高级别的问题 - 您可以更快地开始考虑它们。
你也可以考虑两者 - 例如。用于灾难恢复、测试或备份的额外计算能力。
在小规模下,运行在普通 VM 中安装容器就可以了。 Google 甚至提供了 container optimized image 让这变得非常简单。而且它绝对比 运行 构建 Kubernetes 集群(在 Google 容器引擎中或您自己)便宜。
Kubernetes / GKE 真正强大的是集群管理API。它允许您使用 CLI/UI 或其他程序 introspect 您计算机上的所有容器 运行ning。使用普通的 VM,要找出您正在 运行ning 的所有容器,您需要重复 ssh 进入每个 VM 和 运行 docker ps
或专门构建您的容器到 "phone home" 到中央容器版本授权机构(如果你想使用现成的容器,这是不可能的)。使用 Kubernetes,你可以说 kubectl get pods
并且用一个命令就知道你正在 运行 的一切。您可以使用为应用程序管理构建的结构,如 Deployments(或 kubectl rolling-update
)来推送新版本的容器,而无需重新启动任何 VM。您还可以获得容器的集群范围日志记录和监控。