阿里大规模业务混部下的全链路资源隔离技术演进

本文介绍了阿里云在大规模业务混部下的全链路资源隔离技术演进,强调资源隔离在混部中的重要性。通过CPU Group Identity、SMT expeller等技术,实现内核调度、内存和IO的隔离,有效提升资源利用率并保障高优先级业务的QoS。此外,文章还探讨了CPU Burst、Memcg后台回收等技术在解决资源竞争和优化调度方面的作用。
摘要由CSDN通过智能技术生成

混部顾名思义,就是将不同类型的业务在同一台机器上混合部署起来,让它们共享机器上的 CPU、内存、IO 等资源,目的就是最大限度地提高资源利用率,从而降低采购和运营等成本。

2014 年,阿里开始了第一次探索混部,经过七年磨练,这把将资源利用率大幅提升的利剑正式开始商用。

通过计算资源、内存资源、存储资源、网络资源等全链路的隔离以及毫秒级的自适应调度能力,阿里可以在双十一的流量下进行全时混部,通过智能化的决策与运维能力,支撑着内部百万级的 Pod 混部,不管是 CPU 与 GPU 资源,普通容器与安全容器,包括国产化环境各种异构基础设施,都能实现高效混部,这让阿里核心电商业务生产集群成本下降了 50% 以上,同时让核心业务受到的干扰小于 5%。

针对云原生时代的资源效能提升问题,我们将基于大规模场景下的混部实践推出系列文章,详细介绍并分享关于混部技术的细节,及大规模生产中碰到的种种落地的实际问题。作为系列开篇,本篇文章将介绍资源隔离技术在混部中的重要性、其落地挑战及我们的应对思路。

混部和资源隔离之间的关系:资源隔离是混部的基石

混部通常是将不同优先级的任务混合在一起,例如高优先级的实时任务(对时延敏感,资源消耗低;称为在线)和低优先级的批处理任务(对时延不敏感,资源消耗高;称为离线),当高优先级业务需要资源时,低优先级任务需要立即归还,并且低优先级任务的运行不能对高优先级任务造成明显干扰。

为了满足混部的需求,在单机维度的内核资源隔离技术是最为关键的一项技术,阿里云在内核资源隔离技术上深耕多年,积累了许多业界领先的经验,我们将这些内核资源隔离技术主要涉及的范围概括为内核中的调度、内存和 IO 这三大子系统,并且在各个子系统领域根据云原生的混部场景进行了深入的改造和优化,包括 CPU Group Identity、SMT expeller、基于 Cgroup 的内存异步回收等。这些关键的技术使客户有能力在云原生混部场景中根据业务特点给出最优解决方案,有效提高用户的资源使用率并降低用户资源的使用成本,非常适用于容器云混部场景,同时也是大规模化混合部署方案所强依赖的关键技术。

下图是资源隔离能力在整个混部方案中的位置:

为什么需要资源隔离,资源隔离会遇到哪些拦路虎

假设我们现在有一台服务器,上面运行了高优的在线业务以及离线任务。在线任务对响应时间 (Response Time, RT) 的需求是很明确的,要求尽可能低的 RT,故被称之为延迟敏感型 (Latency-Sensitive, LS) 负载;离线任务永远是有多少资源吃多少资源的,故此类负载被称之为 Best Effort (BE)。如果我们对在线和离线任务不加干涉,那么离线任务很有可能会频繁、长期占用各种资源,从而让在线任务没有机会调度,或者调度不及时,或者获取不到带宽等等,从而出现在线业务 RT 急剧升高的情况。所以在这种场景下我们需要必要的手段来对在线和离线容器进行资源使用上的隔离,来确保在线高优容器在使用资源时可以及时地获取,最终能够在提升整体资源

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值