托管 Kubernetes 的成本比较 (2020)

笔记。 翻译。:美国DevOps工程师Sid Palas,使用 Google Cloud 最新公告 作为信息指南,我比较了世界领先的云提供商的托管 Kubernetes 服务(不同配置)的成本。 他的工作的另一个优点是发布了相应的 Jupyter Notebook,它允许(只需具备最少的 Python 知识)调整执行的计算以满足您的需求。

TL博士:Azure 和 Digital Ocean 不对用于控制平面的计算资源收费,这使得它们成为部署许多小型集群的不错选择。 对于运行少量大型集群,GKE 最适合。 此外,您可以通过使用现货/抢占/低优先级节点或“订阅”长期使用相同节点(这适用于所有平台)来显着降低成本。

托管 Kubernetes 的成本比较 (2020)
集群大小(工作人员数量)

概观

最近的 Google Cloud 公告 GKE 宣布开始对每个集群小时收取 10 美分的费用,这促使我开始分析主要托管 Kubernetes 产品的定价。

托管 Kubernetes 的成本比较 (2020)
这一消息的发布让一些人感到非常不安……

文章的主要人物是:

费用明细

在每个平台上使用 Kubernetes 的总成本由以下部分组成:

  • 集群管理费;
  • 负载均衡(用于 Ingress);
  • Worker的计算资源(vCPU和内存);
  • 出口流量;
  • 永久保存;
  • 由负载均衡器处理数据。

此外,如果客户想要/可以使用抢占式,云提供商会提供大幅折扣 或低优先级节点或承诺使用相同节点1-3年。

值得强调的是,虽然成本是比较和评估服务提供商的良好基础,但还应考虑其他因素:

  • 正常运行时间(服务水平协议);
  • 周边云生态系统;
  • K8s 的可用版本;
  • 文档/工具包的质量。

然而,这些因素超出了本文/研究的范围。 在 StackRox 博客上的二月帖子 详细讨论了 EKS、AKS 和 GKE 的非价格因素。

Jupyter笔记本

为了更容易找到最有利可图的解决方案,我开发了 Jupyter笔记本,在其中使用plotly + ipywidgets。 它允许您比较不同集群大小和服务集的提供商报价。

您可以在 Binder 中使用记事本的实时版本进行练习:

托管 Kubernetes 的成本比较 (2020)
mybinder.org 上的托管-kubernetes-price-exploration.ipynb

如果计算或原始定价不正确,请告诉我(这可以通过 GitHub 上的问题或拉取请求来完成 - 这是存储库).

发现

遗憾的是,存在太多细微差别,无法提供比开头 TL;DR 段落中包含的建议更具体的建议。 不过,仍然可以得出一些结论:

  • 与 GKE 和 EKS 不同,AKS 和 Digital Ocean 不对控制层资源收费。 如果架构包含许多小型集群(例如,每个集群一个集群),AKS 和 DO 的利润会更高。 每个开发商 или 每一位客户).
  • GKE 的计算资源稍微便宜一些,因此随着集群规模的增加,其利润会更高*。
  • 使用可抢占节点或长期节点亲和性可以降低50%以上的成本。 注意:Digital Ocean 不提供这些折扣。
  • Google 的出站费用较高,但计算资源的成本是计算的决定因素(除非您的集群正在生成大量出站数据)。
  • 根据工作负载的 CPU 和内存需求选择机器类型将帮助您避免为未使用的资源支付额外费用。
  • 与其他平台相比,Digital Ocean 对 vCPU 的收费较低,对内存的收费较高 - 这可能是某些类型的计算工作负载的决定因素。

*注:分析使用通用计算节点的数据 (一般用途)。 这些是 n1 GCP 计算引擎实例、m5 AWS ec2 实例、D2v3 Azure 虚拟机和具有专用 CPU 的 DO Droplet。 反过来,可以在其他类型的虚拟机(突发型、入门级)之间进行研究。 乍一看,虚拟机的成本与 vCPU 数量和内存量线性相关,但我不确定这个假设对于高度非标准的内存/CPU 比率是否成立。

文章 终极 Kubernetes 成本指南:AWS、GCP、Azure、Digital Ocean2018 年发布,使用了 100 个 vCPU 核心和 400 GB 内存的参考集群。 为了进行比较,根据我的计算,每个平台上的类似集群(对于按需实例)将花费以下金额:

  • AKS:51465 美元/年
  • EKS:43138 美元/年
  • GKE:30870 美元/年
  • DO:36131 美元/年

我希望本文和笔记本能够帮助您评估主要的托管 Kubernetes 产品和/或通过利用折扣和其他机会在云基础设施上节省资金。

译者PS

另请阅读我们的博客:

来源: habr.com

添加评论