为什么选择Google Kubernetes Engine而不是Google AppEngine?

时间:2018-09-10 12:40:19

标签: google-app-engine kubernetes google-cloud-platform google-kubernetes-engine

据我所知,GKE似乎比配置和部署应用程序稍微复杂(使用Kubernetes直接文件或Helm Charts或其他东西?)。此外,它似乎没有更好的Pod故障检测或更好的性能?

为什么要使用GKE,而GAE只需要使用dispatch.yaml,app.yaml文件和gcloud cli进行部署?

是否有针对GAE的技术或财务反馈?

最后,我们如何在GKE和GAE之间做出选择?不选择GAE的原因是什么?

4 个答案:

答案 0 :(得分:6)

使用GKE的一个可预见的好处是独立于云提供商。

使用kubernetes时,迁移到另一个云提供商甚至私有云要容易得多。

根据经验,使用专有解决方案时,您的运气好坏必然与云服务提供商绑定。例如,当您的云提供商决定不赞成某个运行时时,您将怎么做。

在使用开源解决方案时,即使受到管理,您仍然是一个自由的人。

答案 1 :(得分:5)

Google Kubernetes Engine(GKE)是用于运行Docker容器的集群管理器和编排系统。 Google App Engine(GAE)基本上是由Google管理的容器。

它们都试图为您提供类似的主要好处(可伸缩性,冗余,部署,回滚等)。 主要区别在于他们的理念:GKE试图为您提供有关集群所有内容的非常精细的控制。 GAE尝试让您以尽可能少的配置/管理来运行您的应用。

使用GKE,您不仅可以控制更多,而且可以为您完成更多工作。您需要配置网络,安全性,软件更新等。使用GAE,您无需担心许多这些事情,而您可以专注于您的应用程序。

答案 2 :(得分:2)

尝试为未来的访问者分享我的想法

让我从下图开始,然后我们将一一看到 OP 的问题:

enter image description here

<块引用>

据我所知,GKE 的配置似乎稍微复杂一些 并部署应用程序(使用 Kubernetes 直接文件或 Helm 图表或其他东西?)。

当您从不想要管理环境开销的客户(基本上是 PaaS 客户端)的角度来看时,是的,与 Google App Engine 相比,Google Kubernetes Engine 稍微复杂一些。

正如您在上图中所看到的 - GKE 更靠左,它是一种较少由供应商管理的云解决方案,因此预计会产生环境配置和管理开销。

<块引用>

此外,它似乎没有更好的 pod 故障检测或更好的 表演?

我没有使用过 Google App Engine,但我可以向您保证 Google Kubernetes Engine 是经过认证的 Kubernetes(更多信息请查看 here),因此如果您在 Google App Engine 上运行 Kubernetes,您可以确定 GKE为您提供与 Google App Engine 相同的性能和功能。

<块引用>

为什么我们要使用 GKE 而 GAE 只需要 dispatch.yaml、app.yaml 文件和 gcloud cli 部署?

正如我在开头提到的,正如您在上图中所看到的,这完全是关于对环境的控制 - 您想要对环境的控制越多,您将在左侧更远的位置选择一个解决方案。请注意,更多的控制意味着更多的环境管理开销,这正是人们倾向于从更远的右侧选择解决方案的原因。

<块引用>

是否有任何针对 GAE 的技术或财务反馈?

Google Kubernetes Engine 和 Google App Engine 都是 Google 非常成功的生产级产品,因此您可以确定技术方面。对于财务方面 - 您需要检查他们的定价模型,看看哪个会更顺利。

<块引用>

最后,我们如何在 GKE 和 GAE 之间做出选择?会是什么 不选择 GAE 的原因?

恕我直言 - 前三个决策点可能是:

  1. 您希望对环境的控制程度
  2. 更多的控制伴随着更多的自我管理,所以您准备好承受自我管理环境的开销了吗
  3. 您的预算

答案 3 :(得分:1)

App引擎是PaaS,而GKE是CaaS。以下是

之间的比较

snippet