柔性计算向云计算至少再要 30% 效率 | 对话华为云首席架构师顾炯炯

科技   2024-09-13 16:23   辽宁  

作者 | 鲁冬雪

目前企业在用云方面,主要面临着资源利用率低下和成本浪费的问题。据统计,全球企业上云成本中约有三分之一被浪费,这主要是由于云算力资源需求与供给之间的不匹配,以及云算力资源池的平均有效利用率仅在 20% 左右,这在中小企业用云过程中尤为明显。在华为 Fellow、华为云首席架构师顾炯炯带队研发下的 Flexus 云服务器 X 实例(下文称“Flexus X 实例”),以创新的柔性计算为核心,有效提升了云算力资源的利用率,显著优化了企业的上云成本,甚至旗帜鲜明的提出“柔性计算,向云计算至少再要30%效率”。那么,Flexus 云服务凭什么扛起助力中小企业数字化转型的“大旗”?为了得到这个问题的答案,InfoQ 对顾炯炯进行了专访。

1 云算力利用率低,Flexus X 实例实现全链路性能升级

想要解决中小企业用云困境,首先我们要看到问题的根因。所以云算力利用率低的根因是什么?

首先,弹性计算模式下,云算力资源的需求和供给往往并不能很好地得到匹配——企业云用户的应用负载及高阶云服务作为云算力资源的需求方,对云算力实例各维度(CPU、内存、存储 IO、网络吞吐等)的规格需求是高度灵活和多样化,并且随时间动态变化的,而云服务商作为云算力的供给方,其云算力供给则是预定义的一系列固定大小规格(2U4G、8U16G、16U32G 等)的虚机或容器实例,为保障云算力资源实例内应用负载及高阶云服务的性能 SLA,只能选择保守的资源过量配置。而为缓解云上算力资源浪费问题提出的 CPU 超分机制,对于主机内重载应用聚集的场景,固定超分比会导致应用性能 SLA 无法得到有效保障,对于主机内轻载应用居多的场景下,则可能仍因超分比不足仍然存在较大算力资源浪费。

其次,相比可超分的 CPU 算力,内存算力是无法超分的,导致内存维度可能先于 CPU 维度成为算力利用率提升的瓶颈。对于面向大颗粒应用负载(Web/ 移动 App 服务端、大数据分析、编译构建、大模型训推等)的云算力水平弹性伸缩场景,虽然云算力实例的数量可以跟随应用负载的业务并发量的冲高及回落动态申请和释放,从而有效减少云算力的浪费;然而,由于云算力的发放速度普遍滞后于业务并发量的变化波动速度,因此对于业务并发量高峰和低谷呈现不规则特征的大颗粒应用负载,通常选择采用基于人工预估的保守经验值(最大峰值)进行云算力资源的预热发放,由此导致了依然存在大量的云算力浪费。

面对以上这些企业多样化需求,华为云推出了五年磨一剑的下一代云服务器——华为云 Flexus 云服务器 X 实例。

作为华为云 “柔性算力” 概念落地的首款产品,Flexus X 实例相较于传统弹性云服务器最大的变化在于与应用需求匹配的精细化资源规格定义、更加一站式简单易用以及极致的性价比和品价比保障。

为了确保 Flexus X 实例在性能和用户体验上持续实现“性能倍增”和“体验跃级”,研发团队采取了一系列措施:

  • 通过量体裁衣的精细化自定义规格和迁移服务的预画像能力,帮助用户选择匹配其应用性能的峰值规格,避免资源浪费;

  • CPU 资源智能动态超分,根据系统实际负载持续动态调整 CPU 资源超分比,在保障业务性能的基础上进行合理超分;

  • 基于 AI 和数据驱动的黑盒式 QoS 劣化检测,真正从应用性能端到端体验的视角做到全覆盖检测,确保应用性能的稳定;

  • 柔性内存基于内存精细化画像以及异步或同步的内存页回收机制,进行安全的内存复用,避免内存成为系统整体利用率提升的瓶颈;

  • 基于 AI 和数据驱动的智能水平伸缩,替代固定阈值的水平伸缩,大幅降低集群资源的浪费。

Flexus 云服务与市场上其他同类产品最大的差异化竞争力体现在,首次将 “AI 和数据驱动” 的理念引入到云资源调度领域,将云算力的供给分配从 “计划经济” 模式转变为 “市场经济模式”。依据应用负载对算力资源需求的精确观测与画像洞察,结合一系列的 AI 模型及算法的加持,实现多租、多应用负载的算力实例在共享的云算力资源池内实现量体裁衣的资源分配、智能动态超分以及智能水平伸缩,达成极致的空分复用与时分算力,从而在根本机理上解决了云算力资源利用率低的问题,将公有云算力资源池的有效利用率从平均 20% 提升到 40%+,将企业上云成本优化 30% - 50%。

在 Flexus X 实例已在全球各 Region 全面上线后,为了应对更广泛的应用负载复杂组合和更大部署规模的挑战,华为云压强投入了包括 2012 实验室、华为云计算服务产品线等多个核心研发团队,通过紧密、高效的合作,持续保障产品化落地工程,快速优化并改进 “AI 与数据驱动的极致时空复用” 系统与算法,以保障 Flexus X 实例相比友商持续领先的 “品价比” 竞争力。

2 Flexus X 实例打破传统规格限制,提升资源利用率

众所周知,传统弹性云服务器产品的 Flavor 规格中,CPU 和内存基本是 1 比 2 的 n 次方的固定配比,但匹配应用性能的各维度的资源需求并不会遵循这样一个固定配比。为了不影响应用的性能,用户一般会向上选择一个比较大的规格,这样就会导致资源的浪费,进而增加用户上云成本。

而 Flexus X 实例的 Flavor 规格打破了传统弹性云服务器 Flavor 规格中 CPU 和内存的固定配比,提供了近 100 款精细化的规格,包括 2:5、3:7 等业界特殊规格,最高可提供 6 核 2G 这种 CPU 内存配比为 3:1 的、业界独有的 Flavor 规格。

同时,为了简化用户规格选择的复杂度,Flexus X 实例定义了一个标准的性能数据模型以及预画像算法,用户可基于此算法进行离线预画像,或者针对自动迁移上华为云的场景。此外,Flexus X 实例在迁移云服务 Mgc 中预置了预画像的功能,可以根据用户源端(比如第三方云)应用云主机实例的实际 CPU,内存等资源利用率的采样,通过峰值利用率 + 合适的资源预留帮助用户推荐匹配其应用性能的 X 实例规格,可在保障应用性能的基础上,帮助用户优化上云成本。

传统的基于固定超分比的 CPU 复用,对主机内应用的负载忙闲情况缺乏有效洞察,“一刀切”的配置,导致繁忙主机资源争抢严重,空闲主机资源利用不足。Flexus X 实例的智能 CPU 动态复用,则利用实例的监控数据对实例的资源使用情况进行画像和概率建模,再基于中心极限定理,计算出主机内实例叠加资源用量的概率分布,从而可以在一定的置信度下,评估主机达到的最大资源用量。那么主机上已分配的资源和评估的最大资源之间的差值,则是可以安全复用的部分。智能 CPU 动态复用能够将主机的 CPU 资源争抢控制在很小的概率范围内,实现在保障实例应用性能的前提下提升主机的 CPU 利用率。

在柔性内存方面,为实现安全的内存超分,Flexus X 采用实例的历史监控数据,对实例进行内存画像,从而合理评估主机的可复用内存资源,避免主机上实例内存争抢导致 OOM。在内存回收机制上,对第三方 OS 采用异步通知的内存页回收,而对于搭载 HCE OS 的云主机及云原生应用,则采用同步的内存页通知和回收。

作为兜底措施,柔性内存还会持续监控主机的内存用量,当主机的内存用量达到阈值时,提前触发热迁移将部分实例迁出主机,以缓解主机的内存压力。对于上层应用提供配合的场合,还可以实施业务协同的内存垂直伸缩。另外值得一提的是,若应用主动发起内存的伸缩请求,主机的剩余内存若不满足扩容需求,在触发热迁移的同时,通知应用等待直至内存就绪。上层应用和主机的这一配合,能够有效避免主机内存 OOM,实现安全的内存动态超分。

此外,Flexus X 实例使能基于应用负载性能特征识别的性能 QoS 劣化感知,检测准确率提升 20%,可精确识别邻居干扰带来的劣化,覆盖 L3 Cache 争抢检测。

Flexus X 实例的黑盒式性能 QoS 模型基于 Transformer 的多头注意力机制,以实例运行过程中实例级和主机级的资源消耗和性能测量相关内核指标作为输入,实时推理得出实例的 QoS 劣化分数。相比于传统基于资源用量阈值和启发式判断规则的 QoS 劣化检测,QoS 模型能够从实例的内核指标中挖掘其高维应用特征,并通过深度神经网络建立与其 QoS 劣化的关系,从而更精确地识别主机邻居干扰导致的实例 QoS 劣化,并覆盖各种共享资源争抢场景。

为训练一个具备普适性的 QoS 模型,Flexus X 实例采用了有监督和自督学习相结合的方法。对于未知应用,模型可以将其特征映射至高维特征空间,通过与已知应用类型的抽象特征的距离关系可以确认与其相似的应用类型,并根据空间距离和模型参数等非线性映射关系准确评估出其对应的 QoS 劣化分数,此举提升了模型的泛化性。要知道,准确的实例 QoS 劣化识别能够指导调度引擎进行及时的二次迁移,以消除邻居干扰,保障应用稳定运行。

3 Flexus X 实例创新资源管理,降低运营成本

操作系统作为衔接应用和硬件的基础软件,如何调整系统的参数配置,充分发挥软硬件能力以使业务性能达到最优,对用户至关重要。然而由于操作系统参数个数庞大 (7000+ 参数) 以及应用形态千差万别,因此参数调优的挑战非常大。为了应对这挑战,华为欧拉操作系统 (HCE) 推出了 A-Tune 这个操作系统级的智慧大脑,它通过使用 AI 技术,对业务场景建立精准的系统画像,感知并推理出业务特征,进而做出决策,匹配并推荐最佳的系统参数配置组合,使业务处于最佳运行状态。

Flexus X 实例一键式应用加速针对 HCE Guest 的典型应用,自动寻优系统参数。以 Web 业务场景为例,SSL/TLS 加解密的过程对于 CPU 计算能力的消耗相对较高,对于 Web 每次的数据交互都要进行建链,也就意味着每一次的数据传输都要进行 RSA 加解密,CPU 的计算能力决定了 Web 服务器的处理性能。基于 SSL/TLS 的加解密任务,消耗 CPU 计算能力在 Web 服务中占比高达 80%。A-Tune 通过感知 Web 业务特征,自动将加解密计算卸载到鲲鹏芯片的加速器中,从而降低 CPU 使用消耗,优化后 Web 服务端处理性能提升 200%,对比其他处理器的吞吐量提升显著。

同时,Flexus X 实例可以基于 iTransformer 架构的 AI 预测算法和数据驱动的算力集群资源水平伸缩替代固定阈值的水平伸缩,资源消耗平均减少 30%+。Flexus X 实例根据资源对象 (如 X 实例集群) 的历史用量时序数据(如 CPU,内存)构造基于 iTransformer 架构的 MOE 预测模型,并通过预测未来时间段内的实际需求量指导资源载体(如 X 实例)数量的动态扩缩。iTansformer 架构将各维度的时间序列视为独立的 Token,通过自注意力机制学习多变量相关性,并利用层归一化和前馈网络模块捕获时间序列全局表达方法。在资源容量时序预测中,还需重点解决 3 大问题:

  • 资源扩容的时间提前量: 时间提前量取决于扩容的资源量,API 的流量限制等因素;

  • 资源碎片占比问题:碎片比直接影响了扩容的资源总量;

  • 历史未有的突发需求量:突发陡增的资源需求则直接影响用户体验。

Flexus MOE 模型挖掘融合历史数据信息和专家知识以及响应式兜低机制有效解决上述问题,使得资源容量水平扩缩容更智能更透明更高效。据了解,在华为公司工程构建方面,该容量预测能力已经上线。以光产品线为例,单天总构建资源需求量达 8 万核。原静态预留方案无资源流转和共享能力,导致超 40% 的空闲资源,造成严重资源浪费。而对接该容量预测能力后,在带来了 30% 以上的资源节省的同时,高效的资源共享也保证了更好的用户体验。

另外非常值得一提的是,Flexus X 实例采用两步制计费,可以切实地帮助用户降低上云成本。Flexus X 实例基于资源规格和利用率的双因子计费,参考电力行业的两部制电价,Flexus X 实例提供了基于峰值规格 + 真实用量的两部制计费能力,即用户使用 Flexus X 实例的费用由两部分组成:

  • 由用户选择的实例峰值规格决定,峰值规格越大费用越高,只要实例开机,就会固定收取费用;

  • 由用户购买实例的真实资源利用率决定,利用率越高费用越高;

从用户的整体费用来看,第一部分费用仅占整体费用很小的比例 (比如 30% 左右),它主要用来兼顾云厂商的基础运营成本。用户所支付的大部分费用主要受用户业务的实际用量的影响,真正做到用多少付多少费用,大幅规避了云上的资源浪费。

本着“自己造的降落伞自己先跳”的原则,Flexus X 实例在面向华为云对外发布前,已在华为集团内部各产品线的研发编译构建业务,以及华为终端云的云空间、消费服务、云眼平台等相关业务进行了百万核规模的应用验证,通过 Flexus X 实例的柔性算力规格随心配、负载动态画像以及集群容量 AI 预测等关键特性和能力,在保障研发编译构建及终端云业务性能 SLA 体验的前提下,帮助为华为公司带来了超过 30% 的算力资源节省。

对于中小企业而言,Flexus X 实例提供了独特的价值。它以经济型的价格提供了近乎旗舰级的性能,实现了跃级体验。例如,基础模式(超分实例)下 GeekBench 跑分可达业界同规格独享型实例的 1.6 倍,性能模式(独享实例)下 GeekBench 跑分可以跃级超过业界旗舰级 C6/S5 实例 20% 之多,与业界最新旗舰级实例 C7/S6 持平,且性能 SLA 和可靠性 SLA 与旗舰型实例保持一致,但定价至少便宜 20%。此外,Flexus X 实例上自建 MySQL 等关键业务应用,其性能最高可达友商同规格独享型实例的 6 倍,长时运行均值可达 2 倍。

在实际应用场景中,Flexus X 实例也有许多成功案例。例如,在企业建站和小程序后端场景中,它能满足性价比的核心诉求,支持与 AS 配合实现快速伸缩,应对流量洪峰;在数据库中间件场景中,能保障性价比和性能,避免卡顿影响核心业务;在游戏服务器和电商直播场景中,能在保证性价比的同时,确保性能稳定,避免卡顿影响用户体验。

4 Flexus 云服务的未来:持续以技术创新推动云算力优化

任何技术产品的发展,追求根本,其实都是受“企业技术领导力”的驱使。对于华为来说,任何一个有愿景、有追求的主航道业务,特别是当业务产品发展到一定成熟度之后,其规划演进必须从客户需求单轮驱动走向客户需求与技术创新双轮驱动。华为云作为高度重视开源开放的生态型产业,非常注重构建自己的“技术领导力”,他们持续通过架构和技术的颠覆式创新,满足客户的根本诉求与核心痛点,树立自身在业界的“技术领导力”,并开拓新的市场机会及产业空间。

华为云始终秉承和坚持积极引领架构与技术创新的策略,为差异化竞争力构筑发挥了重要作用。对于 Flexus X 实例来说,其技术内核的 “柔性计算” 创新架构与技术正是在这种理念的指导下发展起来的。以追求 “极致品价比” 为根本出发点,团队通过智能动态超分机制、AI 和数据驱动的黑盒式 QoS 模型以及智能水平伸缩等措施,实现了云算力性价比的可持续倍增与跃级,这些技术创新不仅提升了 Flexus X 实例的性能和用户体验,也是确保 Flexus 云服务在市场中具有高性价比的直接原因。

对于 Flexus X 实例背后的“柔性计算”架构与技术创新,虽然表象上来看是技术创新的驱动结果,但实际上依然还是会回归到客户需求驱动的这个“根源驱动力”上来。华为云“柔性计算”技术创新理念的提出和落地,首次帮助业界认识到云算力资源利用率及成本优化的需求基线完全有可能被重新定义,并由此加速引领业界云厂家进入云算力性价比效率极致优化、真正像用水和用电一样消费 CPU 通用算力及 GPU/NPUAI 加速器算力,所有业务应用与高阶服务均实现彻底普适化 Serverless 演进的“云原生新纪元”。

据顾炯炯表示,随着全球企业用户对云算力需求的不断增长,Flexus X 实例将致力于满足用户对云算力资源利用率及成本优化的更高要求。同时,Flexus X 实例将继续拓展其应用场景,为更多行业的企业提供优质的云计算服务,助力企业实现数字化转型。

在华为 828 营销季中,Flexus 云服务广受目前企业关注,它集华为云众多创新技术于一身,以经济的价格带来了旗舰级的体验。大家可以持续关注并体验 Flexus 云服务的卓越性能,感受其在计算、存储、网络等方面的优势。相信 Flexus 云服务在未来有一定能为用户带来更高效、更低成本的数字化转型解决方案,推动企业在云计算时代取得更大的发展。

InfoQ
为一线互联网公司核心技术人员提供优质内容。科技圈的观察者,前沿技术的传播者。
 最新文章