引言:

  • “云计算、大数据、AI 正在形成一个正向循环的体系。而云平台、大数据平台和 AI 平台的一体化,再结合 SDN 云网络能力,将顺应智慧城市这样巨量市场的启动,带来新一轮基于开源技术的信息产业快速上升期。”

  • 浪潮集团副总裁张东

行业背景:行业云快速发展,开源成为重要趋势

作为一种面向政府、金融、制造、医疗等行业应用的云交付方式,行业云通过在基础设施、平台以及应用等层面进行量身定制,提供了更具备垂直化、定制化以及数据整合化的云服务,并成为中国云市场的重要力量。数据统计显示,2018 年中国私有云市场规模达到 512.4 亿元,同比增长 27.0%,其中政务云、制造云、金融云三大行业云将占据超过 60% 的市场份额1

对于政府、金融、医疗等行业私有云的构建而言,开源技术的出现能够帮助行业云实现 IT 系统的敏捷、高效、可扩展以及可自控的管理需求,并帮助行业云更好地控制 IT 建设及维护成本。因此,探索并运用开源技术已经成为当前行业云的一个重要方向。

以 OpenStack* 为代表的开源技术在企业数字化转型中的重要作用得到普遍认可,IDC 发布的《2018 年中国 SDC(软件定义计算)软件市场报告》显示,预计 2018-2023 年,国内 OpenStack 市场将以 25.7% 的复合年增长率增长,收入将达到 5.38 亿美元。在开源云计算领域,随着 OpenStack 从测试环境向生产环境的渗透加速,大规模集群管理、多云数据中心管理、稳定性、性能以及效率不仅已成为越来越多大型企业与公司迫切而实际的需求,同时也成为检验云计算厂商 OpenStack 解决方案设计开发和实施能力的标尺。

业务挑战:面向大规模行业云,优化数据中心基础设施与管理

当前,面向政府、金融、教育、医疗等行业的行业云普遍向大规模方向发展。在行业云市场容量快速增长的同时,还将越来越多的组织纳入其中,覆盖整个省市、乃至实现 “全国一盘棋” 的行业云越来越多。在此背景下,很多行业云达到了单一集群规模超过 1000 节点、总规模近数千节点的超大规模。

行业云规模的扩大对于数据中心的建设与运营提出了严峻考验。在运营层面,超大规模的行业云平台会大大增加了 IaaS 层资源运维管理复杂度。此外,OpenStack 逐渐进入组织的关键生产系统之中,这就给开源云的交付速度和质量要求提出了严格的要求,如果无法提供资源的智能化管理和服务的自动化交付,将大大影响其开源云策略的实施。因此,越来越多的企业渴望通过工具与流程的可视化、增强合规性并确保应用性能等手段,以解决多云环境的复杂性、安全性、效率等问题。

作为中国领先的云计算、大数据服务商,浪潮* 发布了基于开源 OpenStack,结合云海系列产品打造的云海•云数据中心操作系统*(InCloud OpenStack,ICOS)。ICOS 集虚拟化平台和云管理特性于一身,实现了云数据中心底层计算、存储、网络、安全等资源的统一调度管理,支持业务的动态变更,资源的智能管理和服务的自动化交付。基于大规模行业云的应用及运维特点,ICOS 在功能性、可靠性、安全性、支撑工具等方面进行了全面优化,全面接入 OpenStack 各领域核心组件,并根据实际需求自研了部分组件,弥补了 OpenStack 开源架构下各种模块与组件的不足。

在基础设施层面,动辄上千节点的大规模行业云对于性能与总体拥有成本(TCO)有着极高的要求。行业云基础设施需要提供超高的数据处理与存储性能,以满足关键应用的需求,并为数据管理、模型训练、模型部署等高负载应用提供支撑。同时, 大规模的行业云将千倍放大单节点的成本支出,因此,对于性能进行持续优化、并增强成本的控制能力至关重要。

解决方案:基于英特尔® 架构的大规模行业云性能优化

基于开源技术的大规模行业云对于基础设施的构建与优化提出了新的要求。首先,开源应用的快速增长带来了工作负载的提升,越来越高的开源技术堆栈对性能带来了极大的影响,在大规模行业云中,这种影响尤为突出;其次,敏捷基础设施成为重要趋势,需要在软件定义层面实现性能、QoS、TCO 的轻松调配;最后,基础设施也需要实现开放性,在利用开放社区成果的同时,贡献开源成果,打造活跃的开源生态。

作为本次解决方案的基础平台,浪潮 ICOS 云操作系统以业界主流的 OpenStack 平台为核心,融入浪潮对客户需求的深刻理解,针对 Nova(计算)、Cinder(块存储)、Swift(对象存储)、Neutron(网络)、Glance(镜像)、Ironic(裸金属)、Heat(资源编排)、Trove(数据库)等 OpenStack 核心组件进行了大量深度的优化和开发,推出了 In Cloud OpenStack Rocky 版本。

在大规模行业云应用中,用户需要卓越的性能和资源编排能力、以及优良的架构,以便更好地优化计算能力和存储能力,在任何一个层面对基础设施进行优化。英特尔® 架构可在开源环境下,提升对关键共享资源如处理器高速缓存和主内存的可视型和控制力,这些特性最终能实现更智能的编排、更高的资源利用率和服务等级,从而帮助客户应用全自动的、基于软件定义基础设施行业的云平台。

为了持续优化基于开源技术的大规模行业云的性能表现,浪潮与英特尔进行了合作,在基于英特尔® 架构的 200+ 节点的真实数据中心,进行部署和测试。测试主要围绕 3H 进行,包括高并发压力测试、网络/磁盘 IO 与 CPU/内存性能测试、稳定性与高可用测试等,为大规模行业云的部署做好铺垫工作。

云海 • 云数据中心操作系统(ICOS)架构

图 1. 云海 • 云数据中心操作系统(ICOS)架构

在硬件配置上,浪潮在部分测试里部署了针对开源云计算技术进行验证的第二代英特尔® 至强® 可扩展处理器、以及英特尔® 傲腾™ 数据中心级持久内存。其中,第二代英特尔® 至强® 可扩展处理器具备创新的技术特性与增强的性能,可以加速数据中心、企业和智能边缘计算环境中的人工智能推理工作负载,为大规模行业云提供了强大的性能支撑;英特尔® 傲腾™ 数据中心级持久内存提供了行业领先的高吞吐率、低延时、高服务质量和超高的耐用性,可以提供接近内存的延迟,并支持快速缓存和快速存储,对于降低大规模行业云的部署成本有着巨大的潜力。

控制平面实际验证

浪潮希望通过测试来验证 ICOS 在单一 Region 下,系统在各项典型功能指标上可以支撑的最大用户并发数,以及在该架构下的优化参数配置,以保障在大规模部署和高负载条件下云服务能高效、稳定、可靠运行。在第一次调优过程中,浪潮对于网络、内核、Haproxy 最大连接数及进程数、Ansible 配置文件、Mariadb 等进行了参数调优,保证了基于英特尔® 架构的 ICOS 成功部署。

紧接着浪潮与英特尔进行了后续的调优,发现在并发创建大量虚拟机的测试中,Neutron 会出现无法分配到 IP 的错误。经过双方工程师对相关源代码深入分析,发现社区解决 IP 冲突采用重试机制,当冲突后重试超过上限值后,将会分配 IP 失败, 而且重试机制还会导致 neutron server 压力瞬间暴增,影响 neutron server 的性能。双方工程师基于社区原有分配 IP 算法,引入 OpenStack Tooz 并设计了分布式锁解决方案,不仅彻底解决 IP 冲突导致分配 IP 失败的问题,还提高了 neutron server 并发创建 port 的性能,经过实际测试并发创建大规模虚拟机成功率达到 100%,平均耗时大幅降低。此方案已经作为 BP 提交到了社区,已经被 review +2,相信很快就会合入社区。

随后,浪潮与英特尔还验证了优化 Nova 对创建虚拟机参数。经过针对镜像并发创建虚拟机、从云硬盘并发创建虚拟机、并发创建虚拟机快照等方面的优化,基于英特尔® 架构的 ICOS 能够轻松应对大规模云主机创建的压力,在批量挂载、下载硬盘、镜像操作中都能提供稳定可靠的服务。

除了验证 ICOS 在单一 Region 下部署大规模节点部署能力,双方还利用特征提取、分类汇总以及定量定性分析法,确定了部署过程中的问题,并通过优化配置和完善部署结构,解决了操作系统、消息通信、数据库以及 ICOS 其他组件等问题,使其能够稳定运行。

数据平面实际验证

在云环境下,前端数据平面虚拟机承载业务应用的虚拟网络性能。由于业务应用由虚拟机承载,因此虚拟网络性能至关重要。同时,虚拟机运行在物理服务器之上,处理器和内存的性能直接决定着平台的计算能力,因此找出处理器、内存性能的边界及瓶颈对于后续的系统调优及资源管理至关重要。

浪潮与英特尔协作进行了前端数据平面网络性能、以及处理器与内存性能测试。在内存带宽测试中,双方采用了业界广为流行、具有良好的空间局部性的综合性内存带宽实际性能测量工具 STREAM,并通过 STREAM 工具从 “不同线程数下内存测试” 以及 “不同 CPU 核数和内存大小下内存测试” 两个维度进行测试影响内存带宽的因素。测试结果表明,在内存大小没有瓶颈的前提下,内存带宽与 vCPU 数量成线性相关,确保内存容量的充足,是提升内存带宽与 vCPU 数量的重要前提条件之一。

随后,双方选用 unixBench 测试工具测试了虚拟机的 vCPU 的性能,测试结果表明,CPU 性能与线程数成线性正相关,VM 的 CPU 性能与分配 vCPU 的个数成线性正相关。同时,浪潮与英特尔还从 HugePage、CPU 绑定(CPU Pinning)两个方面进行了调优对比,并最终发现,开启 CPU pinning 后的性能远优于关闭 CPU pinning 的 VM。

通过测试,双方验证了 ICOS 在大规模场景下,能够提供足够的性能和稳定性支撑。此外,在对于计算、存储、网络及内存有着更高要求的未来场景中,建议选用基于英特尔® 架构的更高性能的硬件满足客户的需求,同时提升大规模行业云的体验。

推动开放的开源社区生态

总体而言,基于开源技术的 ICOS 实现了控制平面和数据平面的全方位高可用,包括控制平面节点的 HA 增强、所有虚拟机的主机 HA 增强、虚拟机 HA 机制增强等。同时该版本在效率上实现显著提升,能够使用代码驱动实现程序化部署/升级,并支持自动化持续集成和验证工作,从而可以支持实现一天高达 500+ 节点的快速交付,不中断业务即可轻松在线扩展。

向开源社区反馈是本轮测试的一个重要环节,同时也是活跃开源生态的必要选择。针对在测试中遇到的问题,浪潮与英特尔进行了总结及修复,其中对批量创建虚拟机分配端口出现 IP 冲突的问题,进行了优化与修复,并将修改方案以新功能贡献数量(Completed Blueprints,BP)的形式提交到了社区,以提高社区项目功能的高可用性。目前,基于开源技术的 ICOS 部分 BP 已经合入,提高了平台的高可靠性、高效能、高性能及安全性。

效果:英特尔® 架构 + ICOS 充分优化大规模行业云

本次测试为 ICOS 基于英特尔® 架构大规模部署设计提供了经验,通过优化解决了相关的瓶颈,保证了 ICOS 的稳定性、可靠性、安全性,为将来大规模现场实施提供了策略及保障。测试也证明,英特尔® 架构可以充分满足 OpenStack 等开源云计算系统的基础设施构建需求,提供了优化的性能、敏捷性,并能够更高效地利用计算、存储、网络等资源,以更低的成本提升 VM 的密度。

在大规模行业云的部署实践中,英特尔® 架构在计算/存储架构、网络优化、智能加速和智能管理等方面进行了全方位的提升,可更好地满足大规模行业云对于负载的苛刻需求。同时,通过与软件定义基础设施的结合,该方案能够在软件定义层面实现性能、QoS、TCO 的轻松调配,实现行业云的敏捷构建。

展望未来,英特尔与浪潮将推出以英特尔® OpenSDI 解决方案为蓝本,针对大数据/AI 应用集成一体化进行优化的解决方案,满足大规模行业云的支撑需求,助力行业云加速发展。

第二代英特尔® 至强® 可扩展处理器

第二代英特尔® 至强® 可扩展处理器:

      ● 针对工作负载进行了全面优化,具备业界领先的性能

      ● 与上一代处理器相比,提供了增强的硬件虚拟化特性

      ● 实现卓越的资源利用效率和敏捷性

      ● 适用于要求苛刻的 I/O 密集型工作负载,有助于加快数据的变革性影响

浪潮在大规模行业云部署验证的部分测试中采用了第二代英特尔® 至强® 可扩展处理器。