笔记。 翻译。:美国DevOps工程师Sid Palas,使用
TL博士:Azure 和 Digital Ocean 不对用于控制平面的计算资源收费,这使得它们成为部署许多小型集群的不错选择。 对于运行少量大型集群,GKE 最适合。 此外,您可以通过使用现货/抢占/低优先级节点或“订阅”长期使用相同节点(这适用于所有平台)来显着降低成本。
集群大小(工作人员数量)
概观
这一消息的发布让一些人感到非常不安……
文章的主要人物是:
- 谷歌 Kubernetes 引擎 (GCP) –
价格计算器 ; - 弹性 Kubernetes 服务 (AWS) –
价格计算器 ; - Azure Kubernetes 服务 (Azure) –
价格计算器 ; - 数字海洋上的 Kubernetes –
定价页面 .
费用明细
在每个平台上使用 Kubernetes 的总成本由以下部分组成:
- 集群管理费;
- 负载均衡(用于 Ingress);
- Worker的计算资源(vCPU和内存);
- 出口流量;
- 永久保存;
- 由负载均衡器处理数据。
此外,如果客户想要/可以使用抢占式,云提供商会提供大幅折扣
值得强调的是,虽然成本是比较和评估服务提供商的良好基础,但还应考虑其他因素:
- 正常运行时间(服务水平协议);
- 周边云生态系统;
- K8s 的可用版本;
- 文档/工具包的质量。
然而,这些因素超出了本文/研究的范围。 在
Jupyter笔记本
为了更容易找到最有利可图的解决方案,我开发了
您可以在 Binder 中使用记事本的实时版本进行练习:
如果计算或原始定价不正确,请告诉我(这可以通过 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 比率是否成立。
文章
- AKS:51465 美元/年
- EKS:43138 美元/年
- GKE:30870 美元/年
- DO:36131 美元/年
我希望本文和笔记本能够帮助您评估主要的托管 Kubernetes 产品和/或通过利用折扣和其他机会在云基础设施上节省资金。
译者PS
另请阅读我们的博客:
- «
Kubecost 审查在云中的 Kubernetes 上节省资金 “; - «
介绍适用于 Yandex.Cloud 的 Kubernetes CCM(云控制器管理器) “; - «
准备一个Kubernetes集群是不是简单方便? 宣布插件运营商 “; - «
Kubernetes 基础设施作为一种经济实惠的服务 “。
来源: habr.com