在如今的数据中心运营中,资源利用效率是一个关键的关注点。像微博这样拥有大量业务的平台,如何在保障在线作业性能的同时,提升资源利用率是一个亟待解决的问题,这也是很值得我们深入探讨的。
在线业务资源闲置与离线业务资源紧张
微博这样的大型平台,在线业务资源平均利用率不高是常见状况。例如在日常运营中,很多时段大量的计算资源处于闲置状态。而离线业务却总是资源不够用,由于缺乏足够资源,离线作业的执行时间变长、效率变低等问题频繁出现。这就造成了一种资源分配的失衡状态。这种失衡不仅浪费了长期闲置的在线业务资源,还严重制约了离线业务的发展。要想改变这种状况,就需要一种革新的方案。
在离线混部方案的构建
微博构建了基于Kubernetes和Hadoop YARN的在离线混部方案。微博充分利用英特尔至强可扩展处理器的英特尔® 资源调配技术 (英特尔® RDT)和英特尔® Speed Select技术(英特尔® SST)。这个方案的构建不是简单的拼凑,是深入结合微博业务特征和英特尔技术优势的结果。实际操作过程中需要深度考虑如何将在线和离线业务合理整合。需要大量的测试和调整,在不同场景下保证此方案稳定运行。
整合方案的优势互补
整合方案能够在时间和资源上实现互补。在时间上,例如凌晨等在线业务空闲时段,就能分配资源给离线业务。在资源利用上,空闲资源得到了有效利用。这样的整合既不影响在线业务的服务质量,像是微博用户正常浏览内容等操作不会因为资源分配变化而受到干扰。又能提高集群资源的利用率,减少了为更多资源而产生的成本投入,降低TCO,使得微博运营的资源成本控制在一个较好的水平。
在线业务容器化与离线作业部署
微博通过在线业务容器化,这是一种高效整合资源的方式。并且把部分离线作业部署在在线的统一资源池节点上。在此过程中,以英特尔至强可扩展处理器为核心的服务器资源被充分利用起来。比如服务器的计算能力、内存处理能力等都被发挥到极致。这样一来,从硬件到软件的全方位结合,实现了资源利用率的提升。这绝不是一个简单的过程,涉及到技术研发、业务适配等多方面的工作和努力。
提高CPU利用率减少作业干扰
通过多个进程并发的执行,显著提高了CPU的利用率。并且英特尔至强可扩展处理器提供了硬件级别的细粒度抗干扰机制。基于CPU更细粒度的资源调度和管理能力,在减少在离线作业的相互干扰上下足了功夫。这能保证在线业务的高质量运行,像微博高峰时段大量用户的同时访问,服务质量也不会受到影响。同时也能加速离线业务的运行,离线作业便能快速完成任务提高整体作业效率。
英特尔技术的资源管理能力
英特尔至强可扩展处理器像是英特尔® 资源调配技术 (英特尔® RDT) 带来了全新的资源管理视角。它使得共享资源的使用方式的可见性和可控性达到全新水平。以最后一级缓存 (LLC)和主内存 (DRAM)带宽为例,英特尔技术可以跟踪和控制它们的使用。CAT还支持软件引导的缓存容量重新分配。在检测冲突和资源隔离方面,英特尔相关技术可实现细粒度的管理。就像对缓存空间、内存带宽等资源有着精准的调控,还能根据业务需求分配真实的CPU资源。
那么你认为这种在离线混部方案可以被广泛应用到其他类似平台中吗?