企业在管理云资源过程中,需要平衡业务敏捷和预算可控,组织庞大并且资源众多成为管理的挑战。下图展示了资源预算管理的一个流程范例
在资源管理上,首先需要遵循一下几个基本原则:
- 统一大账号模式:企业使用一个企业账号在阿里云申请云产品资源,通过树状组织结构管理各业务部门、产品线以及应用的资源需求,各业务团队对其所在部门、产品线或应用的资源使用情况及运营成本负责,禁止私自使用独立云账号申请、开通云产品资源;
- 按需申请资源:所有资源申请相关行为应事先由业务与技术团队充分探讨需求的合理性,按需评估资源使用量以及成本费用;
- 云原生部署架构:业务部署架构设计应遵循“在云上以最佳方式运行”的原则,通过容器、服务网格、微服务、不可变基础设施和声明式 API 等技术手段满足云原生的资源部署要求,做到弹性可扩展(scalable)、松耦合(loosely coupled)、容错性好(resilient)、易于管理(manageable)、便于观察(observable)、频繁变更(changes frequently)。
在上述流程中,对图中的几个概念分别进行阐述:
- 需求计划
根据业务所需,云资源负责人可发起资源需求计划。根据企业的业务特性,可执行比如年度资源计划,按季度追加需求的方式进行管理。需求中包含了所需要用的云资源类型、规格、地域、数量、时间等等,作为支撑审批的依据。在这个过程中,可利用云厂商提供的价格报表,根据资源负责人提交的数据进行价格的测算。
比如阿里云上可通过官网,或者价格查询的API获取到各个云产品规格的价格。注意阿里云提供了预付费、后付费以及预留实例等多种付费方式,对于相同的资源价格影响很大。
需求提交之后,需要部门的负责人和财务审批通过后,需求才会进入到各个业务团队的预算池,并且可以针对需求计划对接后续与云供应商的商约、合同签订流程。
需要注意,需求计划只用做企业和云厂商的规划用途,如果确认即将要申请开通资源,需要发起大客户需求报备的流程,提供实际开通资源的具体信息,如需求报备与需求计划不一致,以需求报备实际情况为准。
2 需求报备
需求报备是指大客户主动向云厂商发起资源准备的指令,要求云厂商在预期时间点前准备好大客户预期所需的云产品资源,各云产品须备有充足容量保障大客户资源的正常顺利开通。按照约定,大客户需要在云厂商承诺的云产品资源最长备货周期之前提交需求报备,与此同时,云厂商须在产品承诺资源备货周期内将大客户报备需求的资源准备到位。简而言之,如果大客户没有事先提交需求报备,云厂商不承诺保障有资源能予以开通申请。另外,如果需求报备的资源诉求与上述的需求计划相差较大,有可能会出现需求报备失败的问题,云厂商反馈无法如期执行需求报备的指令,需要进一步作协商处理。
为了最大程度提高大客户需求报备以及资源交付的成功率,需要尽可能做到以下几点:
1)年度需求计划阶段,应准确表达业务资源部署规划,尤其是:地域、时间、云产品类型以及使用量,为云厂商基础设施建设提供准确有效的业务输入;
2)需求报备阶段,按照年度需求计划的节奏及内容向云厂商发起资源准备指令,如实际需求与年度需求计划不相符,应尽早发起需求报备流程,留有时间提前与云厂商进行协商沟通,从而保障资源顺利交付;
3)明确云厂商各产品的资源备货周期,提前进行需求确认并发起需求报备流程,尽可能避免因提交短于云产品约定备货时间的紧急报备需求造成云产品断供的问题,最终影响资源交付。
3 预算
审批通过的年度需求计划将会生成年度预算,根据多个业务部门提交需求可汇总生成企业的全部预算。通常企业在自然年或者财年年底业务复盘之后就可以展开新年度的预算规划,各个业务线提交需求计划,逐级审批过后生成预算。
在预算管理的过程中,同时可存在以下的几个业务流程:预算转移,预算追加,预算监控。
对于预算的监控,需要获取到各个业务部门的实际消费账单。结合基本原则中尽量使用统一大账号的模式,可利用阿里云的企业财务云中的统一托管,将各个业务线的云资源所有者账号托管到一个统一的账号中,方便使用API获取到所有子账号的消费账单,监控预算的执行情况。一旦发现预算超支,需要通知业务部门负责人关注费用情况。
4 额度
由于企业在云上共用一个大账号,集团内各业务均可使用该账号申请资源,为了防止业务方不按需求报备随意开通、抢占其他部门需求报备的资源,企业可为各个业务部门设置部分云资源的额度。当资源交付和开通时,将会消耗该部门的资源额度直到释放。当资源额度不足时,将不允许开通这个类型的资源。因此,预算上报时,如果能精细到资源的规格、地域、用量、时间等信息,将有助于设定合理的资源额度,保证费用可控。