“英特尔革命性的英特尔® 傲腾™ 持久内存解决方案不仅为ZStack 节省了大量的研发生产运维开支,以更低的成本提供了更多的内存资源和更多的云主机实例,加速了产品的开发测试,产品能够以更快的速度迭代,同时英特尔® 傲腾™ 持久内存解决方案本身也可以作为方案输出到我们的客户,为产品的输出形态提供了更大的空间和可能。”
何 爽
ZStack产品测试部总经理
为了提升资源调度的敏捷性、降低开发周期,并控制总体拥有成本 (TCO),企业的开发测试负载正在逐步向云平台迁移。但与此同时,大规模自动化测试用例会显著加大 CPU和内存等资源的消耗。这也意味着云服务提供商往往需要在大规模内存池的构建上耗费大量成本,寻找更加经济的内存解决方案因此成为重要发展方向。
作为一家自主创新、专注产品化的云计算公司,ZStack(云轴科技)依托ZStack Cloud虚拟化技术,搭建了 ZStack DevOps 自动化测试平台。该平台将服务资源池化,能够充分利用硬件资源,支持按需分配和弹性计算;并依靠嵌套虚拟化编排构建模拟各种硬件场景,实现了大规模的自动化测试用例集的执行,支持多种IT基础架构的管理与自动化交付。
为了进一步优化 ZStack DevOps 自动化测试平台的经济性,提供更低成本的内存池建设选项,ZStack与英特尔合作,采用英特尔® 傲腾™ 持久内存替代高成本的 DRAM 内存,在多节点测试中实现了最高达 53% 的成本节约1,将每节点的虚拟内存系统 (VMs) 实例数量提升了33%2,证明了英特尔® 傲腾™ 持久内存在大规模内存集应用中的巨大优势。
背景与挑战:
大规模自动化测试的内存瓶颈
伴随着企业业务和服务的拓展,IT环境对资源规模、运维管理水平和应用交付速度都有进一步提升的迫切需求。传统的开发测试虚拟化平台遇到诸多挑战,如IT 资源无法统一调度,缺乏对IT 资源生命周期的有效管理;无法有效制约IT 资源利用率低下及成本难以量化的问题;环境部署依赖手动安装,耗时费力易出错导致交付过程长;系统维护升级窗口时间长,高可用实现成本高;无法按需进行IT资源配额管理等。
在此背景下,基于DevOps云平台的自动化测试方案得到了快速应用。该方案不仅能够通过DevOps 集成的自动化工具的应用,更经济地验证软件质量,缩短项目周期,减少修复缺陷成本,还能够通过云平台屏蔽底层异构硬件和虚拟化软件的复杂性,实现多种IT基础架构的管理与自动化交付。
ZStack DevOps自动化测试平台依靠嵌套虚拟化编排构建模拟各种硬件场景,实现大规模的自动化测试用例集的执行。由于整个集合的测试用例规模在几万个,运行所需要消耗的硬件资源非常庞大,通常需要40台服务器同时运行10小时才能完成一个周期的测试,测试周期会由于硬件资源的限制而变得非常长。
在DevOps自动化测试平台中,内存是非常重要的资源,大量测试用例平均需要分配 GB 级别的内存。当测试用例规模达到上万的时候,所需要的内存池容量将是海量的,这无疑会带来巨大的TCO压力,也会成为扩展测试规模和升测试速度的重要瓶颈。
在相当长的一段时间内,ZStack都使用的是DRAM内存来搭建内存池,但是这种方式却存在如下挑战:
DRAM内存价格较高,考虑到单个服务器节点部署的内存常常高达1TB,因此内存成本成为服务器总体成本的重要组成部分。
当前,DRAM内存容量普遍低于32GB,少量64GB内存的价格居高不下,受限于单个服务器节点中的内存插槽数量,企业难以进一步提升服务器中的内存总量。
为了获得更大的内存池,企业不得不将重点放在增加服务器节点上,这会带来额外的服务器采购、空间、运维等方面的成本。
解决方案:
使用英特尔®傲腾™持久内存替换 DRAM 内存
为了在 ZStack DevOps自动化测试平台中寻求更加经济的内存解决方案,ZStack与英特尔合作,使用英特尔® 傲腾™ 持久内存替换服务器中部署的部分 DRAM 内存。
英特尔® 傲腾™ 持久内存提供了行业领先的高吞吐率、低延时、高服务质量和超高耐用性,可以提供接近内存的延迟,并支持高速缓存和超快存储,能够有效对应用进行加速。英特尔® 傲腾™ 持久内存的单设备最大容量达到512GB,远超DRAM内存的128GB,从而可以支持单台服务器轻松实现更大的内存总量。与此同时,英特尔® 傲腾™ 持久内存的单位容量价格要远低于DRAM内存,这些特性使得ZStack能够以更低的成本构建容量更高的内存池。
英特尔® 傲腾™ 持久内存提供了两种不同的操作模式:内存模式 (Memory Mode) 和应用直接访问模式 (App Direct Mode)。在内存模式中,它与普通的易失性(非持久性)系统存储器完全一样,但成本更低,能在保持系统预算的同时实现更高容量。在应用直接访问模式下,应用程序和操作系统会有两种可用的内存,系统将决定是从DRAM还是英特尔® 傲腾™ 持久内存中写入或读取数据,在此模式下,即使系统关闭电源,数据仍保留在内存中。在自动化测试实例中,ZStack使用了英特尔® 傲腾™ 持久内存的内存模式。
为了验证英特尔® 傲腾™ 持久内存所带来的成本节约效果,ZStack与英特尔分别针对单节点与6节点进行了测试。该测试系统的架构如图 1 所示,底层资源是包含各种服务器的硬件资源池,包含云主机资源池1000+,裸金属资源池200+;通过ZStack底层软件接口,ZStack的测试调度管理平台可以很好的对底层硬件各资源池进行调度。测试平台负责测试ZStack产品线,ZStack Mini产品线,ZStack多云管理等产品线,是 ZStack产品上市前质量保证基础。
图1:测试系统架构
单节点的测试配置如表 1 所示:
表 1:单节点测试配置
3种配置的单个测试实例成本 (Testing VMs/$) 数据如图 2 所示,相比DRAM方案,在性能相近的情况下,英特尔® 傲腾™ 持久内存方案能够将成本降低高达35%。
图2:英特尔® 傲腾™ 持久内存/ DRAM 方案成本对比(单节点)
随后,双方还进行了6个节点的测试,测试配置如表 2 所示。
表2:6节点测试配置
测试数据如图3 所示,在2小时内,英特尔® 傲腾™ 持久内存方案能够运行192个VM 实例3,比DRAM方案提升了高达33%。两种配置的单个测试实例成本(Testing VMs/$) 对比如图4所示,英特尔® 傲腾™ 持久内存方案比DRAM方案的成本降幅高达 53%4。
图3:英特尔® 傲腾™ 持久内存/ DRAM 方案 VM实例对比(6节点)
图4:英特尔® 傲腾™ 持久内存/ DRAM 方案成本对比(6节点)
两轮测试数据显示,在ZStack DevOps自动化测试平台的测试实例中,通过将DRAM 内存替换为英特尔® 傲腾™ 持久内存,能够实现非常明显的性能提升与成本降低效果:
英特尔®傲腾™ 持久内存的每容量成本显著低于DRAM内存,而且在性能上较为接近,在内存容量密集型应用中有着非常巨大的应用潜力。
与DRAM内存相比,英特尔® 傲腾™ 持久内存能够在单个服务器节点扩展更大的内存集,可帮助用户降低服务器节点的规模,进一步控制TCO。
英特尔®傲腾™持久内存有着较高的服务质量(QoS),在较高的负载下依然能够保证平稳的性能表现,这使得其在大规模用例中的性能与成本优势更加明显。
展望:
英特尔® 傲腾™ 持久内存为业务云化赋能
本系列测试证明,英特尔® 傲腾™ 持久内存能够帮助ZStack以更加经济的方式构建自动化测试基础设施,满足大规模测试用例对于硬件资源的苛刻要求,降低TCO挑战。除了自动化测试之外,ZStack还在验证英特尔® 傲腾™ 持久内存在更多场景下的应用潜力,以进一步发挥 ZStack平台在自动配置资源、快速部署应用等方面的优势。
得益于领先的性能和出色的成本优势,基于英特尔® 傲腾™ 持久内存的全新解决方案正在内存数据库等越来越多的场景落地生根,帮助越来越多的行业用户在降低TCO的同时提升性能。未来,英特尔将继续强化与生态伙伴的合作,共同验证前沿硬件及软件技术在不同场景中的落地与优化,推动行业的数字化转型。