什么是 FinOps?来源、定义和时机

less than 1 minute read

来源

在云计算背景下,通过自助 (Self-service)、可扩展和按需供给 (On-demand) 的云服务,软件交付速度和技术创新得到大幅提高。

工程师无需再经过传统的财务或采购审批流程,只需点击按钮或一行代码就可以产生一笔公司开销,这导致以往的成本模式已经渐渐不适用。这是一个固定支出到可变支出的巨大转变。以前 3~5 年周期性采购设备的日子已然发生变化,因为云计算的世界里,是以每个小时为单位、几美分的架构可购买小单位的资源。

数据中心的传统流程:

  • 设备的成本通常是预先支付、批次购买的的;
  • 设备通常超规格,预留闲置资源以应对突发性业务增长;
  • 除非资源不足,否则一般不会尝试去压缩某服务使用的资源到合理范围;
  • 因为预算是限制在计划内,减少资源使用不会减少成本、而部分资源闲置也不会增加成本;
  • 按月或按季度报告并审查成本,不频繁是因为数据中心的日常成本变化较少;

而在云环境下:

  • 无需预先购买设备,因为云厂商支持动态资源配给;
  • 资源按最小金额单独收费(因此记账变得繁杂);
  • 在业务繁忙期消耗资源、业务低谷期移除资源,可变的消费模型降低运维成本,但同时带来棘手的成本预测难题;
  • 服务占用超过需求资源量,成本增加;反之,减少服务配给的资源,成本会降低;
  • 需更高频率的报告和审查,否则容易导致超出预期的账单费用;

云上支出渐渐成为公司预算的重要组成部分,影响着公司的盈利和亏损。但很多公司往往会低估云支出的金额,预测的数值通常需要向上修正。同时云的运营模式仍然是不成熟的,公司应该像对待开发业务一样,对云的财务运营模式给予同样的重视。

当公司专注于速度和创新时,云计算支出随之飙升。相反,当公司削减开支、减缓创新时,竞争力又会下降。这种矛盾催生了 FinOps。

定义

FinOps 是云计算市场急速增长背景下,由于按需申请的云资源的内部环境,而自然演变出的一种解决方案。

和 DevOps 一样,FinOps 带来了一套全新的流程和文化,它将多团队聚集在一起,将跨职能协作和敏捷性置于首位。通过对基础架构支出进行数据驱动型的管理,提升云的单位经济性、最终提升公司在云环境下的盈利能力。

好的 FinOps 实践有几个重要的组成部分:

实时报告

在适当领域提供支出的可视化,完善费用展示和费用分摊。好比现实生活中开车时候随时可查看当前速度以便动态调整油门,FinOps 报告要保证可访问性和及时性:

  • 提供及时的、组织内一致的云成本数据;
  • 可视化;
  • 趋势和差异分析;
  • 快速的成本优化反馈闭环;
  • 内部团队成本效能看板推动成本优化最佳实践;

团队协作

不再将重点放在支出审批,而是建立责任问责制度。

  • 跨团队协作:技术、业务、财务以全新的合作方式,集中式决策,组织内传递成本意识文化;
  • 人人有责:在预算范围内,独立的功能和产品团队有权决定各自云资源用量,而尽量不被或少被干涉;

即时流程

云计算的可变成本模型应被视作机遇,而非风险,要建立:

  • 根据实际情况,对云资源用量进行持续调整;
  • 即时预测、规划并购买云资源;
  • 费率和折扣优化:如承诺用量等;

时机

应该从何时开始使用 FinOps?通常情况下:

  • 云成本管理开始脱离正轨,支出达到临界值,此时公司将停止云增长和需求。这是启动 FinOps 常见的时机,但这并非理想时机,会导致公司业务受到拖累;
  • 循序渐进实施 FinOps 流程,FinOps 实践随规模提升,最终形成组织内文化转变,公司越早投入 FinOps,越早可实现云成本管理;

“单位经济”是 FinOps 最重要的概念之一,它将云支出和业务指标(总收入、客户订单等)做计算,得到云资源的投入产出比。例如“服务某客户需要消耗 x 美元,同时带来 y 美元收入”,FinOps 可以在一定程度上帮助公司判断 x 和 y是否合理,进而有意识的在成本、速度之间做出更明智的决策。