成本套件概述

ACK提供成本套件功能,使用基于FinOps理念的云成本治理解决方案协助企业IT成本管理人员实现容器集群的资源分账、提效降本等业务场景诉求。本文介绍了成本治理FinOps解决方案和成本治理流程,快速建立云原生下IT成本治理体系。

背景信息

云原生技术逐渐成为当下很多企业进行IT信息化转型的最佳方式,提供共享、隔离、弹性等能力,能够非常简单地降低企业IT成本。然而,2021年CNCF《FinOps Kubernetes Report》的调研报告显示,迁移至Kubernetes平台后,68%的受访者表示所在企业计算资源成本有所增加,36%的受访者表示成本飙升超过20%。造成这一现象的原因有两方面:第一,由于云原生技术的一些不当使用而带来的技术债务,造成了IT成本增加;第二,传统企业在面对云原生架构的引入时缺乏有效的成本洞察和成本控制的手段,难以分析成本增加的根因。

ACK提供成本套件功能,使用基于FinOps理念的云成本治理解决方案协助企业IT成本管理人员实现容器集群的资源分账、提效降本等业务场景诉求该方案提供了资源浪费检查、资源费用预测等功能,通过账单分析、用量统计与实时询价相结合的方式实现对Pod维度的准确估算。

基于FinOps理念的云成本治理解决方案介绍

云成本治理解决方案从物理和逻辑两个维度进行聚合分析,物理维度包括集群的Node、节点池和资源组,逻辑维度包括Pod、应用负载和命名空间,并将物理维度的费用和逻辑维度的费用进行打通,建立完整的资源成本画像,能够更准确合理地进行IT成本治理。FinOps通过构建企业IT成本可视化系统,协同业务、运维、财务进行战略协同,实现IT成本的数字化、可视化,通过问责不追责的方式,连续迭代优化企业IT成本。

image.png

ACK以FinOps的方式实现了成本治理功能,通过成本洞察、成本优化和成本控制三个方面来进行IT成本治理。

成本洞察

成本洞察通过计量和计费相结合的成本分摊模型和智能资源成本画像,实现多维度的容器成本分账与洞察。本方案提供四个维度的成本洞察,分别为集群维度、命名空间维度、节点池维度和应用维度。

  • 集群维度提供对集群整体资源和成本情况的洞察,能够反映集群成本的整体健康状况。对于一个集群,首先需要关注的就是整个集群的费用趋势变化,以判断成本是否符合预期。在集群成本变化呈现非正常趋势时,进行问题下钻,排查成本异常的根因。

  • 命名空间维度能够通过命名空间筛选、展示各命名空间的资源和成本信息。使用命名空间大盘分析成本的前提是公司以命名空间维度划分部门或业务。在此基础上,本方案实现了部门或业务级别的成本分摊。

  • 节点池提供了集群资源维度的成本洞察。ECS云资源往往是集群产生费用的主要组成部分,也是IT运维人员最直接管理的资源。节点池成本洞察能够为您提供节点池资源使用分析和付费策略的选择。

  • 应用成本洞察以Label通配符匹配的方式,筛选出您关心的应用进行成本和资源的统计,侧重于场景化的成本优化。通过Label通配符匹配的方式,您不仅可以监控单应用的成本和资源用量,还可以监控多个相关的应用。例如大数据工作流的场景,您可以为流程中的所有应用加一致性的Label,从而对整个工作流业务进行成本分析。

成本优化

ACK成本套件中,成本优化功能梳理了云原生场景不同细分场景的成本优化方法。当使用成本洞察功能观测和发现成本和资源浪费的趋势后,可以使用成本优化功能制定优化策略,执行优化措施,达到治理IT成本浪费的效果。

成本优化提供多种优化策略。常见的优化策略包括:

  • 云资源付费方式(节省计划等)。

  • 多种应用弹性策略(节点自动伸缩、Serverless弹性、ECS或ECI混合弹性、容器水平伸缩等)。

  • 成本优化的应用调度或重调度策略。

  • 分时或抢占混部。

  • 性能调优(NUMA、绑核等)。

成本优化功能为K8s原生的工作负载提供了资源画像的能力。通过对资源使用量历史数据的分析,实现了容器粒度的资源规格推荐,可以有效简化为容器配置Request和Limit的复杂度。详细介绍,请参见资源画像

成本控制

成本控制提供预算管理、配额管理、成本预测、成本报警等能力,并且支持多云及混合云等场景。

本方案中,成本洞察和成本控制是成本治理过程中最直接、有效的手段。在企业成本治理的过程中,一般推动成本治理的角色是IT主管和基础设施管理团队,他们可以通过成本洞察发现云资源使用上的浪费,再通过成本控制解决浪费问题。而成本优化是业务团队的职责,需要通过他们对业务层面上的认识来进行优化策略的选择,而非IT主管直接推动。同时在成本优化策略的选择中,容易因策略使用不当而产生技术债务,影响成本治理效果。因此,相比于成本优化,成本洞察和成本控制能更直接有效地实现成本治理的效果。

成本治理流程

10

在一个企业的IT成本治理过程中,可以分为三种角色:IT主管或财务、IT运维人员、业务研发人员。

IT主管或财务的职责是确认企业的IT成本处在预算的正常范围内,当成本趋势不合理时,需要找到对应的IT运维人员进行问题下钻;IT运维人员的职责是分析预算不合理的原因,设计资源付费的优化策略,再驱动业务团队进行优化;业务研发人员负责实施优化策略,再将IT成本治理的效果向上反馈,形成闭环。

因此,成本治理的一般流程为:

  1. 查看集群成本大盘判断整个集群是否存在资源或成本浪费。

  2. 如果集群大盘显示费用异常,根据信息确定造成浪费的主要部门或主要业务,选择对应的维度进行问题下钻。问题下钻包括三个维度:命名空间维度、节点池维度和应用维度,一般情况下,分别对应于公司的部门、资源和业务,您可以根据需要选择并进行深入分析。

  3. 问题原因确定后,由相关业务人员进行成本优化。

  4. 通过集群大盘或对应维度的大盘查看成本治理效果。