『设计』首次揭秘,面向核心业务的全闪分布式存储架构设计与实践( 二 )
本文插图
NeonSAN 也是为云而生的分布式存储 , 原生适配虚拟化、大数据、容器等多种应用生态 。
首先给大家讲讲 NeonSAN 名字的由来:名字的后半部分是 SAN , SAN 代表了产品的形态 , Neon 是元素周期表里面氖的代号 , 是一种惰性气体 , 具有有极高的稳定性 , 所以 NeonSAN 的名字寓意着这是一款稳定的企业级存储产品 。
NeonSAN 核心模块由数据层和控制层组成 , 此外包括前端接口与运维管理工具层 。
NeonSAN 核心模块采用并行流水线技术 , 设计了全闪存储系统的资源调度系统、内存管理系统、元数据管理系统、RDMA 网络收发系统等 , 打造高可用、高可靠、高性能、扩展灵活的全闪分布式存储 。
NeonSAN 提供 9 个 9 可靠性 , 单卷性能达到 10 万 IOPS , 最小延迟小于 90 微妙 。
在扩展方面 , NeonSAN 可以扩至 1024 节点 , 并且容量和性能随节点的增加而线性增长 。
本文插图
NeonSAN 的基本架构是由 Zookeeper 服务、元数据服务、管理服务、存储服务和接入服务五部分构成 。Zookeeper 提供集群的发现服务;元数据服务用来记录集群中的元数据 , 如节点信息、SSD 的信息、卷信息等;管理服务提供集群的管理功能 , 如节点的上线、创建卷等 。
数据存储服务用来给客户提供具体的 IO , 它承载业务发来的 IO 请求 , 采用对等的设计 , 每个存储节点的地位是相等的 , 都可以提供 IO 服务 。
对等设计可以保证集群的某一个节点发生故障时 , 其他节点能够接替故障节点继续服务 , 保证业务的连续性 , 同时为集群的容量和性能线性扩展提供基础 。
接入服务 , 第一个模块是 QBD 内核驱动 , 在 Windows Server 和 Linux Server 上都有对应的版本 , 它可以让服务器以使用本地盘的方式使用 NeonSAN , 上层业务不需要做任何改造就可以对接 NeonSAN , 非常方便 。
第二是模块是 QEMU , 可以为虚机提供云硬盘 。
第三是模块是通用的 iSCSI 接口 , 可以为 VMware 等虚拟化平台提供存储服务 。
此外 , NeonSAN 还提供高速的 NVMe-oF 接口以及 CSI 接口 , 为容器提供持久化的存储服务 。
NeonSAN 如何满足高可靠和高可用 接下来谈谈 NeonSAN 的网络设计如何满足高可靠和高可用 。
本文插图
NeonSAN 的网络分为两部分:前端业务网络和后端互联网络 , 采用两个前端交换机和两个后端交换机 , 组建高可用网络 。 (交换机使用普通的以太网交换机就可以 , 不需要 FC 交换机这类昂贵的设备 。 )
每个 NenonSAN 节点配备双网卡 , 每张网卡有两个网口 , 分别连接到后端交换机和前端交换机 , 假如交换机 A 发生故障就会影响到 NeonSAN 1、2、3 节点的网卡 A , 凡是通过这三个网卡进行交互的业务也会受到影响 。
此时 NeonSAN 节点就会自动把网络流量切换到网卡 B 上 , 走交换机 B , 保证整个集群网络的可用性 。 同理 , 当网卡发生故障时 , 整个网络仍然是高可用的 。
NeonSAN 的数据可靠性及可用性是通过副本机制来实现的 。
在 Linux 服务下看到块设备 , 或者在 Windows Server 下我们看到一张盘 , 对应到 NeonSAN 集群里 , 就会把这个盘切成一片片的 Shard 。
本文插图
如图所示 , 有红、黄、绿、紫这四个片 , 每一片都会有三副本 , 分别存放在不同的节点 。 任何一个节点上的数据损坏 , 都不会导致数据的丢失 。 可用性也是同样的 , 如果节点 1 不能提供服务 , 节点 2 或 3 可以继续提供服务 , 保证整个集群的可用性 。
推荐阅读
- 苹果:iPhone12 CAD图纸意外曝光!全新外观设计
- 蚕豆■三星新无线耳机渲染图曝光:设计完全改版神似蚕豆搭配三款配色
- 【刘海】iPhone12基本确定,设计有亮点,可以和三星S20U说再见了
- 科技犬玩机:iPhone12基本确定,设计有亮点,可以和三星S20U说再见了
- 「ROM乐园TB」三星新无线耳机渲染图曝光:设计完全改版神似蚕豆搭配三款配色
- ■新形势下传统企业破局重生林魔头教你从商业模式设计开始
- 『像素』荣耀潮流情报局:揭秘荣耀30系列预热视频背后的故事
- 【技术】台积电首次公布3nm技术并提上日程 最快明年面世
- :iPhone12真机首次曝光,外观设计致敬乔布斯,性能有望全球第一
- 「NASA,载人飞行」定了!NASA局长宣布SpaceX将于5月27日进行首次载人飞行