从 SAS 过渡到 NVMe,看起来很容易,是不是更换个底盘就完了?这里面其实挺复杂的。具体怎么个复杂法,笔者将以下面这款产品入手为您介绍。
PowerMax简介
2018 年 5 月 1 日,戴尔易安在戴尔科技全球大会上推出基于全闪存架构的 PowerMax 存储系统,该系统将全面取代之前的 VMAX。这意味着后续戴尔易安高端存储系统将全部是全闪存架构。
PowerMax 存储阵列可以被视为历史悠久的 VMAX 产品家族的继任者,该产品家族的起源可追溯到 1990 年,之前的 VMAX 是 EMC 公司在被戴尔公司收购之前所推出的。
PowerMax 的命名与戴尔易安信服务器产品线的 PowerEdge 相呼应,形成统一的命名风格。PowerMax 内部的控制器也被命名为 PowerBrick(之前是 V-Brick),操作系统命名为 PowerMax 操作系统(之前为 HyperMatrix 操作系统)。
PowerBrick
之前 VMAX 的全闪存版本为 VMAX-AF,而 PowerMax 相比 VMAX 的区别在于:
❶ 后端由 SAS 体系结构全面替换为基于 PCIE 的 NVMe 体系结构,性能大幅提高。
❷ 引入机器学习来辅助性能分析、故障检测和日常运维,彰显智能。
❸ 增加了对重删(Deduplication)的支持,存储空间使用效率提升。
戴尔易安推出了两款 PowerMax 型号,分别为 2000 和 8000。其中 2000 可视为升级版的 VMAX250F, 8000 为升级版 VMAX 950F。PowerMax 使用 SFF8639 连接器的双端口 NVMe SSD,并同时支持 NVMe over Fabrics(NVMe-oF) 协议。
控制器节点 Brick 使用的 CPU 也是沿着 Intel 产品发展路线从 VMAX 250F/950F 的 Broadwells 升级到 Xeon E526xx v4,尽管最大 Core 数 576 没有发生变化,但 IOPS 从 950F 的 670 万上升到 8000 的 1000 万。
PowerMax 2000 能够提供高达 170 万的 IOPS 和 1PB 容量,可以扩展到 2 个 PowerBricks。PowerMax8000 能够传输高达 1000 万的 IOPS 和 4PB 容量,可扩展到 8 个 PowerBricks。
新增加的 Inline 重复数据删除功能,可以与现有的 Inline 压缩一起使用,可高达 5:1 的数据缩减率,支持灵活开关。最大有效容量与 250F 和 950F 的最大(1PB 和 4PB)保持一致,在 10U 的 PowerBrick 中支持从 13TB 开始起配。PowerMax 的机架密度是 VMAX 的 2 倍,能耗降低了 40%。
PowerMax 的运行软件将有两个版本组成:即 Essentials 和 Pro。Essentials 版本提供了 SnapVX,重删和 QoS 等特性,而 Pro 版本提供远程复制、PowerPath 和 SRM。
PowerMax 对 NVMe SCM 的支持将极大地减少阵列的延迟。使用 NVMe 闪存驱动器的 PowerMax 的响应时间比之前的 VMAX 减低 25%,而端到端 NVMe 和 SCM 的组合将使 PowerMax 的响应时间比 VMAX 快 50%。
PowerMax 操作系统使用机器学习、预测分析和模式识别等技术使得存储系统更加智能和自动化。在机器学习方面,PowerMax 操作系统可从设备上收集的性能和相关数据(包括阵列的实时数据),PowerMax 可以决定哪些数据或数据块可以存储在哪些存储层上,它通过利用超过 4000 万套部署数据集(存储)和 IO 读、写、Get 和 Put 等操作中变得更加智能。
说说从 SAS 到 NVMe 的过度
PowerMax 这次后端从 SAS 完全过渡到 PCI-E,这是个非常大的变化。这个过渡并非升级,而是完全抛弃换新的,一切都是新的。这也意味着之前在 SAS 方面的积累几乎作废。但是有一点可以保留,那就是 Enclosure Management 部分可以重用之前的框架。
如上图所示▲,在 SAS 体系下,SAS Controller 将整个 SAS 后端的一切都隐藏了起来,Host 端看得到的只有 SAS Controller 的地址空间,通过上层驱动一层层识别到后端的 SAS 设备。这种松耦合方式灵活,方便运维。比如 SAS 热插拔等处理都非常方便。
然而过渡到 PCI-E 之后,由于没有了 HBA Controller,所有 PCIE 设备都被直接暴露在地址空间中,热插拔是个很大问题,虽然目前热插拔已经逐步完善,但是仍有不少兼容性等边缘问题存在。
为此,人们自然会有个想法,就是继续使用 HBA 来屏蔽后端的 PCI-E 设备,但是要依然使用 NVMe 协议。所以自然想到了 NVMe-OF。存储系统控制器节点采用比如 40G 以太网卡或者 FC 卡,连接 JBOF 端的以太网 NIC,通过该 Target 端 NIC 识别到一系列 NVMe 硬盘。这个套路与 SAS 基本类似。但是性能一定不如原生 PCI-E,可能会与 SAS4 效果类似。
SAS4 下 x4 PHY 的速度已经可以达到单向 96Gb/s,相比之下,x2 的 PCI-E 通道总速率不过 16Gb/s。而且 SAS4 相比 SAS3 的一个很大提升则是支持基于时分复用的链路复用和全双工(目前仅 Microsemi SAS4 产品支持)。如果把 SAS SSD 的规格做高,配以目前 SCSI Multi-Queue 协议栈,也可以达到不错的性能。
print_r('点个好看吧!');
var_dump('点个好看吧!');
NSLog(@"点个好看吧!");
System.out.println("点个好看吧!");
console.log("点个好看吧!");
print("点个好看吧!");
printf("点个好看吧!\n");
cout << "点个好看吧!" << endl;
Console.WriteLine("点个好看吧!");
fmt.Println("点个好看吧!");
Response.Write("点个好看吧!");
alert("点个好看吧!")
echo "点个好看吧!"