资源管理介绍(一)

《三国演义》中有一个非常著名的诸葛亮北伐故事-失街亭。其中有这样的一段精彩描述:却说司马懿回到寨中,使人打听是何将引兵守街亭。回报曰:“乃马良之弟马谡也。”懿笑曰:“徒有虚名,乃庸才耳!孔明用如此人物,如何不误事!”又问:“街亭左右别有军否?”探马报曰:“离山十里有王平安营。”懿乃命张郃引一军,挡住王平来路。又令申耽、申仪引两路兵围山,先断了汲水道路;待蜀兵自乱,然后乘势击之。当夜调度已定。短短的几句话就把司马懿运筹帷幄,调兵遣将的过程描述的淋漓尽致。这也是古代文字中较早涉及“调度”这一概念的描述。而接下来的故事,想必更是耳熟能详,由于在军事指挥上的失败,导致诸葛亮挥泪斩马谡,马谡付出了生命的代价。这可谓是一个活生生的在调度上成功和失败有着强烈对比的典型案例。

而涉及调度的问题确实无处不在,今天也和大家谈谈云计算上的调度问题。云计算的核心就是通过对数据中心资源的合理分配、管理、调度、编排,把千千万万的服务器、网络等基础设置资源组织好,使得这些资源能够发挥最大效能,实现成本和效率的极大飞跃。早在公有云发展之前,各大互联网公司无不将自己的资源管理调度系统看作整个业务的底座和核心,Google有Borg/Omega,微软有Apollo,阿里有飞天/Fuxi/Sigma,百度有Matrix等等。华为云也刚刚发布了面向5G+云+AI时代的新一代操作系统——瑶光(Alkaid)智慧云脑正式投入商用,其中五大关键能力中三大能力:全域调度、动态协商与治理以及多目标优化,都与资源管理调度技术和算法密不可分

正如前文提到的故事,司马懿在决策的整个过程中,先是询问守将,对其进行了精准画像,然后收集对方部署信息,最后做出一系列部署,从而完成一个完整周期的调度决策。资源管理调度要做好同样需要围绕“资源全周期”下功夫,就好像一个链条:环环相扣、互相协作、谁也不能掉链子,正如如下图所示。未来我们将围绕调度全周期的算法研究逐一向大家展开介绍。

diaodu1beijing.png

IAAS资源离线调度算法:

华为云因为现网Flavor售卖不均、调度策略局限造成部分资源分配率低下的问题,首次出现无法放置的时候集群平均碎片率大于XX%;同时由于租户行为的不可预知性、以及虚拟机的动态创建和删除,使得整体资源池产生较多的碎片,而目前碎片整理只能通过后台手动整理,并且需要克服迁移序列、迁移成本等难题。本算法拟基于Pareto优化与运筹学等技术手段,实现资源池统一管理,动态自适配调配,突破云数据中心的资源分配率低下问题,支撑未来公有云业务每年X倍增量下构建最盈利IaaS、最稳定IaaS的业务诉求。

云资源多维在线调度算法

根据用户实时VM请求,选择最佳可用服务器来满足这个请求,当前资源总体有较多剩余的时候容易发生大规格flavor发放失败的情况,调度场景复杂,需要考虑的因素很多,可度量的维度也很多,在线调度应该如何建模,如何系统优化提升是合作项目要解决的问题。本项目希望通过对华为云ECS请求数据的分析,对现网场景的分析建模来构建在线调度的仿真平台进行算法的研发和验证。通过运筹优化,强化学习等算法的突破来提升不同场景下资源的分配率。

PAAS资源调度算法

传统面向大数据处理(Batch服务)的容器调度方案只考虑单节点计算容量,而忽略了容器之间的数据传输以及大数据作业的执行关系图对于作业完成时间带来的显著影响,本项目拟通过综合考虑数据中心网络拓扑结构以及大数据作业特性,优化容器调度策略,目标提升租户大数据作业运行性能30%,以改善用户体验、增加作业吞吐量、领先于友商,从而构建最盈利的容器服务。

Cloud Capacity量预测:

容量预测根据现网历史资源分配情况、Flavor售卖情况,利用预测算法提前对基础设施的未来扩容进行统筹规划,科学的容量预测有助于既满足用户需求又能不浪费库存。本方案融合了ARIMA(自回归+滑动平均)、Prophet(趋势+周期+节假日等)、LGBM(决策树模型)、以及深度学习LSTM(长短期记忆神经网络)等不同算法的优点,设计并实现了针对不同数据形态的自适应预测架构,包含数据清洗、降噪、预训练、评估等模块,改进了传统高斯加权线性算法对现网容量大幅波动难以预测准确的问题。

image.png

基础设施容量预测服务架构

调度模型演进平台算法:

智能调度算法迭代平台可以在无真实宿主机的情况下,以低成本高速度模拟线上1:1物理主机资源和虚拟机分配请求的调度分配情况,从多维度对现网/待上线算法进行评测和自动优化。可以根据当前策略,已分配结果,评分值和理论解来自动迭代策略参数,逐步提升资源利用率,选取最佳策略发布现网,实时更新在线/离线调度策略。这个迭代平台最终要能支持瑶光中各种决策的量化评估,支持各种算法训练、发布、更新,支持调度、容量规划,采购选型等等场景。

落地情况:

通过调度仿真对现网分配算法进行Debug,并基于此改进相应算法,资源分配率提升6%

调度算法迭代平台已在华为云线上使用,支持对region/az/pod等各种粒度范围数据进行现网VM调度情况的各种场景调度回放和动态展示,助力探索和发现分配过程中的不合理点、支持算法优化迭代、测评算法的分配效果、多维度算法效果对比,支撑新算法的评估。