[英]What's the difference between Kubernetes and Kubernetes Engine?
[英]What's the difference between launching a docker container in App Engine vs Compute Engine?
鉴于您可以将 docker 图像上传到应用程序引擎和计算引擎,对于始终将其应用程序包含在 docker 中的人来说,真正的区别是什么?
根据一个类似的问题,区别归结为 PaaS 与 IaaS,但是使用 docker 文件,您始终指定操作系统和运行时环境。 所以我看到的唯一区别是您可能最终会通过提供容器在 App Engine 上过度指定。
从根本上说,如果您只是希望您的应用程序无需太多输入即可无缝且快速地扩展,请使用 App Engine Flex。 如果您想要更多的控制权,可以使用其他 Google 产品以不同的方式进行配置,请考虑使用 Compute Engine 的非托管实例组。
值得注意的是,将 Docker 映像添加到 Compute Engine 实例的能力是最近才开发的。 在此之前,App Engine Flexible 是镇上的新生事物,因为我们过去只有 App Engine 标准,绝对不允许您使用 Docker 作为基础。
以下是我的经验中的主要区别:
另外请注意,可以在此处找到有关 App Engine 和 Compute Engine 之间差异的更详细说明。
App Engine是来自 google 的 PaaS 服务和托管服务。 它有动态实例和常驻实例选项来实现缩放。 它为支持的语言预定义了运行时设置,我们只需要执行代码。 它支持同时执行多个版本的应用程序,因此我们可以为不同的用户组发布代码更改。 它本身就支持容器环境,因此不需要提供 Pod 或节点数量等基本细节。 即使对于App Engine 标准,如果没有负载,节点数减少到零也意味着没有成本。 App Engine Flexible 至少需要一个 up 实例。 这里的部署可以通过单个命令完成,即gcloud app deploy app.yaml
计算引擎是 IaaS,因此开发人员需要创建一台机器,设置所需的软件,设置 docker 容器环境。 将没有缩放、版本管理、流量控制、安全、防火墙、健康监控和修复等。因此使用计算引擎很难实现 App Engine 提供的功能。 更棒的选择是 Kubernetes Engine。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.