1、华为 FusionStorage架构分析常 涛基 本功能接口: scsi/iscsi数 据服务: 快 照,克隆,精简配置,分布式 cache,备份(全量,增量),复制(基于 volume的异步复制)存 储基本功能:集群状态控制,分布式数据分布( DHT), rebuild,reblance过程控制,强一致性协议基本组件 FusionStorage Manager: 管理模块,提供告警,监控,日志等信息。FustionStorage Agent:代理进程,实现和 FusitonStorage Manager的通信。MDC( meta data cluster):集群管理,负责集群状态的监控,数据
2、分布规则,数据 rebuild的过程控制。(使用zookeeper)VBS( virtual block system)客户端,提供分布式块存储集群接入点服务。OSD:数据服务组件。每个磁盘对应一个 OSD(类似于 Ceph)关键技术:数据分布(数据路由) FusionStorage采用 DHT算法 需要全局保存 Partition disk 的映射表1)( LUN1, LBA)生产 key2)通过 key,通过计算 hash值可 得到 Partition3)通过查找全局的 partition 到 disk 的路由表,可知具体的 disk的值优 点:1)保存 partition到 disk的映
3、射表,可以实现负载均衡 2)保存的元数据比较少,可以支持的规模比较大。缺点:副 本控制和分布的粒度是 pool级别, volume级别的数据分布和副本的控制比较难。关键技术: Cache机制 Write Cache SSD cache,直接写 SSD返回 数据定期从 SSD批量刷回 HDD磁盘 Read Cache: 内 存 SSD read cache HDD 磁盘Cache没有啥特别的。关键看cache缓 存算法的实现优劣。关键技术:读写 IO流程读操作: 直接读 Primary OSD写操 作:1) 客户端 VBS发给 Primary OSD2) Primary OSD同时发送给本地磁盘
4、和 Second OSD3) Primary OSD等待 Primary OSD 和 Second OSD的操作都完成,才向客户端应答。没啥特别设计,基本流程都一样。关键技术:快照 /克隆 FusionStorage 采用 ROW 快照技术 优 点是写操作性能几乎不受损失 读操作,特别是顺序读操作,会有影响? 如 果使用 DHT技术, ROW快照的机制具体如何实现? Ceph的机制? 快照的信息记录在每个对象的属性上 Sheepdog的机制? 快照的信息记录在整个 volume的属性上 Consistent Group 不支持? 快照的实现,应该是基于sheepdog的原理实现。ROW机 制的
5、快照还是挺不错的。关键技术:数据一致性协议 /掉电保护 每个 IO有编号(通过编号,实现顺序处理) 主 OSD和备 OSD所接收到的 IO编号处理顺序完全一致。 ordered request 实 现(类似 Ceph的 pg log, 性能是瓶颈吗?) FusitonStorage的保电介质 NVDIM & PCIe SSD 所 有的元数据 + 数据都缓存在 保电介质 中,系统掉电重启后 replay类似 ceph, NVDIM或者 PCIe SSD 做日志(包括元数据和数据)关 键技术:平滑扩容 DHT 技术比较容易的支持 Reblance/Rebuild 时的所占资源的控制 (没有提到)
6、在恢复速度和不影响前端性能之间平衡关键技术:灾备 基 于 volume的同步复制 同 城双活 基于故障域实现的双活 。 但是难以实现基于 volume的 同 步复制 基于 volume的异步复制 异 地复制 基于快照实现的全量和增量备份 可基于 Volume的实现其 它功能 分布 式缓存 有必 要吗? 如果负载均衡 针 对热点?读热点缓存在 cache中,写热点也没法分布式啊? 支持 InifiniBand高速网络 Data Scrub 定时检测存储数据 提前预防数据错 误 硬 盘可靠性 坏 块标记 磁 盘亚健康检查 磁盘错误检查其它缺失的功能(没有提到的功能) QoS Consistent Group Rebuild/rebalance 资源控制 EC的支持 压 缩,重删,加密