在我们之前关于 VxRack 节点回顾的第一部分,我们介绍了部署选项、主要管理界面概述以及来自 VCE(EMC 的融合平台部门)的全闪存性能节点背后的硬件。 在这部分审查中,我们将了解双层 SAN 配置中的 VxRack 节点,以及它在我们的 MySQL Sysbench 工作负载下的表现。 随着工作负载强度和容量足迹的增加,我们将 ScaleIO 和底层硬件压至 99.2% 的容量以评估性能。 我们的目标是衡量节点在提供高速事务性能(包括吞吐量和延迟)方面的性能潜力,以及在我们的虚拟化环境中不断要求的工作负载规模。
在我们之前关于 VxRack 节点回顾的第一部分,我们介绍了部署选项、主要管理界面概述以及来自 VCE(EMC 的融合平台部门)的全闪存性能节点背后的硬件。 在这部分审查中,我们将了解双层 SAN 配置中的 VxRack 节点,以及它在我们的 MySQL Sysbench 工作负载下的表现。 随着工作负载强度和容量足迹的增加,我们将 ScaleIO 和底层硬件压至 99.2% 的容量以评估性能。 我们的目标是衡量节点在提供高速事务性能(包括吞吐量和延迟)方面的性能潜力,以及在我们的虚拟化环境中不断要求的工作负载规模。
VCE VxRack 节点(性能计算全闪存 PF100)规格
- 机箱 – 节点数:2U-4 节点
- 每个节点的处理器:双 Intel E5-2680 V3、12c、2.5GHz
- 芯片组:Intel 610
- 每个节点 DDR4 内存:512GB (16x 32GB)
- 每个节点的嵌入式 NIC:双 1 Gbps 以太网端口 + 1 个 10/100 管理端口
- 每个节点的 RAID 控制器:1 个 LSI 3008
- 每个节点的 SSD:4.8TB(6 个 2.5 英寸 800GB eMLC)
- 每个节点的 SATADOM:32GBSLC
- 每个节点 10GbE 端口:4 个 10Gbps 端口 SFP+
- 电源:双 1600W 白金 PSU AC
- 路由器:Cisco Nexus C3164Q-40GE
Dell PowerEdge R730 虚拟化 MySQL 4-8 节点集群
- 5-2690 个 Intel E3-249 v2.6 CPU,用于集群中的 12GHz(每个节点两个,30GHz,XNUMX 核,XNUMXMB 缓存)
- 1-2TB RAM(每个节点 256GB,16GB x 16 DDR4,每个 CPU 128GB)
- SD 卡引导 (Lexar 16GB)
- 4-8 个 Mellanox ConnectX-3 InfiniBand 适配器(用于 vMotion 和 VM 网络的 vSwitch)
- 4-8 倍 Emulex 16GB 双端口 FC HBA
- 4-8 倍 Emulex 10GbE 双端口网卡
- VMware ESXi vSphere 6.0 / Enterprise Plus 8-CPU
- 10GbE 交换硬件
- 前端端口:Mellanox SX1036 10/40GbE 交换机
- 后端端口:Cisco Nexus 3164 10/40GbE 交换机
系统性能
每 系统平台 VM 配置了三个虚拟磁盘,一个用于引导 (~92GB),一个用于预构建数据库 (~447GB),第三个用于测试中的数据库 (270GB)。 在之前的测试中,我们为数据库卷分配了 400GB(253GB 数据库大小),尽管为了将额外的 VM 打包到 VxRack 节点上,我们缩小了该分配以腾出更多空间。 从系统资源的角度来看,我们为每个虚拟机配置了 16 个 vCPU、60GB DRAM 并利用了 LSI Logic SAS SCSI 控制器。 负载生成系统是 戴尔 R730 服务器; 在本次审查中,我们的范围从四到八个不等,每个 4VM 组扩展服务器。
Sysbench 测试配置(每个虚拟机)
- CentOS 6.3 64 位
- 存储空间:1TB,已使用 800GB
- Percona XtraDB 5.5.30-rel30.1
- 数据库表:100
- 数据库大小:10,000,000
- 数据库线程:32
- 内存缓冲区:24GB
- 测试时长:3 小时
- 2 小时预处理 32 个线程
- 1 小时 32 个线程
使用 4 个虚拟机时,VxRack 节点总共发布了近 4,000 笔交易,略低于 XIO ISE-860 SAN 存储还配置了全闪存,比混合 Nutanix 60 节点配置快约 4%。 所有 VxRack 节点的性能几乎相同,每个节点提供大约 1,000 个事务。 随着工作负载规模扩大,ScaleIO 真正开始脱颖而出。 在 8 个虚拟机上,ScaleIO 缩小了与 XIO ISE 860 的差距,性能跃升至略高于 6,400TPS。 在 12VMs 时,它以 7,488TPS 的速度领先数百个。 这是真正有趣的地方。 我们已经在其他系统上测试了 12-16VM 负载,但这是总体性能通常趋于平稳并逐渐下降的地方。 在 16 个 VM 时,我们已经达到 XIO 可以有效交付的上限,但 ScaleIO 继续前进,获得 15% 的收益,测得超过 9,500TPS。 将其增加到 20 个 VM,仍然没有放缓的迹象,现在 ScaleIO 测量超过 12,000TPS。 又添加了四个 VM,再次打破记录 ScaleIO 在 13,800 个 VM 下测得超过 24TPS。 跃升至 28 个虚拟机,ScaleIO 毫不费力地运行,现在测得 15,641TPS。 取消容量限制后,ScaleIO 使用 99.2 个虚拟机将利用率提高到 32%,当我们最终认输时,集群的性能测得超过 17,300TPS。
这里的主要经验是,VxNodes 在每一步都提高了性能,即使在满负荷时也很少失去动力。 在容量用完之前,许多其他 SAN 会因 I/O 瓶颈而崩溃,此时工作负载会赶上硬件的能力。 除了令人难以置信的吞吐量之外,另一个有趣的故事是 ScaleIO 如何很好地保持应用程序工作负载延迟。
通常在查看存储阵列时,如果您在某个时候选择了繁重的工作负载,您会看到性能呈钟形曲线。 性能开始时会很慢,在中间某处达到峰值,然后性能会以快速增加的延迟为代价逐渐下降。 我们从未在 ScaleIO 中发现这一点,即使在 99.2% 的容量利用率下也是如此。 当我们的工作负载在 4-8 个 VM 范围内开始时,ScaleIO 的平均 MySQL 延迟从 32 毫秒跃升至 39.9 毫秒。 与分别测得 860 毫秒和 29 毫秒的 X-IO ISE 39 相比,VxRack 平台的初始响应曲线略高。 在 12-32VM 的范围内,虽然潮流发生了逆转,但 ScaleIO 提供了令人难以置信的低且平坦的 MySQL 延迟。 12 个虚拟机和 32 个虚拟机之间的差异不到 8 毫秒。
通过第 99 个百分位延迟视图将我们的注意力转移到峰值延迟配置文件,ScaleIO 提供了应用程序工程师或 Web 规模提供商所希望的最佳配置文件之一。 在不断增加的工作负载强度下,ScaleIO 保持冷静,不会让峰值应用程序响应时间过快,即使是在我们向其施加的最高工作负载强度下也是如此。 这对客户来说意味着,即使在高峰或异常高负载条件下,ScaleIO 平台也能够保持冷静并始终如一地交付内容; 没有滞后。
结语
当我们在由 ScaleIO 提供支持的 EMC VxRack 节点上结束我们的第一个性能部分时,我们不禁对所提供的性能水平感到震惊。 ScaleIO 成功成为少数几个在我们的扩展 MySQL 测试的所有领域中都表现出色的平台之一。 首先,吞吐量是惊人的,以令人难以置信的宽幅打破记录……即使是在接近满负荷的情况下。 其次,在不断增加的测试环境中,应用程序延迟几乎保持不变。 第三,即使在应用程序负载不断上升的情况下,ScaleIO 也设法控制峰值延迟,这在网络规模环境中非常重要,在这种环境中,如果响应时间过长,需求波动可能会导致其他应用程序受到影响。
当然,很容易说 ScaleIO 节点表现出色是因为它们是全闪存的。 正如数字所示,系统可以轻松应对满负荷工作负载,这是极少数闪存阵列可以做到的,同时还能控制延迟。 还值得注意的是,第一次性能评估突出了我们在第 1 部分中确定的 ScaleIO 的灵活性。它可以作为 SAN 或超融合部署在您喜欢的任何设备上,作为各种风格的 VxRack 节点使用,或者作为VCE VxRack System 1000 系列的工程解决方案。
EMC VxRack 节点评论:概述
由 ScaleIO 提供支持的 EMC VxRack 节点:SQL Server 性能评估(2 层)
由 ScaleIO 提供支持的 EMC VxRack 节点:综合性能评估(2 层)
EMC VxRack Node Powered By ScaleIO 审查:综合性能审查 (HCI)
由 ScaleIO 提供支持的 EMC VxRack 节点:SQL Server 性能评估 (HCI)
由 ScaleIO 提供支持的 EMC VxRack 节点:VMmark 性能评估 (HCI)