一文看懂业界在离线混部技术

本文介绍了在离线混部技术作为提升资源利用率、降低成本的有效方案,分析了混部的背景、成本价值、技术门槛以及业界实践。文章通过实例展示了在离线混部如何帮助企业节省成本,并探讨了不同类型的混部方案,包括独占内核与共享内核、静态决策与动态决策的组合。此外,还分享了一种开源的在离线混部快速实现方案,以帮助更多企业实现资源优化。
摘要由CSDN通过智能技术生成

前 言

刚刚过去的 2021 年,在全球经济增长放缓、疫情时起时伏、中美关系摩擦不断、国家平台监管趋严等宏观趋势叠加影响下,很多互联网厂商都遭遇了明显的市值下滑以及亏损加大,裁员消息时有耳闻,所以在 2022 年,降本增效无疑将进一步成为业界大势所趋。

在保持业务形态和投入不变的前提下,降本增效一个显而易见的方法是提升现有资源利用率,而造成资源利用率不高的原因主要有如下几个:

  • 粗放的资源评估: 研发更关注如何快速稳定的迭代产品需求,所以在服务部署时,一般按照最大流量来估计服务所需资源。但在线服务大都具有明显的潮汐特征,导致大部分时间段资源利用率都很低(10% 以下)从而造成浪费。

  • 集群资源整合度不高: 服务器的资源占用常常呈现非均衡状态,例如在线服务尤其是调用主链路上的扇出节点业务,高峰期往往呈现出 CPU 和带宽吃紧,但内存绰绰有余的情况。这导致虽然内存有冗余,但依然无法聚合等比例的其它闲置资源去形成有意义的计算实体。

  • 业务部署隔离: 因为东西部机房成本差异较大和以及容量规划等问题,很多企业会将在线机房、离线机房完全隔离开,这样不同 AZ 甚至不同地域间的在离线作业完全无法融合,资源池也无法互通流转。

而在离线混部技术作为提升资源利用率、降低成本的有效方案,受到业界的一致认可和推荐。

什么是在离线混部

企业的 IT 环境通常运行两大类进程,一类是在线服务,一类是离线作业。

  • 在线服务: 运行时间长,服务流量及资源利用率有潮汐特征,时延敏感,对服务 SLA 要求极高,如消息流 Feed 服务、电商交易服务等。

  • 离线作业: 运行时间分区间,运行期间资源利用率较高,时延不敏感,容错率高,中断一般允许重运行,如 Hadoop 生态下的 MapReduce、Spark 作业。

因为在线服务资源利用率有更明显的的起伏特征,所以混部的主要场景是通过填充离线作业把在线服务各个时段的空闲资源利用起来,减少企业与日俱增的成本开支。(注:离在线混部计划另文阐述)

图 1 混部示意图

在离线混部的成本价值

为了更形象的了解在离线混部的成本价值,我们来看一个中小型企业,4 核 8G 的机器一共有 1000 台,主要计算资源就是 4000 核,8000G。假设平均每台机器的资源使用率是 10%,那么实际使用的计算资源是 4000*10% = 400 核,8000*10% = 800G。如果我们能通过混部将资源利用率提升到 20%,那么我们只需要 500 台机器即可。假设 CPU 的平均价格是 300 元 / 核 / 年,内存的平均价格是 180 元 /G/ 年,就可以节省 2000*300 + 4000 * 180 = 132w 元 / 年。

由此可见, 在离线混部的成本价值是清晰可计算且收益巨大的。

业界实践来看,谷歌利用混部技术将资源利用率从 10% 提升到 60%,每年节省上亿美金。阿里等大厂也成功借助混部将资源利用率提升了 3 倍以上,成本节省可观。

在离线混部的技术门槛

在离线混部虽然有明显的成本价值,但目前真正落地到生产环境的还是只有头部的一些大厂。究其原因,主要是在离线混部涉及服务观测、调度部署、容灾治理等多方面底层技术难题,甚至还包括组织成本核算、跨部门协同等非技术问题,有较高的实施门槛。总结起来,大致有以下几大挑战:

可观测性体系

可观测性简单来说是通过检查系统输出来衡量系统内部状态的能⼒。从具体输出项来看,一般包括 metric、trace、log 三种方式,是系统健康运行的基石。在离线混部要追求更高的资源利用率,必然需要借助实时指标的反馈做出决策。但是可观测性在分布式及云原生时

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值