请不要因为标题就妄下结论! 我们有有力的论据来支持它,我们已经尽可能紧凑地打包它们。 我们提请您注意一篇关于我们新存储系统的概念和操作原理的帖子,该帖子于 2020 年 XNUMX 月发布。
在我们看来,Dorado V6 存储系列的主要竞争优势在于标题中提到的性能和可靠性。 是的,是的,它是如此简单,但是我们设法实现这种“简单”的决定有哪些棘手和不那么棘手的决定,我们今天将讨论。
为了更好地释放新一代系统的潜力,我们将讨论模型系列的老代表(模型 8000、18000)。 除非另有说明,否则它们是注定的。
关于市场的几句话
为了更好地了解华为解决方案在市场上的地位,让我们转向一个行之有效的标准——”
2019 年,Gartner 在其研究中将上述两个领域合二为一——“主存储”。 结果,华为再次进入领导者象限,仅次于 IBM、Hitachi Vantara 和 Infinidat 等供应商。
为了完成这幅图,我们注意到 Gartner 收集了 80% 的数据用于美国市场的分析,这导致了对那些在美国有很好代表性的公司的明显偏见。 与此同时,面向欧洲和亚洲市场的供应商发现自己处于明显不利的地位。 尽管如此,去年华为产品在右上象限占据了应有的位置,根据 Gartner 的判断,“可以推荐使用”。
Dorado V6 的新功能
尤其是Dorado V6产品线,以入门级3000系列系统为代表,初期配备16个控制器,可横向扩展至1200个控制器、192个驱动器和8GB缓存。 此外,该系统还将配备外部光纤通道(16 / 32 / 1 Gb / s)和以太网(10 / 25 / 40 / 100 / XNUMX Gb / s)端口。
请注意,没有商业成功的协议的使用现在正在被逐步淘汰,因此一开始我们决定放弃对以太网光纤通道 (FCoE) 和 Infiniband (IB) 的支持。 它们将在以后的固件版本中添加。 对 NVMe over Fabric (NVMe-oF) 的支持在光纤通道之上开箱即用。 计划于 XNUMX 月发布的下一个固件计划支持 NVMe over Ethernet 模式。 在我们看来,上述设置足以满足大多数华为客户的需求。
文件访问在当前固件版本中不可用,并将出现在年底的下一个更新中。 假设在本机级别实现,由带有以太网端口的控制器本身实现,无需使用额外的设备。
Dorado V6 3000 系列型号与旧型号之间的主要区别在于它在后端支持一种协议 - SAS 3.0。 因此,那里的驱动器只能与命名接口一起使用。 从我们的角度来看,它提供的性能对于此类设备来说已经足够了。
Dorado V6 5000 和 6000 系列系统是中端解决方案。 它们也采用 2U 外形并配备两个控制器。 它们在性能、处理器数量、最大磁盘数量和高速缓存大小方面各不相同。 然而,在架构和工程方面,Dorado V6 5000 和 6000 是相同的,看起来也一样。
高端类包括Dorado V6 8000和18000系列系统,采用4U尺寸,默认采用独立架构,控制器和驱动器分开。 它们也可以配备最少两个控制器,尽管客户通常要求四个或更多。
Dorado V6 8000 扩展到 16 个控制器,Dorado V6 18000 扩展到 32 个。这些系统具有不同的处理器,具有不同的内核数和缓存大小。 同时,保留了工程解决方案的特性,就像在中端类模型中一样。
2U存储架通过RDMA连接,带宽100Gb/s。 较旧的Dorado V6后端也支持SAS 3.0,但更多的是以防带有该接口的SSD价格下降很多。 那么即使考虑到较低的生产率,它们的使用也将具有经济可行性。 目前,SAS 和 NVMe 接口的 SSD 之间的成本差异很小,我们不准备推荐这样的解决方案。
控制器内部
Dorado V6 控制器是在我们自己的元件基础上制造的。 没有来自英特尔的处理器,没有来自 Broadcom 的 ASIC。 因此,主板的每个组件以及主板本身都完全不受美国公司制裁压力相关风险的影响。 那些亲眼见过我们任何设备的人可能已经注意到徽标下方带有红色条纹的盾牌。 这意味着该产品不含美国成分。 这是华为的官方课程 - 过渡到自己生产的组件,或者在任何情况下,在不遵守美国政策的国家生产。
这是您可以在控制器板上看到的内容。
- 通用网络接口(海思1822芯片)负责连接光纤通道或以太网。
- 提供系统BMC芯片的远程接入,即海思1710,实现对系统的全功能远程控制和监控。 类似的也用于我们的服务器和其他解决方案中。
- 中央处理器,是华为公司生产的基于ARM架构的鲲鹏920芯片。 上图中显示的是他,尽管其他控制器可能具有不同的型号,具有不同的内核数量、不同的时钟速度等。一个控制器中的处理器数量也因型号而异。 例如,在较旧的 Dorado V6 系列中,一块板上有四个。
- SSD 控制器(海思 1812e 芯片),同时支持 SAS 和 NVMe 驱动器。 此外,华为自主生产SSD,但不自己生产NAND单元,更愿意以未切割硅片的形式从全球四大厂商采购。 华为自主生产的芯片进行切割、测试、封装,然后以自有品牌发布。
- 人工智能芯片是Ascend 310,默认情况下,控制器上没有它,而是通过单独的卡安装,占用了一个为网卡预留的插槽。 该芯片用于提供智能缓存行为、性能管理或去重和压缩过程。 所有这些任务都可以在中央处理器的帮助下解决,但 AI 芯片可以让你更高效地完成这件事。
单独介绍鲲鹏处理器
鲲鹏处理器是一个片上系统(SoC),除了计算单元外,还有加速各种进程的硬件模块,例如计算校验和或执行纠删码。 它还实现了对 SAS、以太网、DDR4(从六通道到八通道)等的硬件支持。所有这些都让华为能够打造出性能不逊于经典英特尔解决方案的存储控制器。
此外,基于 ARM 架构的专有解决方案使华为能够创建完整的服务器解决方案,并将其作为 x86 的替代方案提供给客户。
全新 Dorado V6 架构……
旧系列存储系统 Dorado V6 的内部架构由四个主要子域(工厂)表示。
第一个工厂是一个公共前端(负责与 SAN 工厂或主机通信的网络接口)。
第二个是一组控制器,每个控制器都可以通过 RDMA 协议“延伸”到任何前端网卡和相邻的“引擎”,这是一个有四个控制器的盒子,以及电源和冷却他们共同的单位。 现在高端级Dorado V6车型可以配备两个这样的“引擎”(分别是八个控制器)。
三厂负责后端,由RDMA 100G网卡组成。
最后,“硬件上”的第四工厂以插件式智能仓储货架为代表。
这种对称结构释放了 NVMe 技术的全部潜力,并保证了高性能和可靠性。 I/O 过程在处理器和内核之间最大程度地并行化,为多个线程提供同步读写。
......她给了我们什么
Dorado V6方案的最高性能比上一代系统(同级别)提升约20倍,可达XNUMXXNUMX万IOPS。
这是因为在上一代设备中,NVMe 支持仅扩展到带驱动器的抽屉式货架。 现在它存在于从主机到SSD的各个阶段。 后端网络也发生了变化:SAS/PCIe 已经让位于吞吐量为 2 Gb/s 的 RoCEv100。
SSD 外形规格也发生了变化。 如果早先每个 2U 架子有 25 个驱动器,现在它已经增加到 36 个手掌大小的物理磁盘。 此外,货架“变聪明了”。 现在它们每个都有一个由两个基于 ARM 芯片的控制器组成的容错系统,类似于安装在中央控制器中的控制器。
到目前为止,他们只是在进行数据重组,但随着新固件的发布,压缩和擦除编码将被添加到其中,这将使主控制器的负载从 15% 减少到 5%。 同时将一些任务转移到货架上,可以释放内部网络的带宽。 所有这些都显着增加了系统的可扩展性潜力。
上一代存储系统中的压缩和重复数据删除是使用固定长度的块执行的。 现在,添加了一种使用可变长度块的模式,目前需要强制打开。 后续更新可能会改变这种情况。
还简要介绍了对故障的容忍度。 如果两个控制器之一出现故障,Dorado V3 仍可运行。 Dorado V6即使XNUMX个控制器中有XNUMX个连续失效或一个引擎中有XNUMX个同时失效,也能保证数据的可用性。
经济方面的可靠性
最近,在华为客户中进行了一项调查,内容涉及公司认为可以接受的 IT 基础设施各个元素的停机时间。 大多数情况下,受访者可以容忍应用程序在几百秒内没有响应的假设情况。 对于操作系统或主机总线适配器,数十秒(基本上是重启时间)是关键的停机时间。 客户对网络提出了更高的要求:其带宽不应消失超过 10-20 秒。 您可能会猜到,最重要的受访者考虑了存储系统故障。 从业务代表的角度来看,简单的存储一年不应该超过……几秒钟!
换句话说,如果银行的客户端应用程序在 100 秒内没有响应,这很可能不会造成灾难性后果。 但是,如果存储系统不能为相同的数量工作,则可能会导致业务中断和重大财务损失。
上图显示了十大银行的一小时工作成本(福布斯 2017 年数据)。 同意,如果您的公司接近中国银行的规模,那么证明需要购买数百万美元的存储系统就不会那么困难。 反过来说也是正确的:如果企业在停机期间没有遭受重大损失,那么就不太可能购买高端存储系统。 无论如何,重要的是要了解在系统管理员处理拒绝工作的存储系统时,您的钱包中可能会形成多大的漏洞。
第二次故障转移
在上图中的方案A中,您可以认出我们上一代的Dorado V3系统。 它的四个控制器成对工作,只有两个控制器包含缓存副本。 一对中的控制器可以重新分配负载。 同时,如您所见,这里没有前端和后端“工厂”,因此每个存储架都连接到特定的控制器对。
解决方案 B 图显示了目前市场上来自另一家供应商(认可?)的解决方案。 这里已经有前端和后端工厂,驱动器同时连接到四个控制器。 诚然,在系统内部算法的工作中,有些细微差别在第一次近似中并不明显。
右边是我们当前的 Dorado V6 存储架构,具有完整的内部结构。 考虑一下这些系统如何在典型情况下(一个控制器发生故障)存活下来。
在包括 Dorado V3 在内的经典系统中,在发生故障时重新分配负载所需的时间达到四秒。 在此期间,I/O 完全停止。 我们同事的解决方案 B,尽管采用了更现代的架构,但故障停机时间更高,为 XNUMX 秒。
Storage Dorado V6 在发生故障后仅需一秒即可恢复工作。 这一结果的实现要归功于允许控制器访问“外部”内存的同质内部 RDMA 环境。 第二个重要的情况是前端工厂的存在,因此主机的路径不会改变。 端口保持不变,负载只是通过多通道驱动程序发送到健康的控制器。
根据相同的方案,Dorado V6 中第二个控制器的故障在一秒钟内解决。 Dorado V3 大约需要 XNUMX 秒,而另一家供应商的解决方案需要 XNUMX 秒。 对于许多 DBMS,这样的时间间隔不再被认为是可以接受的,因为在此期间系统将切换到待机模式并停止工作。 这首先涉及由许多部分组成的 DBMS。
第三个控制器故障 Solution A 无法存活。 仅仅是因为丢失了对部分数据磁盘的访问权限。 反过来,在这种情况下,解决方案 B 会恢复其工作能力,这与之前的情况一样需要 XNUMX 秒。
Dorado V6 中有什么? 一秒。
什么可以在一秒钟内完成
几乎没有,但我们不需要它。 再次,在高端级别的 Dorado V6 中,前端工厂与控制器工厂解耦。 这意味着没有属于特定控制器的硬编码端口。 故障转移不涉及寻找替代路径或重新初始化多通道。 该系统继续像以前一样工作。
多重容错
较旧的 Dorado V6 型号可以轻松地承受来自任何“引擎”的任何两个(!)控制器同时发生故障。 这是因为该解决方案现在保留了三个缓存副本。 所以,即使是双重失败,也总会有一份完整的副本。
其中一个“引擎”中所有四个控制器的同步故障也不会导致致命后果,因为缓存的所有三个副本在任何给定时间都分布在“引擎”中。 系统本身会监控对此类工作逻辑的遵守情况。
最后,一个不太可能发生的情况是八个控制器中的七个相继发生故障。 此外,在单个故障之间保持可操作性的最小允许间隔为 15 分钟。 在此期间,存储系统有时间执行缓存迁移所需的操作。
最后一个幸存的控制器将运行数据存储并维护缓存五天(默认值,可以在设置中轻松更改)。 之后,缓存将被禁用,但存储系统将继续工作。
无干扰更新
新的 OS Dorado V6 允许您在不重新启动控制器的情况下更新存储固件。
与之前的解决方案一样,该操作系统基于 Linux,但是,许多操作进程已从内核模式转移到用户模式。 大多数功能,例如那些负责重复数据删除和压缩的功能,现在都是在后台运行的常规守护进程。 因此,无需更改整个操作系统即可更新各个模块。 假设,要增加对新协议的支持,只需要关闭相应的软件模块并启动一个新的。
很明显,更新整个系统的问题仍然存在,因为内核中可能有一些元素需要更新。 但根据我们的观察,这些不到总数的 6%。 这使您重新启动控制器的频率比以前低十倍。
容灾和高可用性 (HA/DR) 解决方案
开箱即用的 Dorado V6 已准备好集成到地理分布式解决方案、城市级集群(地铁)和“三重”数据中心。
上图左侧是许多人已经熟悉的城域集群。 两个存储系统以主动/主动模式运行,彼此相距最远 100 公里。 这种具有一个或多个仲裁服务器的基础架构可以由来自不同公司的解决方案支持,包括我们的 FusionSphere 云操作系统。 在此类项目中特别重要的是站点之间通道的特性,在我们的案例中,所有其他任务都由 HyperMetro 功能接管,再次可用,开箱即用。 如果需要,可以通过光纤通道以及 IP 网络中的 iSCSI 进行集成。 不再需要强制存在专用的“暗”光学器件,因为系统能够通过现有通道进行通信。
在构建此类系统时,存储的唯一硬件要求是分配用于复制的端口。 购买许可证、运行法定服务器(物理或虚拟)并提供与控制器的 IP 连接(10 Mbps,50 毫秒)就足够了。
这种架构可以很容易地转移到具有三个数据中心的系统中(请参见插图的右侧)。 例如,当两个数据中心以城域集群模式运行时,距离超过 100 公里的第三个站点使用异步复制。
系统在技术上支持各种业务场景,在大规模过剩的情况下将实施。
具有多个故障的城域集群的生存
上图和下图还展示了一个经典的城域集群,由两个存储系统和一个仲裁服务器组成。 如您所见,在九种可能的多重故障场景中的六种中,我们的基础设施将保持运行。
例如,在第二种情况下,如果仲裁服务器发生故障并且站点之间的同步失败,系统仍然可以保持生产,因为第二个站点停止工作。 此行为已内置到内置算法中。
即使在 15 次失败之后,如果它们之间的间隔至少为 XNUMX 秒,也可以保持对信息的访问。
袖子里通常的王牌
回想一下,华为不仅生产存储系统,还生产全系列的网络设备。 无论您选择哪家存储提供商,如果站点之间使用WDM网络,90%的情况下都会建立在我们公司的解决方案上。 一个合乎逻辑的问题出现了:当可以从一个供应商处获得保证彼此兼容的所有硬件时,为什么要组装一个系统动物园?
对于性能问题
可能没有人需要相信过渡到全闪存存储可以显着降低基础设施维护成本,因为所有日常操作的执行速度都快了许多倍。 此类设备的所有供应商都证明了这一点。 同时,许多供应商在启用各种存储模式时性能下降方面开始变得狡猾。
在我们这个行业,普遍的做法是下发存储系统试运行一两天。 供应商在一个空系统上运行了 20 分钟的测试,获得了宇宙性能数据。 而在实际操作中,“水下耙子”迅速爬出。 一天后,美丽的 IOPS 值减少了一半或三倍,如果存储系统被 80% 填满,它们会变得更少。 当您打开 RAID 5 而不是 RAID 10 时,还会损失 10-15%,并且在城域集群模式下,性能还会减半。
上面列出的所有内容都与 Dorado V6 无关。 我们的客户有机会在周末或至少在夜间进行性能测试。 然后垃圾收集会显现出来,而且各种选项(如快照和复制)的激活如何影响所达到的 IOPS 量也变得清晰起来。
在 Dorado V6 中,带有奇偶校验的快照和 RAID 对性能几乎没有影响(3-5% 而不是 10-15%)。 80% 满的存储系统上的垃圾收集(用零填充驱动器单元格)、压缩、重复数据删除将始终影响请求处理的整体速度。 但有趣的是Dorado V6,无论你激活什么功能组合和保护机制,最终的存储性能都不会低于空载时的80%。
负载均衡
Dorado V6 的高性能是通过每个阶段的平衡来实现的,即:
- 多次通过;
- 使用来自一台主机的多个连接;
- 前端工厂的可用性;
- 存储控制器操作的并行化;
- 负载分布在 RAID 2.0+ 级别的所有驱动器上。
基本上,这是一种常见的做法。 如今,很少有人将所有数据都放在一个 LUN 上:每个人都试图拥有八个、四十个甚至更多。 这是一个明显而正确的方法,我们也赞同。 但是,如果您的任务只需要一个更易于维护的 LUN,我们的架构解决方案可使其达到多个 LUN 可用性能的 80%。
动态 CPU 调度
使用一个 LUN 时处理器上的负载分配通过以下方式实现:LUN 级别的任务被划分为单独的小“分片”,每个分片都严格分配给“引擎”中的特定控制器。 这样做是为了使系统在跨不同控制器“跳跃”该数据时不会损失性能。
另一种保持高性能的机制是动态调度,其中某些处理器内核可以分配给不同的任务池。 例如,如果系统现在在重复数据删除和压缩级别处于空闲状态,那么某些内核可能会参与服务 I/O 的过程。 或相反亦然。 所有这些都是自动完成的,并且对用户透明。
每个 Dorado V6 核心的当前负载数据不会显示在图形界面中,但您可以通过命令行访问控制器操作系统并使用常用的 Linux 命令 最佳.
NVMe 和 RoCE 支持
如前所述,Dorado V6 目前完全支持开箱即用的 NVMe over Fibre Channel,不需要任何许可证。 年中将出现对 NVMe over Ethernet 模式的支持。 要充分利用它,您需要存储系统本身以及交换机和网络适配器对具有直接内存访问 (DMA) 版本 v2.0 的以太网的支持。 例如,例如 Mellanox ConnectX-4 或 ConnectX-5。 您也可以使用基于我们芯片制作的网卡。 此外,必须在操作系统级别实施 RoCE 支持。
总的来说,我们认为 Dorado V6 是一个以 NVMe 为中心的系统。 尽管现有对光纤通道和 iSCSI 的支持,但未来计划切换到具有 RDMA 的高速以太网。
一小撮营销
由于Dorado V6系统具有高容错、良好的扩展性、支持多种迁移技术等特点,随着存储系统的密集使用开始,其收购的经济效果变得明显。 我们将继续努力使系统的所有权尽可能有利可图,即使在第一阶段并不明显。
特别是,我们已经形成了与延长存储系统生命周期相关的 FLASH EVER 计划,旨在为客户在升级过程中尽可能减轻负担。
该方案包括多项措施:
- 能够在不更换整个设备的情况下逐步更换新版本的控制器和磁盘架(适用于 Dorado V6 高端系统);
- 联合存储的可能性(将不同版本的 Dorado 组合为一个混合存储集群的一部分);
- 智能虚拟化(使用第三方硬件作为 Dorado 解决方案的一部分的能力)。
仍然需要注意的是,世界上的困难局势对新系统的商业前景影响不大。 尽管 Dorado V6 的正式发布仅在一月份,但我们看到中国对它的巨大需求,以及来自俄罗斯和国际金融和政府部门的合作伙伴对它的极大兴趣。
除其他事项外,与大流行有关,无论持续多长时间,为远程员工提供虚拟桌面的问题都尤为突出。 在这个过程中,多拉多V6也可以去掉很多问题。 为此,我们正在做出一切必要的努力,包括实际上同意将新系统纳入 VMware 兼容性列表。
***
顺便说一下,不要忘记我们不仅在俄语区而且在全球范围内举办的众多网络研讨会。 XNUMX 月份的网络研讨会列表可在
来源: habr.com