B站整体的预算逻辑是这样的,就是IT的成本管理主要针对预算的管理,每个财年开始的时候完成整个财年的预算编制。在编制的这个过程中,我们会把业务的目标转化成成本。
首先业务会提出他来年的这个DAU、MAU以及播放、投稿数量、主播数等等的目标。技术会将这些业务目标转化成技术的资源需求,在转化成制约需求的过程中,会结合技术的优化方案,这样的话就会定下来降本的目标,业务目标,业务增长的目标,再加上降本的目标。最后就可以知道我们整体的这个成本预算是个什么样子的,预算定好了,那降本目标也就定好了。其中这个预算里面最核心的就是中间北极星指标单位成本的CostDown,对视频内播放来说,它可以是单VV的成本。那对于直播业务来说,它可以是单PCU的成本。
那预算定好以后是不是就按部就班的执行就好了,这中间也暴露出来了几个问题。
预算控制的问题
- 第一个问题是预算的过程中,技术中台参与不够,业务是直接把它的业务表转化成了资源需求,直接提交给了资源运营的负责人。这样的话,技术中台实际上是最后一个被告知资源需求的。
- 第二个问题是在老的这样的一个管理模式下,预算内的需求就变成了白名单,只要它是这个预算内的,就会直接pass掉业务提的采购需求一路通过,预算控制的力度就不够,很容易造成浪费。
- 第三个问题是缺乏业务视角的权益,账单业务对成本没有感知,预算外优化的动力就不足,基本上也就是做年初我们规划的那些优化项目成本控制,也就很难超预期,甚至还有可能不达预期。其中最重要的就是最后一个问题,就是业务对资源效率和成本没有感知,那么降本的收益也就难以评估,那业务去配合一起去做降本的动力就会不足。
综合以上这三个问题,发现实际上难以在预算制定的阶段就规划出一个能达到前面提到的目标。实际上,我们不管怎么样去删减,怎么样去PK,怎么样去沟通,这个预算都难以控制在上一个财年的实际花费之下。但是既然降本的目标已经下达了,那这个行动就是一定要落实的。
在22年年初的时候,我们就引入了FinOps的理念。同时,我们也和多家公有云厂商进行了交流和学习云财务管理规范的文化和实践。
FinOps框架(finops.org)
这里列了FinOps框架的几个方面。从原则上来说,FinOps强调团队协作,强调目标和责任驱动,以及集中化的一些成本决策,监控分析和定时的成本报告等等,那参与FinOps的角色也很多,有FinOps的实践者,企业高管,业务的owner,财务和采购,以及技术和运维团队。FinOps的生命周期为三个阶段:成本洞察、成本优化和成本运营。
B站FinOps的组织协同
基础架构部的资源运营团队,承担了FinOps实践者的角色,作为FinOps的核心,我们的主要工作:
- 一是成本感知,让各个业务能够了解它的成本配额,也就是预算成本,以及做成本分摊和成本分析,以及展示成本是什么样子。
- 二是资源优化,在资源的优化里面,我们着重要看资源利用率和效率,资源使用量的优化,计费策略的优化,异常的管理,还有一些决策和调度。
- 三是最组织的协同,我们会推动技术优化的落地,并且跟踪每一笔预算的执行。原来以白名单形式去执行的预算,现在变成黑名单的形式,也就是每一笔预算都要经过我们的审核,每一笔预算在执行的过程中,都需要去基于当下的情况去做,有去做这个review和决策,所以我们会参与到这个成本的决策中,实现集中化的一个成本的管理。
B站FinOps实践路径