【51CTO.com快译】人们需求了解Kubernetes在成本管理方面带来的应战,并运用一些优秀实际处置Kubernetes成本优化的成绩。
如今,Kubernetes的成本管理变得越来越复杂,越来越多的组织面临这个成绩。依据调研机构Gartner公司的调查,到2022年,75%的组织将在消费中运转容器化运用顺序。
假设你在AWS云平台上运用Kubernetes,能够曾经在实施优秀实际来增加运营费用。但是,为了最大限制地节省云计算成本,需求了解Kubernetes在成本管理和优化方面带来的详细应战,并了解它们是什么以及如何处置它们。
为什么Kubernetes云计算成本如此令人困惑?在组织采用容器化技术之前,分配资源和成本要容易得多。只需将资源标记为特定项目或团队,这足以让FinOps (成本优化)确定组织的典型成本结构,并更好地控制预算。一旦组织映射了供应商标签并确定了拥有该项目的团队,则计算项目总成本就会变得愈加容易。
当然,在这种状况下,组织也会面临过度配置资源的风险。开发人员能够会订购比他们需求更多的资源,以确保运用顺序不连续地运转。随着Kubernetes和其他容器化工具的普及,传统的成本分配和报告流程不再适用。而弄清楚Kubernetes的成本预算、分配和报告并不容易。
假设你依然无法详细了解团队的成本,不要担忧,由于你并不是唯逐一个努力控制成本的人。为了改良成本控制,首先要探求这些成本带来的应战。
需求避免的5个Kubernetes成本圈套(1)计算每个容器的成本
计算单个容器的成本并不难,但它需求基础设备和更多的时间来完成。
Kubernetes集群是由多个团队运转的共享效劳,拥有许多容器并包含各种运用顺序。在部署容器之后,你将运用集群的一些资源,并为属于该集群的每个效劳器实例支付费用。
如今假定你有三个团队在开发10个共同的运用顺序,了解哪个运用顺序运用集群资源简直是不能够的,由于这些项目中的每个项目都运用多个容器,因此你不知道给定团队运用的是哪个部分,以及在特定项目中运用了多少。
简而言之,尚不清楚单个容器从一台特定效劳器运用了多少资源。这使得计算和分配成本变得愈加困难。
(2)经过不同的成本中心支付费用
假设你所在的组织包含多个成本中心,并非一切开发成本都来自DevOps预算。某些运用顺序能够由组织的产品团队、研发团队或IT部门的另一个团队为影子IT项目创立。
这里的关键是组织的规模和结构。假设你的组织提供多个数字效劳,其中每个数字效劳都有其特定团队和预算,跟踪云计算效劳的成本将变得愈加复杂。当多个团队运用同一个集群时,确定哪个团队或项目担任最终账单的哪个部分将成为应战。
(3)跨云平台跟踪成本并不容易
假设运用多云,跟踪其成本就会变得愈加困难。Gartner公司对公共云用户的调查表明, 81%的受访者正在与两个或更多的云计算提供商协作。依据ICD公司的调查,到2022年,90%的组织将采用多个云平台或外部部署、私有云、混合云和公共云的组合。
因此,很快组织能够会在多个云平台运转Kubernetes集群,并且其容器将运用不同的节点。组织的运用顺序可以分散在不同的云平台中,例如AWS、谷歌云、Azure等。它们中的每一个能够只承载组织全体任务负载的一小部分,这进一步使跟踪节点和集群变得愈加复杂。
(4)扩展使成绩进一步复杂化
为了充沛应用Kubernetes,大少数团队运用内置的Kubernetes自动扩展机制。配置得越严密,运转集群的糜费就越少,成本也就越低。
Vertical Pod Autoscaler(VPA)会自动调整央求,并限制配置以降低成本,而Horizontal Pod Autoscaler(HPA)专注于横向扩展,以到达分配给现有实例的适宜CPU或内存数量的目的。
但是,这些扩展机制会影响成本计算。VPA不断地改动容器上的央求数量、扩展和增加其资源分配。另一方面,HPA会静态更改容器的数量。例如,假定三个Web效劳器容器在夜间运转。而在高峰时段,HPA从3个容器扩展到50个容器。然后,其数量在每天的半夜减小,然后再逐渐扩展。而到了早晨,其数量波动在一个更低的水平。
这意味着容器的数量及其大小是十分静态的,这使得计算和预测成本的进程变得愈加困难。
(5)容器愈加静态
借助容器,组织可以跨区域、专区或实例类型重新放置任务负载。通常一个容器的寿命只要一天,与虚拟机的继续时间相比很短。越来越多的组织在Kubernetes上运转函数和cron作业,它们的寿命从几秒到几分钟不等。
容器化环境的静态特性为混合添加了另一层复杂性,组织的成本管理系统需求可以处置这个成绩。
如何处置这些Kubernetes成本成绩为避免落入上述圈套之一,组织需求一个基于牢靠数据源的牢靠成本剖析流程。以下是处置Kubernetes成本成绩的一个示例:
(1)找到一个成本可见性工具来详细跟踪成本,例如在微效劳级别。
(2)一旦有了成本可见性,就可以设置准确的预算,并监控流量成本等要素,以更好地了解它们。
(3)接上去,按命名空间、Pod、部署和标签分配成本。
(4)剖析定价信息以预测下个月需求支付的费用。
(5)继续依据估量查明成本或运用异常以进一步剖析它们。
目前,大少数组织都经过人工处置了这个成绩,但假设可以将整个进程完成自动化呢?
处置方案:自动化Kubernetes成本管理分配资源、计算成本和剖析Kubernetes定价不应该像如今这样具有应战性。同步成本和资源分配是必经之路。
Kubernetes成本管理的自动化工具必须具有以下功用:
(1)具有初级云计算账单剖析和成本可见性的功用,可以剖析单个微效劳的成本,并取得任何云计算提供商的通用目的。
(2)自动实例选择和调整大小。
(3)运用Spot实例最多可节省90%的成本。
(4)预测项目、集群、命名空间和部署的费用。
自动化成本管理希冀用于控制Kubernetes成本的人工策略是有风险的,它们通常是耗时、容易出错且难以维护的。部署自动化成本管理处置方案可以为组织省去很多费事,并协助组织专注于对业务最重要的事情——为客户提供优质效劳。
原文标题:5 Costly Kubernetes Traps and Their Solutions,作者:Vito Clover
【51CTO译稿,协作站点转载请注明原文译者和出处为51CTO.com】
【编辑引荐】
Kubernetes 继续交付任务流管理软件 - Devtron
云计算减排将超新动力汽车
云计算浸透测试的思索要素及建议
更优雅的 Kubernetes 集群事情度量方案
攻击容器基础设备破绽只需不到一小时
(责任编辑:admin)