暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

软件定义存储和存储技术概述(云计算系列专题6)

Cloud云说 2021-06-09
473

通过前面文章,我们已经对于云计算,有了一个比较全面的认知和了解,包括云计算的特征,交付,部署,优势,驱动,架构,组件,应用等。根据云计算的组件,我们知道一个完整的云计算中心,主要包括:计算资源及对应的虚拟化技术、存储资源及对应的虚拟化技术、网络资源,及对应的虚拟化技术。


在之前的文章里,我们就云计算中心最重要的技术组件,即计算虚拟化,进行了深入的讲解。但是云计算中心,除了需要计算虚拟化,实现计算资源的虚拟化,还需要存储虚拟化,以及网络虚拟化。所以在计算虚拟化系列文章结束后,我们又开始了一个新的系列,即存储虚拟化系列文章,去深入探索存储虚拟化详细的技术实现方案。现在我们开始讲解云计算的第二组件,存储资源及对应的虚拟化技术。


01
存储基础知识


在讲解存储虚拟化技术方案之前,有必要先补充一些最基础的存储知识。依据存储的类别,存储主要分为如下三种系统模型:


DAS(直连存储)

DAS直连存储,相信大家应该已经很熟悉了,就是服务器内部自带的存储设备,我们个人计算机内部也会自带存储磁盘(比如PC自带500G硬盘,或者1TB硬盘等)。


DAS的连接方式是存储设备直接连接到服务器(所以叫直连存储),连接通道通常采用SCSI协议,总线成本低,同时连接集成在服务器内部,采用点到点的连接方式,距离短,如下图所示;应用程序可以通过两种方式访问存储设备:

(1)应用程序调用文件I/O,然后文件I/O发起磁盘I/O访问磁盘;

(2)应用程序直接发起磁盘I/O访问磁盘;



DAS成本低,技术要求不高,容易理解,规划和实施,已有近40年使用历史;然而随着现代信息处理的数据量暴增,DAS存储也暴露出了如下问题:


DAS存储本身无法完成数据备份与恢复,需要服务器操作系统进行数据的I/O读写和存储维护;而服务器操作系统,进行数据的存储维护(备份与恢复等)操作,非常消耗服务器的CPU和内存资源,导致服务器性能降低,影响服务器上其它业务的正常运行。


服务器到存储设备的连接通道协议,通常是SCSI协议,速度可以是40Mbps,80Mbps等,随着服务器性能的不断提高,磁盘存储容量的不断提升,服务器到磁盘存储设备之间的连接通道的速度(SCSI协议带宽)并没有得到对应幅度的提升,于是SCSI存储通道反而容易成为服务器系统的I/O瓶颈。


每个服务器自带存储设备,导致所有服务器的存储设备比较分散,而缺乏统一的系统,对于分散的服务器存储,进行集中统一调度;结果就是服务器存储分散,数据存储分散,相关数据的管理,也分散化,数据管理效率无法得到提高。


为了处理解决上述问题,人们意识到需要将存储设备,从服务器内部分离出来,外置集中统一部署的存储设备,可以有效解决上述问题,如下:


外置集中统一部署的存储设备,可以弹性部署存储容量,想放多少磁盘就放多少磁盘

外置集中统一部署的存储设备,可以在服务器和存储设备之间,部署专门的存储网络,以提高服务器访问存储设备的带宽

外置集中统一部署的存储设备,可以很方便的进行数据的集中管理;


外置集中统一部署的存储网络,可以有两种实现方案,包括

(1)存储区域网络SAN—Storage Area Network;

(2)网络接入存储NAS—Network Access Storage;


SAN(存储区域网络)

存储区域网络SAN,就是通过存储网络连接服务器到存储设备,服务器通过存储网络(FC网络或以太网)访问存储设备,如下:

因为服务器是通过存储网络(FC网络或以太网)访问存储设备,所以彻底打破了DAS直连存储时,因为服务器内部SCSI通道有限,导致存储访问带宽有限的瓶颈;服务器通过存储网络访问存储设备,访问带宽可以达到1Gbps,2Gbps甚至更高。


根据存储网络的不同,SAN又可以细分为FC-SAN(存储网络是专用的FC光纤网络),和IP-SAN(存储网络是通用的以太网络);其中FC-SAN的存储通道协议仍然可以是SCSI和FC协议,所以可以简单的认为SAN,就是距离加长版的DAS直连存储。


原本的DAS直连存储,因为存储设备在服务器内部,所以存储通道带宽和距离均受限;现在将存储设备从服务器内部,分离出来,服务器通过存储网络连接到存储设备,存储通道带宽和距离,均得到了飞跃提升,但是存储通道协议仍然保持不变(SCSI和FC协议);所以可以认为SAN,就是存储通道加宽 & 加长版的DAS直连存储。


不过SAN也有其缺点,就是文件管理系统仍然停留在服务器内,SAN本身仍然无法维护管理数据,如果要访问数据,仍然需要经过服务器;这个并不难理解,因为SAN本质上,只是加宽加长的DAS直连存储,所以使用SAN存储方案,仍然需要通过服务器操作系统,维护管理数据。


NAS(网络连接存储)

网络连接存储NAS,和SAN非常像,都是服务器经过存储网络访问外部存储设备,如下:



但是NAS和SAN有着本质区别,就是NAS存储设备本身自带存储操作系统(文件管理系统),即NAS存储设备本身是一个独立运行的存储系统,并不依赖于服务器操作系统,任何客户端都可以直接访问NAS存储设备,而不再需要通过服务器,访问存储设备。


综上,DAS,SAN和NAS三类存储系统,横向对比一下,可以发现

(1)DAS使用的是内部存储设备,内部存储设备主要采用JBOD磁盘簇(Just a Bunch of Drives);

(2)SAN和NAS使用的是外部存储设备,外部存储设备主要采用RAID磁盘阵列(Redundant Array of Independent Disks),SAN和NAS的本质区别,在于文件管理系统的位置,SAN的文件管理系统在服务器上,而NAS的文件管理系统直接在NAS存储设备上,所以NAS存储设备自成一个独立的存储系统;


02
存储接口技术


通过上一章节,我们知道存储设备类型众多,包括DAS,NAS和SAN;这些类型众多的存储设备,自然也就带来了类型众多的存储接口;所以,本章节归纳了,各存储设备(存储系统)常用的存储接口类型。


硬盘是主要的存储介质,按使用场景,主要分为桌面级硬盘和企业级硬盘两大类。


桌面级硬盘,主要采用IDE和SATA系列接口;IDE将硬盘控制器和盘体集成在了一起,随着技术进步,IDE接口有了进一步发展,于是更名为ATA接口;而SATA(Serial ATA),顾名思义就是串行ATA接口,以进一步提升硬盘接口速度(接口带宽);目前SATA接口,可以达到3Gbps,6Gbps等传输速率。


企业级硬盘,主要采用SCSI系列接口,如SCSI/FC/SAS等;SCSI硬盘性能强劲,可靠性高,可以提供160Mbps,320Mbps等速度;FC接口可以提供2Gbps,4Gbps等速度;SAS(Serial SCSI)就是串行SCSI接口,采用串行技术进一步提升速度,可以提供3Gbps,6Gbps等速度。


综上,对于桌面级硬盘,SATA接口(串行接口)是目前最高速硬盘接口;对于企业级硬盘,SAS或FC接口(串行接口)是目前最高速硬盘接口;相关硬盘规格如下:




03
存储性能指标


到这里为止,我们知道了存储设备(存储系统)类型,存储接口类型,那么如何衡量一个存储设备的性能呢,这里我们罗列了常用的存储性能衡量指标。


存储性能的衡量指标有很多,常见的衡量指标,如下所示:


容量:这个很容易理解,比如一块磁盘的容量是1TB,则四块磁盘的容量为4TB;需要注意的是,磁盘中存放的不仅仅是有效数据,还有校验或备份数据,校验或备份数据,是用来保护原始数据的。


所以一个磁盘阵列,包括四块磁盘,总容量4TB,里面有可能有1TB就是存储的校验或备份数据,实际有效数据只有3TB,所以有效容量也就是3TB。


速度:速度就是带宽,在上一个章节,我们已经大致了解了各类常见存储接口的速度(带宽),随着串行接口的普及(SATA接口,SAS接口等),存储接口的速度现在是越来越快。


IOPS:即存储设备每秒能够读(或者写)的次数,这几乎是存储设备最重要的性能衡量指标;提高IOPS的方法有很多,比如使用更好的硬盘(如固态硬盘,SSD),比如增加磁盘数量,并行读写。


可用性:存储的可用性,就是存储设备在一年的时间里,可用时间占全年时间的比率,比如我们通常说的3个9(即99.9%),指全年的99.9%时间内,存储设备都是可用的;换言之,全年故障时间,要在全年时间的0.1%内。



04
RAID冗余磁盘阵列


之前章节讲述的存储设备,无论是DAS,NAS,还是SAN,实际都是存储系统,它们都可以包含多块磁盘,比如一个NAS存储系统,存储容量10TB,实际包含100块存储磁盘,每块磁盘100GB存储容量;存储系统所包含的磁盘数量众多,那么数量众多的磁盘之间,如何组织排列,就是一门很大的学问了,这个学问,实际就是RAID磁盘阵列技术。


磁盘阵列可以将多块磁盘组合在一起,以极大的提高磁盘的并行读写速度,但是仅仅提高磁盘读写速度(访问存储速度)还不够,我们还想要保护磁盘阵列上的数据,必要时能恢复数据,这就是冗余磁盘阵列技术,也就是RAID技术。


在早期,我们一般都是使用单个存储设备,但是单个存储设备的缺点很明显,包括:


1) 存储容量有限

2) 存储访问速度有限

3) 存储设备无容错性


于是人们开发了RAID磁盘阵列技术,以解决上述三类问题:

1) 因为是磁盘阵列,可以灵活添加或去除磁盘,实现磁盘阵列存储容量的弹性伸缩;

2) 因为是磁盘阵列,可以并行访问多个磁盘,从而极大的提升存储访问速度;

3) 因为是磁盘阵列,多个磁盘之间可以基于算法,进行数据的冗余备份,如果有磁盘故障,可以根据备份数据,进行数据恢复;



05
RAID种类


依据磁盘阵列内磁盘的组织连接方式,RAID磁盘阵列可以分为JBOD磁盘簇和SBOD交换式磁盘捆绑。


JBOD磁盘簇,之前在讲解DAS直连存储时,有提到过;服务器内部的直连存储设备,就是经总线互连的JBOD磁盘簇;JBOD只是简单的通过总线,将多个磁盘互连起来,所以JBOD磁盘簇无法提供磁盘管理和RAID冗余保护功能;JBOD磁盘簇可以使用SCSI,SAS,FC等接口。


根据上述描述,不难发现JBOD磁盘簇,只是增加磁盘容量(通过总线互连多个磁盘),所以JBOD在RAID磁盘阵列技术里,已经失去了应用价值。


SBOD交换式磁盘捆绑,和JBOD的本质区别在于,JBOD只是通过总线简单的将多块磁盘互联在一起,而SBOD是通过全交换式的光纤架构将阵列内的所有磁盘互连起来,可以实现磁盘阵列内的磁盘驱动器,磁盘阵列和控制器之间的无阻塞光纤交换。


目前RAID磁盘阵列技术,即主要采用SBOD交换式磁盘捆绑;

最后,本篇文章主要讲述了存储的一些基本知识,包括存储设备类型,存储接口类型,存储性能指标,以及磁盘阵列技术,这些都是存储的基础知识,为我们在后续文章里,深入探讨存储虚拟化技术作好铺垫。


怎么样,今天的内容都学明白了吧,请大家持续关注,后续继续更新此专题哦~

*原创不易,记得点个「在看」,分享朋友圈再走哦~





- End -


最后,超级福利送给你!
云拆书直播!免费学!

文章转载自Cloud云说,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论