云计算牛批巨头大PK:倡导Kubernetes即服务的EKS、AKS与GKE大比对


在本文中,我们将更仔细地研究游戏中的领先玩家:

  • EKS -Amazon Elastic Kubernetes Services(已于2018年6月发布,以全面上市)
  • AKS -Microsoft Azure Kubernetes服务(于2018年6月发布以正式上市)
  • GKE -Google Kubernetes引擎(于2015年8月发布,正式上市)

GKE(来自Google Cloud)比其他公司早得多推出了他们的产品,最初是最成熟的解决方案。但是,现在,EKS和AKS以及许多其他产品(IBM,DigitalOcean等)也已面世,从而迎接了挑战。他们现在也提供了自己的服务和功能,每个都有自己的关键值和容器编排的区别。

升级维护
GKE位居首位,因为它们的Kubernetes托管服务提供了用于处理升级和维护的最自动化的流程,从而可以轻松扩展多容器应用程序。最值得一提的Kubernetes功能可能是它的自动扩展功能,它可以根据需要自动校准相关资源,从而为所有服务整体保持高可用性。同样,用于Kubernetes的基于云的托管服务必须具有相同的高度可扩展性,并根据需要计算和配置资源。毫无疑问,GKE提供的扩展能力是最成熟的,因此使其成为更可靠的选择。

支持的节点和容器运行时功能
选择一个协调器时,检查出提供的节点和容器运行时功能是最基本的。
您应该考虑:

  • 您可能需要的灵活性
  • 您已经在运行的机器
  • 您可能需要考虑的其他相关费用

签出节点支持时,您需要考虑主机操作系统(Linux或Windows)的详细信息。快速细分:
  • EKS-Amazon Linux,Ubuntu,Amazon机器映像(AMI)和Windows服务器
  • AKS-Ubuntu,Windows Server
  • GKE-容器优化的操作系统(COS),Ubuntu,Windows Server

关于容器运行时,所有三个供应商都支持Docker,而GKE也支持容器化。自动包含容器使产品更加灵活,消除了对Docker的单独依赖。

安全是关键
尽管容器化应用程序的安全策略越来越强大,但仍有许多组织需要覆盖,因此,一些云提供商已将安全控制作为每个群集创建的标准组成部分。
动态策略配置至关重要,为此,RBAC发挥了作用。在所有三个主要平台上完全支持基于角色的访问控制实现。在提供类似产品的同时,EKS具有显着的优势,它整体上具有更严格的安全性强化策略,并且通过将RBAC要求和pod安全性策略纳入强制性。
不幸的是,网络安全策略仍然是一个巨大的挑战,三个主要提供商中的任何一个都不默认启用它。此外,它们都提供了一些强制执行和监视对群集的API终结点的访问的最小方法,如果您不采取必要的手动步骤来保护应用程序,则该漏洞会暴露出来并容易受到漏洞的攻击。

性能和可用性
SLA(服务水平协议)在每个行业和云社区中都是一个强大的缩写,两者没有什么不同。所有云平台提供商都为其托管的Kubernetes服务提供了可用区域和区域,从而为分发部署提供了更大的灵活性。
对于Kubernetes平台,您应该查看控制平面SLA。Amazon EKS保证 99.95%的正常运行时间,启用可用性区域时AKS提供 99.95%的服务,禁用时提供99.9%的服务,GKE拆分其托管的Kubernetes集群,以实现Zonal部署的99.5%的正常运行时间和区域部署的99.95%的正常运行时间。
考虑以下因素时,这些数字至关重要:潜在的停机,未重新安排Pod的时间安排以及任何其他潜在的资源管理故障。
在Medium上发表的一篇很棒的文章涵盖了相同的主题,并概述了性能指标,例如集群创建时间和供应应用程序所需的时间。这两个指标使AKS和GKE都位居榜首,因为它们是最快启动新集群的过程(几分钟之内!);更令人惊讶的是,在配置应用程序方面,GKE的速度明显快于其竞争对手。

Microsoft AKS和IBM Cloud Kubernetes服务当前提供免费的集群管理计划。您将只需要为使用中的资源付费,例如虚拟机(VM),存储等。