XtremIO全闪存存储阵列产品介绍.doc_第1页
XtremIO全闪存存储阵列产品介绍.doc_第2页
XtremIO全闪存存储阵列产品介绍.doc_第3页
XtremIO全闪存存储阵列产品介绍.doc_第4页
XtremIO全闪存存储阵列产品介绍.doc_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

易安信电脑系统(中国)有限公司EMC XtremIO全闪存存储阵列方案目录1产品技术特性31.1EMC XtremIO存储系统产品特性摘要31.1.1XtremIO 全闪存阵列简介31.1.2系统概况41.1.3横向扩展体系结构61.1.4系统体系结构81.1.5工作原理91.1.6系统功能151.1.7XtremIO 管理服务器( XMS)321.2与其它EMC产品集成351 产品技术特性1.1 EMC XtremIO存储系统产品特性摘要闪存存储对于提升数据中心中的 I/O 性能是一种很有吸引力的方法。但是,这也总是带来了高昂成本和功能缺失的代价,例如可扩展性、高可用性和企业级功能的缺失。XtremIO 是100 基于闪存的横向扩展企业存储阵列,不仅提供了高水平的性能和可扩展性,也为 SAN 存储带来了全新水平的易用性,同时还提供了前所未有的高级功能。XtremIO 的全新全闪存阵列从设计开始,就是为了实现最高的性能和一致的低延迟响应时间,并且提供企业级高可用性功能和可显著降低成本的实时在线数据去重,以及精简资源调配、到 VMware 的紧密集成、快照、卷克隆以及极佳数据保护等高级功能。这些都能以颇具竞争力的拥有成本来实现.产品体系结构迎合了对基于闪存存储的全部需求,包括实现延长闪存介质使用寿命、降低闪存容量的有效成本、提供良好的性能和可扩展性,提高运营效率,以及提供先进的存储阵列功能。1.1.1 XtremIO 全闪存阵列简介XtremIO 的全闪存存储阵列从头全新设计,以释放闪存的全部性能潜力,并提供基于传统阵列的功能,以闪存介质为基础,充分利用 SSD 的独特特性。XtremIO 采用行业标准组件和专有智能软件,提供无与伦比的性能水平。可实现的性能范围从几十万 IOPS 到上百万 IOPS,并具有一毫秒以下的一致低延迟。系统还具有非常友好的管理界面,令资源调配和阵列管理变得十分简单。使得存储实施变得可以零规划。 XtremIO 利用闪存在以下几个主要方面创造了价值:l 性能 无论系统多么繁忙,无论存储容量利用率如何,延迟和吞吐量始终可以预测,并保持不变。阵列内一个 I/O 请求的延迟通常远远低于一毫秒。l 可扩展性 XtremIO 存储系统具备横向扩展的体系结构。系统的最小单元是始于一个名为 X-Brick 的构造块。当需要额外的性能和容量时,系统会通过添加 X-Brick 来横向扩展。性能则呈线性扩展,确保相对于单个 X-Brick 配置,两个 X-Brick提供两倍的 IOPS、三个 X-Brick 提供三倍的 IOPS、四个 X-Brick 提供四倍的 IOPS,以此类推.系统横向扩展时,延迟始终保持一致的水平。l 效率 核心引擎执行基于内容的在线式数据去重。数据进入系统后,XtremIO 存储阵列会在运行中自动减少(消除重复)数据。这就降低了写入闪存的数据量,延长了介质的使用寿命,并降低了成本。XtremIO 阵列以 4 KB 的区块粒 度按需为卷分配容量。始终会对卷进行精简资源调配,而不会损失性能、过 度调配容量或出现碎片。u 数据保护 XtremIO 利用专有的闪存优化数据保护算法(XtremIO数据保护,即 XDP),它为数据提供 RAID-6 保护,同时使性能优于任何现有的 RAID 算法。XDP 优化还可实现更少地写入闪存介质,达到数据保护的目的。l 功能 XtremIO 支持高性能和空间高效型快照、在线去重、精简资源 调配,以及完整的 VMware VAAI 集成,并支持光纤通道和 iSCSI 协议。1.1.2 系统概况XtremIO 存储阵列是一个全闪存系统,以横向扩展体系结构为基础。系统采用了称为 X-Brick 的构造块,这些构造块可以群集化,以按照需要来提高性能和容量,如图 2 所示。系统操作通过基于 Linux 的独立专用服务器,即 XtremIO 管理服务器 (XMS) 来控制。每个 XtremIO 群集需要自己的 XMS 主机,可以是物理或虚拟服务器。如果从 XMS 断开连接,阵列将继续运行,但不能进行配置或监控。XtremIO 的阵列体系结构专门用于提供闪存的全部性能潜力,同时均衡地对全部资源(如 CPU、RAM、SSD 和主机端口)进行线性扩展。这使得阵列可以达到任何期望的性能水平,同时保持性能的一致性,这对于可预测的应用程序行为至关重要。XtremIO 存储系统提供了高水平的性能,随着时间、系统条件和访问模式的变化,其性能水平始终一致。它设计用于高粒度 (4KB) 真正的随机 I/O。系统的性能水平不受其容量利用率、卷数或老化效应的影响。此外,性能不基于“共享缓存”的体系结构,因此不受数据集大小或数据访问模式的影响。凭借内容感知型存储体系结构,XtremIO 还提供:l 数据块的均匀分布,本身即可实现最高的性能和最低的闪存损耗l 元数据的均匀分布l 无数据或元数据热区l 轻松配置,无需调整l 先进的存储功能,包括在线数据去重、精简资源调配、高级数据保护 (XDP)、快照等X-Brick 是一个 XtremIO 阵列的基本构造块。每个 X-Brick 都由以下几部分组成:l 1 个 2U 磁盘阵列存储模块 (DAE),包含:n 25 个 eMLC SSDn 2 个冗余电源单元 (PSU)n 2 个冗余 SAS 互连模块l 1 个电池备份单元l 2 个 1U 存储控制器(冗余存储处理器) 每个存储控制器包括: 2 个冗余电源单元 (PSU) 2 个 8 Gb/s 光纤通道 (FC) 端口 2 个 10GbE iSCSI 端口 2 个 40Gb/s InfiniBand 端口 1 个 1Gb/s 管理/IPMI 端口1.1.3 横向扩展体系结构一个 XtremIO 存储系统可以包括单个 X-Brick 或多个 X-Brick 的群集,如图 2 和 表 2 所示。借 助 包 含 两 个 或 多 个 X-Brick 的 群 集 ,XtremIO 使 用 冗 余 的 40Gb/s QDR InfiniBand 网络,实现存储控制器之间的后端连接,确保网络的高可用性和超低延迟。InfiniBand 网络是由 XtremIO 阵列内部管理互联的组件,XtremIO 系统的管理员不需要具备 InfiniBand 技术方面的专业技能。单个 X-Brick 系统包括:l 1 个 X-Brickl 1 个额外电池备份单元包含多个 X-Brick 的群集系统包括:2 个、3 个或 4 个 X-Brick 2 个 InfiniBand 交换机1.1.4 系统体系结构XtremIO 的工作原理与任何其他基于数据块的存储阵列一样,并与现有的 SAN 集成,可以选择通过 8Gb/s 光纤通道和 10Gb/s 以太网 iSCSI (SFP+) 连接到主机。然而,不像其他数据块阵列,XtremIO 是专门构建的闪存存储系统,设计用于提供顶级的性能、方便易用的高级数据管理服务。XtremIO 阵列内的每个存储控制器都运行专门定制的轻量级 Linux 发行版,作为其基础平台。XtremIO 操作系统(XIOS) 在 Linux 之上运行,在存储控制器中处理所有活动,如图 3 所示。XIOS 针对高 I/O 速率处理进行了优化,并管理系统的功能模块和 InfiniBand 操作、监控、内存池的 RDMA。XIOS 拥有专有的进程调度和处理算法,设计用于满足内容感知型、低延迟、高性能存储子系统的特定要求。XIOS 提供: 低延迟调度 实现子进程的有效上下文切换,优化调度并使等待时间达到最 短 线性 CPU 可扩展性 实现任何 CPU 资源的充分开发,包括多核 CPU 限制 CPU 核间同步 优化子进程间的通信和数据转移无 CPU 片间同步 使运行在不同套接字上的子进程之间的同步任务和依赖性 达到最低缓存行感知 优化延迟和数据访问每个 X-Brick 上的存储控制器都拥有磁盘阵列存储模块 (DAE),通过冗余 SAS 互连连接在存储控制器上.存储控制器也连接到一个冗余,高可用性的 InfiniBand连接结构。无论哪个存储控制器接收到来自主机的 I/O 请求,多个 X-Brick 上的多个存储控制器都会相互配合来处理请求。XtremIO 系统中的数据布局确保了所有组件均会共享负载,并均衡地参与到 I/O 操作中。1.1.5 工作原理 在进入系统后,XtremIO 存储阵列自动减少(消除重复)数据,在 4KB 的数据块中进行处理。重复数据消除(在整个系统中)是全局性的,始终开启,并且实时执行(从不作为后处理操作)。XtremIO 采用全局内存缓存,可感知已消除的重复数据,以及基于内容的分布,本身即可使数据平均分布在整个阵列中。所有卷都可以通过全部 X-Brick 和全部存储阵列主机端口进行访问。系统采用了高可用性的后端 InfiniBand 网络(由 EMC 提供),可提供高速度、超低延迟和群集中所有存储控制器之间的远程直接内存访问 (RDMA)。通过利用RDMA,XtremIO 系统本质上成为了一个跨越所有存储控制器的单一、共享内存空间。单个 X-Brick 的有效逻辑容量会有所不同,这取决于所存储的数据集。对于高度重复的信息(在很多虚拟环境中很常见),有效可用容量远远高于可用物理闪存容量。此环境下重复数据消除比率的范围通常在 3:1 到 10:1映射表每个存储控制器都维护着一个表格,该表格管理着每个数据块在 SSD 中的位置,如表 3所示。该表格包含两个部分:l 该表格的第一部分将主机 LBA 映射到它的内容指纹。l 该表格的第二部分将内容指纹映射到它的 SSD 位置。使用该表格的第二部分,为 XtremIO 提供了独特的功能,使其能将数据均匀地分布在阵列中,并将每个数据块放在 SSD 中最合适的位置上。它还允许系统跳过无响应的驱动器,或当阵列将满、没有空的条带可供写入时,选择在哪里写入新的数据块。写入 I/O 流的工作原理在典型的写入操作中,传入的数据流到达任何一个“活动-活动”式存储控制器,然后被分解为 4KB 的数据块。对于每个 4KB 数据块,阵列都会利用唯一的标识符来采集数据的指纹。阵列用这个指纹来维护一份表格(如表 3 所示),以此确定传入的写入是否已存在于阵列之中。该指纹也用于确定数据的存储位置。LBA 到内容指纹的映射记录在存储控制器内存里的元数据中。系统会检查指纹和相应的 4KB 数据块之前是否已被存储。如果指纹是新的,系统将:l 在阵列上选择将要放置数据块的位置(基于指纹,而不是 LBA)。l 创建“指纹到物理位置”的映射。l 为指纹增加 1 的参考计数。l 执行写入。假如出现“重复”写入的情况,系统会将新的 LBA 记录到指纹映射上,并增加该特定指纹的参考计数。由于数据已经存在于阵列中,因此无需更改指纹到物理位置的映射,也无需向 SSD 写入任何内容.所有元数据更改均发生在内存中。因此,已消除重复数据的写入,比第一次唯一数据块的写入要快.这是 XtremIO内联式数据减少的独特优势之一,重复数据消除实际上提升了写入性能。4KB 数据块对 SSD 的实际写入是异步执行的。在应用程序写入时,系统将 4KB数据块放入内存中写入缓冲区(通过 RDMA 复制到不同的存储控制器对其进行保护),并立即向主机返回确认消息。当缓冲区中收集了足够的数据块,系统会将它们写入到 SSD 上的 XDP(XtremIO 数据保护)条带上。这个过程以最有效的方式进行. 当写入 I/O 被发到阵列中时:1. 系统会分析传入的数据,并将其分割为 4KB 数据块,如图 4 所示2. 对于每个 4KB 数据块,阵列都会为数据分配一个唯一的指纹,如图 5 所示。阵列用这个指纹来维护一份表格,以此确定之后的写入是否已存在于阵列之 中,如表 3所示。l 如果一个数据块在系统中不存在,处理存储控制器会记录下将数据块写入其他存储控制器的意图,使用指纹来确定数据的位置。l 如果一个数据块已经存在于系统中,将不会写入,如图 6 所示。3. 该阵列会增加每个 4KB 数据块的参考计数。4. 采用一致的分布式映射,每个数据块被路由到负责相关指纹地址空间的存储 控制器.一致的分布式映射以内容指纹为基础。计算指纹的数学进程的结果是使指纹值均匀分布,指纹映射均匀分布在群集中的所有存储控制器中,如图 7 所示。5. 系统向主机发回确认消息。 6. 由于指纹功能是均匀分布的,群集中的每个存储控制器都会收到均等数量的 数据块。当其他数据块到达时,它们将填充条带,如图 8 所示。 7. 一旦存储控制器有了足够的数据块来填充阵列中最空的条带(或可用的完整 条带),存储控制器就会将数据块从缓存中转移到 SSD,如图 9 所示。读取 I/O 流的工作原理在 4KB 数据块的读取操作中,系统将在 LBA 到指纹的映射中查找逻辑地址。一旦发现指纹,则会查找指纹到物理的映射,然后从特定物理位置检索 4KB 数据块。由于数据在群集和 SSD 中是均匀写入的,因此读取负载也是均匀分担的。XtremIO 在每个存储控制器中都有基于内存的读取缓存。l 在传统阵列中,读取缓存按照逻辑地址进行组织。位于更容易被读取的地址上的数据块,被放置在读取缓存中。l 在 XtremIO 阵列中,读取缓存按照内容指纹进行组织。内容(以其指纹 ID 来 表示)更容易被读取的数据块,被放置在缓存中。这使得 XtremIO 的读取缓存可以感知重复数据消除,也就是说,它相对较小的读取缓存,显得比同尺寸传统缓存要大很多。如果请求的数据块大小超过 4KB,则 XtremIO 将在群集中执行并行 4KB 读取,并将它们集合到更大的数据块中,再将它们返回到应用程序。当读取 I/O 被发到阵列中:1. 系统会分析传入请求,以确定每个 4KB 数据块的 LBA,并创建一个缓冲区来 保存数据。2. 下列进程将并行发生:l 对于每个 4KB 数据块,阵列将找到存储的指纹。指纹可确定数据块在 X- Brick 中的位置。对于较大的 I/O(如 256K),多个 X-Brick 将参与到每个 4KB 数据块的检索中。l 系统在 InfiniBand 上通过 RDMA 将请求的读取数据传输到处理存储控制 器中。3. 系统将完整填充的数据缓冲区发送回主机。1.1.6 系统功能可扩展的性能XtremIO 采用横向扩展设计,旨在针对新的应用程序和已部署的应用程序,均可满足其未来的性能和容量需求.XtremIO 的体系结构允许通过增加构造块 (X-Brick) 的方式,提高性能,增加容量,同时保持整个系统的单点管理和资源平衡.横向扩展是 XtremIO 体系结构的固有部分,无需对现有硬件进行整体升级,也无需任何长时间的数据转移即可执行.当需要额外的性能或容量时,XtremIO 存储系统可以通过添加额外的 X-Brick 实现横向扩展。多个 X-Brick 通过冗余、高可用性、超低延迟的 InfiniBand 网络结合起来。当系统扩展时,资源保持平衡,阵列中的数据分布在所有 X-Brick 中,以保持一致的性能和同等的闪存损耗水平。系统进行扩展时,无需进行任何配置或手动移动卷。XtremIO 使用一致的指纹识别算法,可使重新映射达到最低。将新的 X-Brick 添加到内部负载平衡方案中只将相关的现有数据转移到新的 DAE。存储容量和性能呈线性扩展,相对于单个 X-Brick 的配置,两个 X-Brick 提供两倍的 IOPS、三个 X-Brick 提供三倍的 IOPS、四个 X-Brick 提供四倍的 IOPS。但是,在系统横向扩展时,延迟始终保持在低水平(低于 1 毫秒),如图 10 所示。由于 XtremIO 专为提高可扩展性而开发,其软件对群集的大小没有固有限制。 系统体系结构也能以最有效的方式来处理延迟问题.软件采用模块化设计。每个存储控制器运行不同模块的组合,并共享总负载。这些(位于不同存储控制器上的)分布式软件模块对整个群集中每个单独的 I/O 操作进行处理。XtremIO 通过两个软件模块(2 跳)处理每个请求,不论是单个 X-Brick 系统,还是多个X-brick 的群集。因此,不论群集的大小,延迟都能始终保持一致。 注意: 亚毫秒级的延迟已通过实际测试结果的验证,并根据最坏的情况来确定。 InfiniBand 在 XtremIO 的体系结构中起着重要的作用。XtremIO 在 InfiniBand 底 板中使用两种通信类型:利用远程过程调用 (RPC) 来控制消息,利用远程直接内 存访问 (RDMA) 来移动数据块。 InfiniBand 不仅具有任何互连技术中可用的最高带宽之一(一个 QDR 连接40Gb/s),而且还具有最低的延迟。在两个 XtremIO 存储控制器之间,一个4KB 数据块 RDMA 转移的往返时间大约为 7 微秒,与 XtremIO 允许每个 I/O 的延迟时间 500 微秒相比,几乎微不足道。这使软件可以选择任何必要的存储控制器和 SSD 资源,无论这些资源来自接收 I/O 存储控制器的本地还是远程位置(通过 InfiniBand)。XtremIO 的所有企业级功能(包括在线数据去重、快照、XDP、HA 等),都是作为横向扩展体系结构的一部分来开发的。所有数据和元数据在整个群集中都均匀分布。I/O 利用 SAN 分区和多路径,通过所有主机端口进入阵列。因此,由于控制器和 SSD 均匀分担所有工作负载,在系统中的任何位置都几乎不可能发生性能瓶颈。XtremIO 可带来以下优势:l 处理器、RAM、SSD 和连接端口共同扩展,提供完美平衡的可扩展性能。l 通过高可用性的 QDR (40Gb/s) InfiniBand 内部连接结构来实现内部通信。l 由于群集是 N 路活动的,因此可以从任何 X-Brick 上任何存储控制器的任何 主机端口访问任何卷,同时获得同等的性能。l RDMA 零拷贝数据访问使本地或远程 SSD 的 I/O 同等,与群集大小无关。l 系统扩展时,所有 X-Brick 的数据是均衡的。l 实现更高层次的冗余,群集也更具备应对硬件和软件故障的能力。在 N 路活 动横向扩展的群集中,如果一个存储控制器出现故障,系统仅失去 1/N 的整 体性能。l 系统易于升级,而且不像传统的双控制器系统,XtremIO 的横向扩展模型允许客户从小规模开始,随着工作负载的增加来提升存储容量和性能。均匀的数据分布对于外部应用程序,XtremIO 就像标准的数据块存储阵列一样运行。但是,由于其独特的体系结构,它对内部数据组织采用一种截然不同的方法。XtremIO 不使用逻辑地址,而使用数据块内容来决定放置数据块的位置。XtremIO 内部使用 4KB 数据块。在写入操作中,任何大于 4KB 的数据块,均将在第一次进入阵列时,被分解为 4KB 的区块。系统使用一种特殊的数学算法,为每个传入的 4KB 数据块计算唯一的指纹。这种唯一的 ID 有两个主要用途:l 确定 4KB 数据块在阵列中的放置位置l 在线式数据去重由于指纹识别算法的计算方式,ID 号码完全随机出现,并且平均分布在指纹值可能的范围内。其结果是使得数据块均匀分布在阵列中的整个群集和所有 SSD 上。换句话说,XtremIO 既无需检查不同 SSD 上的空间利用水平,也无需主动管理向每个 SSD 写入相等的数据。XtremIO 根据唯一的 ID 来放置数据块,本身即可提供均匀分布的数据(参见图 7)。XtremIO 维护以下元数据:l 逻辑地址 (LBA) 到指纹 ID 的映射l 指纹 ID 到物理位置的映射l 每个指纹 ID 的参考计数系统会在存储控制器的内存中保留所有元数据,并通过 RDMA 镜像不同存储控制器的更改日志,以此来保护元数据.它还会将这些元数据定期存到 SSD 中。在内存中保留所有元数据,可使 XtremIO 提供下列独特优势:l 无 SSD 查找 通过避免 SSD 查找,可为主机操作提供更多的可用 I/O。l 即时快照 由于拍快照的过程完全是在内存中执行的,因此快照操作是瞬时的。l 即时 VM 克隆 内联式数据减少和 VAAI 与内存中元数据相结合,使 XtremIO 仅需通过内存操 作即可克隆 VM。l 稳定性能 数据的物理位置、大尺寸卷和宽泛的 LBA 均对系统性能没有任何影响。在线式数据去重在线式数据去重(在线式重复数据消除)是指在数据写入闪存介质之前,从数据中删除冗余部分。在数据进入系统后,XtremIO 会对重复数据进行自动、全局删除。数据减少是实时进行的,而不是后处理操作。使用 XtremIO,没有消耗资源的后台进程,也没有额外的读取/写入(与后处理相关)。因此,它不会对存储阵列的性能产生负面影响,不会浪费分配给主机 I/O 的可用资源,也不会消耗闪存的损耗周期。使用 XtremIO,可根据数据块的内容进行存储,而不是根据它们在卷中的用户级别地址。这样可以确保系统中的所有设备在容量和性能方面达到完美的负载均衡。每当一个数据块被修改时,它可以被放置在系统中任何一组 SSD 中,或者如果系统已了解数据块的内容,则完全不需要写入。系统本身即可在阵列中传播数据,平均地使用所有 SSD,并提供完美的损耗均衡 。 即 使 主 机 重 复 写 入 了 同 一 个 逻 辑 块 地 址 (LBA), 每 一 次 写 入 也 会 指 向XtremIO 中的不同位置。如果主机反复写入相同的数据,则会进行重复数据消除,从而使闪存中不会写入额外数据。采用内容感知型、全局重复数据消除缓存来实现高效的数据减少。系统独特的内容感知型存储体系结构,可以利用很小的 DRAM 分配实现大幅扩展缓存尺寸。因此,XtremIO 对于困难的数据访问类型来说,是一款理想的解决方案,如虚拟桌面 (VDI) 环境中常见的“启动风暴”。系统还采用了内容指纹,不仅可实现在线式数据去重,同时还可实现 4KB 数据块在阵列中的均匀分布。由于无需重新写入或重新平衡数据,这就为性能提供了本身负载平衡,提高了闪存损耗水平效率。在线式执行此进程,并在阵列中全局执行,可实现更少的 SSD 写入。这样可以增加 SSD 的持久性,并消除与后处理数据减少相关的性能下降。XtremIO 的在线式数据去重功能和智能数据存储流程确保了:l 系统资源的均衡使用,从而使系统性能达到最佳l 最少次数的闪存操作,从而使闪存的使用寿命达到最长l 均等的数据分配,从而使整个系统内的闪存损耗保持均衡。l 没有系统级垃圾回收(与后处理数据减少的情况相反)l SSD 容量的智能使用,从而使存储成本达到最低高可用性XtremIO 的全闪存存储阵列体系结构的核心功能之一,即在发生多个故障的情况下,防止数据丢失并维持服务。从硬件的角度来讲,没有任何组件是单点故障。系统中的每个存储控制器、DAE和 InfiniBand 交换机 都配有双电源。系统还配有双重电池备份单元及双重网络和数据端口(在每个存储控制器中)。两部 InfiniBand 交换机是交叉连接的,构建了一个双重数据连接结构。电源输入和不同的数据路径都处于持续监控中,任何故障都会触发一次恢复尝试或故障切换。软件体系结构也是按照类似的方式构建的。未提交给 SSD 的所有信息都会被保存至多个位置,它们被称为日志。每个软件模块都有自己的日志,这些日志并不保存在同一个存储控制器上,在发生意外故障时可用来恢复数据。日志非常重要,并始终保存在带有电池备用电源的存储控制器上。如果电池备份单元发生问题,日志会故障转移到另一个存储控制器上。如果发生全局电源故障,电池备份单元会确保所有的日志都写入存储控制器中的存储区驱动器,然后系统才会关闭。此外,由于其横向扩展设计和 XDP 数据保护算法,每个 X-Brick 都被预配置为一个单独的冗余组。因此,无需选择、配置和调整冗余组。XtremIO 的“活动-活动”式体系结构旨在确保达到最高性能和保持一致的延迟。系统包含一个自我恢复机制,出现任何故障时都会尝试恢复及重新恢复全部功能在故障切换操作之前,会先执行一次尝试重新启动出现故障组件的操作。存储控制器故障切换是作为最后手段来执行的。根据故障的性质,系统会尝试对相关的软件组件进行故障切换,同时维持其他组件的运行,从而将对性能的影响降到最低。只有当恢复尝试失败,或系统必须按照最大程度地防止数据丢失的原则进行操作时,整个存储控制器才会执行故障切换。当一个暂时不可用的组件恢复时,将会启动回切。这一过程在软件组件或存储控制器层级上执行。反弹跳机制会防止系统回切至一个不稳定或正在维护的组件。XtremIO 是在商用硬件基础上构建的,它不单单依赖于基于硬件的错误检测,还拥有一个专利的算法,可确保对被损坏区域进行检测、修正和标记。任何未被SSD 硬件自动处理的数据损坏场景,都会由 XDP 机制在阵列上或日志中保存的多个拷贝上进行处理。内容指纹在写入操作中被用作一个安全可靠的数据完整性机制,可防止隐性的数据损坏错误。如果与预期指纹不符,阵列将会通过重新读取数据或从 XDP 冗余组中重新构建数据来达到恢复数据的目的。无中断升级在 XtremIO 操作系统的无中断升级 (NDU) 期间,系统在一个动态群集上执行升级程序,更新该群集中的所有存储控制器,并在不到 10 秒钟的过程中重启应用程序。由于在整个升级过程中 Linux 内核都是活动的,因此主机在应用程序重启期间,不会检测到任何路径断开连接。在极少数情况下,当 Linux 内核或固件升级时,有可能在不发生任何服务中断并且没有任何数据丢失风险的情况下,升级 XtremIO 全闪存阵列。无中断升级(NDU) 程序从 XtremIO 管理服务器启动,能够升级 XtremIO 软件和底层操作系统及固件。在 Linux/固件 NDU 期间,系统会自动对一个组件进行故障切换,并升级其软件。升级完成后,系统会验证该组件的运行状况,然后回切,该流程会在其他组件上重复进行。在升级过程中,系统完全可访问,不会丢失数据,并且对性能的影响保持在最低水平。精简资源调配 XtremIO 存储本身采用精简资源调配方式,使用很小的内部数据块大小。这就为精简调配的空间提供了细粒度的解析。 系统中的所有卷都进行精简调配,这意味着系统只有在真正需要的时候才会消耗容量.XtremIO 在计算出 4KB 数据块的指纹 ID 后,再决定将它们放置在群集中的物理位置.因此,它从不会在写入之前预先配置或提前分配存储空间。 由于 XtremIO 的内容感知型体系结构,数据块可以存储在系统中的任何位置(只用元数据来指代它们的位置)。系统的精简资源调配是在 4KB 粒度下执行的, 当接收到唯一的数据块时,4KB 数据区块才会被写入。 因此,与许多面向磁盘的体系结构不同,XtremIO 的精简资源调配中没有空间蠕 变,也没有垃圾回收.而且,XtremIO 不存在长时间使用后出现卷碎片的问题。(由于数据块分散在整个随机访问阵列上),因此无需碎片整理工具。 无论系统的容量利用率或写入模式如何,XtremIO 固有的精简资源调配功能都能 确保在卷的整个使用周期中,保持始终如一的性能和数据管理。 XtremIO 数据保护 (XDP) XtremIO 存储系统可提供非常高效的“自我恢复”双奇偶校验数据保护。 系统的数据保护和元数据空间只需很少的容量开销。重建不需要专用的备用驱动器。相对地,它利用“热空间”概念,令阵列中任何可用的未占用空间都可以用来重新构建出现故障的驱动器。系统始终预留出执行一次重建所需的足够分配容量。 即使在容量利用率很高时,XtremIO 也能以最小的容量开销维持其性能。系统不需要镜像方案(以及与其相关的 100% 容量开销)。 XtremIO 需要为数据保护、元数据存储、快照、备用驱动器和性能预留的容量要少得多,从而将更多空间留给用户数据使用。这就降低了每可用 GB 的成本。 XtremIO 存储系统具有以下优势:l 如 RAID 6 一样的 N+2 数据保护l 仅 8% 的超低数据保护容量开销l 性能优于任何 RAID 算法(RAID 1 这种写入最高效的 RAID 算法,所需的写入也比 XtremIO 数据保护多 60% 以上。)l 闪存耐久性优于任何 RAID 算法,这一点得益于其更少的写入次数和均匀的数 据分布l 在驱动器出现故障的情况下可自动重建,而且重建时间比传统的 RAID 算法都 要短l 具有卓越的稳健性,即使系统中存在故障的驱动器,其包含的自适应算法也 可以全面保护传入数据l 支持故障冻结,方便系统管理l 可处理意外的驱动器删除 *XtremIO 数据保护 (XDP) 旨在利用闪存介质的特定特性和 XtremIO 的内容寻址存储体系结构。XDP 不费任何代价就能控制数据存储的位置,得益于这一点,XDP 实现了如RAID 6 一样的保护等级和低存储开销,以及优于 RAID 1 的性能。另外一个优势是,相比之前的任何 RAID 算法,XtremIO 数据保护还能够极大地提高底层闪存介质的耐久性,这是企业级闪存阵列的一个重要考虑因素。XDP 采用一种 N+2 单向和对角线奇偶校验的变体(如图 11 所示),在同时发生两个 SSD 错误时提供保护。对于拥有 25 个 SSD 的阵列,这需要 8% 的容量开销。传统阵列在磁盘上的同一个物理位置更新逻辑块地址 (LBA)(导致一次条带更新需要较高的 I/O 开销)。XtremIO 则始终将数据放置在最空的条带里。将数据写入最空的条带,可以有效地分摊每次条带更新时的读写 I/O 操作开销,而只有XtremIO 的全闪存、基于内容的体系结构才能实现这一点。这一流程可确保XtremIO 在阵列填满的过程中始终保持稳定的性能,并且当重写和部分条带更新成为惯例后,还能够在更长的时间段内继续运行。XtremIO 还可提供出色的重建流程。当传统的 RAID 6 阵列遇到一个磁盘故障时,它会使用 RAID 5 方法,通过读取每个条带并从条带中的其他单元计算丢失的单元进行重建。与之相对,XtremIO 采用 P 和 Q 两种奇偶校验方法来重建丢失的信息,并使用一种只读取下一个单元重建所需信息的高级算法。快照 快照是通过捕获在特定时间点时卷中的数据状态而创建的,使用户可在需要的时候访问数据,即使在源卷已经改变的情况下也可以访问。XtremIO 快照具有内在的可写入性,但可以按只读方式加载,以保持其不变性。您可以从源或源卷的任何快照来捕获快照。 快照可用于许多使用情形,包括:l 逻辑损坏保护 您可以创建频繁的快照(按照您希望的 RPO 间隔),并使用它们来恢复任何逻辑数据损坏。只要需要,快照可以一直保存在系统中。如果发生了逻辑数据损坏,您可以使用先前的应用程序状态快照(逻辑数据损坏发生之前), 将应用程序恢复到一个已知完好状态的时间点上。l 备份 您可以创建快照,将其呈交给备份服务器/代理程序。这可以用于将备份流程的负载从生产服务器上分流出去。l 开发和测试 您可以创建生产数据的快照,创建生产系统的多个(节省空间且高性能的)拷贝,并将其呈交用于开发和测试目的。l 克隆 您可以使用持久的可写入快照,获得如克隆一般的功能。它们可以用于向多个服务器呈交生产卷的一份克隆。该克隆的性能与生产卷的性能完全相同。l 离线处理 您可以使用快照的方式,将数据处理负载从生产服务器上分流出去。例如,如果您需要对数据运行一个负载较重的流程(这可能会影响生产服务器的性能),您可以使用快照创建该生产数据近期的一个拷贝,将其加载到另一个 服务器上。这样,该流程就可以在另一个服务器上运行,而不会消耗生产服 务器的资源了。XtremIO 的快照技术是利用系统的内容感知功能(内联式数据减少)来实施的,并针对 SSD 介质进行了优化。它拥有一个独特的元数据树结构,可将 I/O 导向正确的数据时间戳。这样就可以实现高效的快照捕获,从而在创建多个快照的能力和一个快照可以支持的 I/O 数量方面都能维持高性能,同时获得最长的介质耐久性。创建快照时,系统会生成一个(系统中实际数据的)上级元数据的指示器。因此,创建快照是一个很快速的操作,不会对系统产生任何影响,也不会消耗任何容量。只有当更改需要写入新的唯一数据块时,快照才会消耗容量。创建快照时,其元数据与上级卷的元数据完全相同。当一个新的数据块写入上级时,系统会更新上级卷的元数据,以反映新的写入(并使用标准写入流程,将数据块存入系统)。只要快照和上级卷共享该数据块,该数据块就不会在写入后从系统中删除。这既适用于在卷上新位置的写入(在未使用的 LBA 上的写入),也适用于在已写入位置上的重新写入。系统利用一个树结构来管理快照和上级的元数据。在该树结构中,快照和源卷用树叶表示,如图 图 12 所示。(在快照的原始上级的基础上)所有未经修改的快照数据块全部共享元数据。快照只会为数据块与其上级不同的 LBA 保留唯一的元数据。这样就实现了非常经济的元数据管理。创建新的快照时,系统总是从快照所捕获的实体中创建两片树叶(两个下级实体)。其中一片树叶代表快照,另一片则成为源实体。快照所捕获的实体将不会再被直接使用,而是仅为了元数据管理目的保存在系统中。图 13 展示了 XtremIO 系统中一个包含 16 个数据块的卷。 第一行(标为“A(t0)/S(t0)”)显示了第一次捕获快照时 (t0) 卷的状态。在 t0 这个时间点,上级(A(t0) 和快照 (S(t0) 的数据和元数据都相同,因为 S(t0) 是 A(t0) 的只读快照(与其上级拥有同样的数据)。注意:在 16 个数据块中,只有 8 个被使用了。由于重复数据消除,数据块 0 和 4 仅消耗了一个数据块的物理容量。带点的空白数据块代表采取了精简资源调配未消耗任何物理容量的数据块。在 图 13 中,在 S(t1) 处创建快照之前,有两个新的数据块被写入 P:l H8 重写了 H2。l H2 被写入数据块 D 中。但是,它不会占用更多的物理容量,因为它和 H2 一 样存储在 A(t0) 处的数据块 3 中。S(t1) 是一个读/写快照。它包含另外两个与其上级不同的数据块(数据块 2 和3)。与传统快照(需要为经过修改的数据块预留空间及为每个快照拷贝完整的元数据)不同,XtremIO 不需要为快照预留任何空间,也不会有任何元数据膨胀。在任何时候,XtremIO 快照都仅占用唯一的元数据,该元数据用于不与快照的上级实体共享的数据块。这就使系统能够高效地维持大量的快照,而仅使用非常少的存储开销。这样的存储开销是动态的,与实体的修改次数成比例。例如,在 t2 这个时间点,数据块 0、3、4、6、 8、A、B、D 和 F 都是与上级实体共享的。对于这个快照,只有数据块 5 是唯一的。因此,XtremIO 仅消耗一个元数据单元。其他数据块都与上级共享,使用上级数据结构来编译正确的卷数据和结构。系统支持在一组卷上创建快照。来自这一组卷上的所有快照都是彼此一致的,所有卷都包含完全一样的时间点。这可以手动创建,方法是选择一组要创建快照的卷,或者将卷放置在一个一致性组容器内,然后为该一致性组创建一个快照。在创建快照的过程中,不会对系统性能或整体的系统延迟造成任何影响(性能得以保持)。不论系统中的快照有多少,或快照树有多大,都不会有影响。快照删除是轻量级的,只与实体之间经过修改的数据块数量成比例。系统利用其内容感知功能来处理快照删除。每个数据块都有一个计数器,显示系统中该数据块的实例数量。删除一个数据块,计数器值就减一。有些数据块的计数器值为零(表示在系统中的所有卷或快照中,都没有指代该数据块的逻辑块地址LBA),当有新的唯一数据进入系统时,该数据块就会被 XDP 重写。删除没有下级实体的子实体不需要系统进行额外处理。删除位于树结构中间的一个快照会触发一个异步流程。这一流程会将被删除实体的子实体元数据与其上层实体的元数据合并起来。这样就确保了树结构不会支离破碎。使用 XtremIO,每个需要删除的数据块都会立即被标记为已释放的数据块。因此,没有垃圾回收,系统也不必执行扫描流程来定位和删除孤立数据块。而且,使用 XtremIO,删除快照不会影响到系统性能和 SSD 介质耐久性。快照的执行完全是由元数据驱动的,利用阵列的内联式数据减少确保数据从不会在阵列内被拷贝。这样就可以保存许多快照。XtremIO 的快照:l 无需预留快照空间。l 允许创建不可变拷贝和/或可写入的源卷克隆。l 可即时创建。l 对源卷和快照本身的性能影响微不足道。VMware VAAI 集成VAAI(vSphere 阵列集成存储 API)是为了改进基于主机的 VM 克隆而推出的。如果没有 VAAI,为了克隆一个完整的 VM,主机必须读取每个数据块,并将其写入克隆的 VM 驻留的新地址,如 图 14 所示。这种操作成本较高,需要负载主机、阵列和存储区域网络 (SAN)。如果使用 VAAI,克隆 VM 的工作负载就会分流到存储阵列上去。主机只需发出一个 X-copy 命令,阵列就会将数据块拷贝到新的 VM 地址,如图 15 所示。这一流程为主机和网络节省了资源。但是,它仍然会消耗存储阵列的资源。XtremIO 完全适用 VAAI,允许阵列与 vSphere 进行直接通信,并提供更快速的存储 vMotion、VM 资源调配和精简资源调配功能。此外,XtremIO 的 VAAI 集成使整个操作均以元数据为驱动,从而进一步提高了X-copy 效率。使用 XtremIO,由于内联式数据减少和内存中元数据,在 X-copy命令期间不会拷贝实际的数据块。系统仅创建指代现有数据的指示器,而且整个过程都在存储控制器的内存中执行,如图 16 所示。因此,它不消耗存储阵列的资源,也不会对系统性能产生影响。例如,使用 XtremIO 可以瞬时克隆一个 VM 图像(甚至可以克隆多次)。只有借助 XtremIO 的内存中元数据和内联式数据减少,才能实现这一点。其他闪存产品即使应用了 VAAI,但没有内联式重复数据消除,也仍然需要将 X-COPY 写入闪存,稍后再进行重复数据消除。没有内存中元数据的阵列需要在 SSD 上进行查找才能执行 X-COPY,这会对现有活动 VM 的 I/O 造成不利影响。只有使用XtremIO,才能快速完成这一流程,而且无需 SSD 写入,也不会影响到现有 VM上的 I/O。XtremIO 对 VAAI 的支持功能包括:l 零块/写入一致用于将磁盘区域清零(VMware 术语:HardwareAcceleratedInit)。这一功能可加快卷格式化的速度。l 克隆数据块/完整拷贝/XCOPY用于在同一个物理阵列内拷贝或转移数据(VMware 术语: HardwareAcceleratedMove)。在 XtremIO 上,这使 VM 克隆几乎瞬时完成,而且不会影响到活动 VM 上的用户 I/O。l 基于记录的锁定/原子测试与设置 (ATS)用于在 VMFS 卷上创建和锁定文件,例如在 VM 断电/通电时(VMware 术语:HardwareAcceleratedLocking)这样就可以使用更大的卷和 ESX 群集,而不会发生争用。l 数据块删除/取消映射/修正利用 SCSI“取消映射”功能,可以回收未使用的空间(VMware 术语: BlockDelete;仅限 vSphere 5.x)。1.1.7 XtremIO 管理服务器( XMS)XMS 使您能够控制和管理系统,包括:l 构建、初始化和格式化新的系统l 监控系统运行状况和事件l 监控系统性能l 维持一个性能统计历史数据库l 为客户提供 GUI 和 CLI 服务l 执行卷管理和数据保护组操作逻辑l 维护(终止、开启和重启)系统XMS 是和 CLI 与 GUI 一起预装的。它可以安装在数据中心内的一个专用物理服务器上,也可以作为一个虚拟机安装在 VMware 上。XMS 必须访问 X-Brick 存储控制器上的所有管理端口,并且任何 GUI/CLI 客户端主机都必须可访问 XMS。由于所有通信都使用标准的 TCP/IP 连接,XMS 可以放置在满足以上连接性要求的任何位置。由于 XMS 不在数据路径中,因此可以与 XtremIO 群集断开连接而不影响 I/O。XMS 故障只会影响监控和配置活动,比如创建和删除卷。但是,当使用虚拟XMS 拓扑时,可以利用 VMware vSphere HA 功能来轻松解决此类故障。系统 GUI 是通过一个 Java 客户端来实施的。GUI 客户端软件使用标准的 TCP/IP协议与 XMS 进行通信,该软件可以在任何位置使用,并且允许客户端访问 XMS。GUI 可提供易于使用的工具,用以执行大部分系统操作(特定的管理操作必须使用 CLI 来执行)。另外,在多个组件上的操作(比如创建多个卷)必须使用 GUI来执行。命令行界面系统的命令行界面 (CLI)

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论