硬件层:针对之前的硬件层有:计算硬件——华为2288等等,存储硬件——OceanStor系类和Dorado,和云存储FusionStorage。网络硬件——CE系列交换机。
资源池层:将底层的计算资源进行整合的就是FusionCompute,针对于存储是作为后端存储使用,只要接入就行,但是在云存储主要是FusionStorage。对于网络以前是FusionNetwork来接管现在则是neutron接管,就是硬件AC接管,SDN,或者软SDN。
将资源池层接入FusionSphereOpenstack,将FC和FusionSphereOpenstack统一称为FusionSphere架构。
华为FusionStorage
在介绍FusionStorage之前,先了解一下Server SAN(服务器存储网络),它是多个独立的服务器自带的存储组成一个存储资源池,同时融合了计算和存储资源。它的特点:将专用设备变成通用设备。计算和存储线性扩展,简单管理,低TCO。
利用一个平台(FusionStorage),将之前在服务器内的存储资源整合出来,形成统一的资源池,提供存储服务。
FusionStorage:分布式块存储软件;将通用的X86服务器的本地HDD,SAS,SATA,SSD等介质,通过分布式技术组成大规模存储资源池;对非虚拟化的上层应用和VM提供工业标准的SCSI和ISCSI接口;开放的API。
首先的话先介绍一下传统存储与FS的优缺点:
上层APP通过FC/IP协议,到传统存储的控制框里面的机头(提供IO能力),通过minisas连接到后端的存储磁盘框。一个APP通过机头连接硬盘,一百个APP也是连接机头,虽然控制框里面的机头给APP提供了计算能力,但是在大规模场景下会产生性能瓶颈。为什么IO过多会产生性能瓶颈问题:因为机头里面的IO处理模块的性能是有限的,随着规模的扩大IO模块处理能力也会下降。还有一个是接口类型是不同的,不同的类型,有不同的速率。无法线性扩展,而且控制框最多到16控。(即使扩展到16控,但是对于单个lun并没有扩展IO能力。因为,在创建lun的时候会创建一个主机的IQN号,就是这个lun给哪个主机来用的,然后再把这个lun映射到某个物理端口(控制器)的逻辑端口。然后用户在这个物理端口上扫描到这个IQN号,从而使用这个lun。)
元数据瓶颈问题,传统存储一般采用集中式元数据管理方式,元数据中会记录所有LUN中不同偏移量的数据在硬盘中的分布,例如LUN1+LBA1地址起始的4KB长度的数据分布在第32块硬盘的LBA2上。每次IO操作都需要去查询元数据服务,随着系统规模逐渐变大,元数据的容量也会越来越大,系统所能提供的并发操作能力将受限于元数据服务所在服务器的能力,元数据服务将会成为系统的性能瓶颈
传统存储IO流:
传统的问题:IO瓶颈问题;Cache容量问题(用控制框的内存来当Cache,华为有SMT技术);无法线性扩展;控制框2-16控(分型号)。
FS的优点:
FusionStorage通过VBS(软件)(虚拟块存储服务),是一个进程,可以形成一个集群最多4096个,来提供计算能力(IO能力),去存储池里面使用存储,来解决IO性能瓶颈问题;线性扩展方式是指,一个服务器可以装VBS使用存储资源,在通过OSD提供存储资源。在写数据之前,要请求元数据信息,所谓的元数据是指,描述这个数据在哪里和这个数据。可以理解为这份数