【存储】存储基本概念(lun,volume,HBA,DAS,NAS,SAN,iSCSI,IPSAN、存储池和存储卷)
目录
什么是KVM(虚拟化软件)
KVM 就是linux环境下的“VMware ” ,对比Windows下的VMware worstation。
KVM功能强大,定制性高,只要入了门,绝对是功能强大。用来作云计算不错。不过就是操作性差了点。没有vmware workstation方便,毕竟,workstation是个人用的,可能不适合企业吧,没接触过vsphere。
存储池和存储卷的区别(pool vs Volume)
将池理解成一个逻辑硬盘(可以一对一来自一个物理硬盘,也可以 2 个物理硬盘做 RAID1 形成这个逻辑硬盘,也可以多个硬盘 RAID0 或者 RAID5 形成,等等类似)
卷是在上面这个逻辑硬盘上,再逐个建立使用空间,有点像windows 的逻辑分区或逻辑盘符
一个或若干个物理硬盘组建成一个存储池,一个存储池又建立了一个或若干个卷或者说存储空间,相当于windows下的分区。
LUN (Target ID不够用,用LUN扩充)
一、LUN的概念
LUN的全称是Logical Unit Number,也就是逻辑单元号。我们知道SCSI总线上可挂接的设备数量是有限的,一般为6个或者15个,我们可以用Target ID(也有称为SCSI ID的)来描述这些设备,设备只要一加入系统,就有一个ID,我们在区别设备的时候,只要说几号几号ID就ok了。
而实际上我们需要用来描述的对象,是远远超过16,于是我们引进了LUN的概念,也就是说LUN ID的作用就是扩充了Target ID。
每个Target下都可以有多个LUN Device,我们通常简称LUN Device为LUN,这样设备的描述由Target x变成Target x LUN y,显而易见的,我们可以描述更多的设备了。
LUN ID不等于某个设备,只是个号码而已,不代表任何实体属性,在我们的实际环境里,我们碰到的LUN可能是磁盘空间,可能是磁带机,或者是media changer等等。
二、到底什么是LUN?
LUN的神秘之处在于,它很多时候不是什么可见的实体,而是一些虚拟的对象。
比如一个阵列柜,主机那边看作是一个Target Device。
为了某些特殊需要,我们要将磁盘阵列柜的磁盘空间划分成若干个小的单元,于是就产生了比Target Device级别更低的逻辑对象(逻辑驱动器),习惯称之为LUN0、LUN1、LUN2…。
而操作系统的机制使然,操作系统识别的最小存储对象级别就是LUN Device,这是一个逻辑对象,所以很多时候被称为Logical Device。
有人说,我的Windows里,就认到一个磁盘呀,没看到什么LUN的说法,是不是LUN=Physical Disk呢?回答是否定的,只要你注意,磁盘的属性里就可以看到有一个LUN的值,只是因为你的Disk没有被划分为多个存储资源对象,而将整个磁盘当作 一个LUN来用,LUN ID默认为零,如此而已。
还要说明的地方是,在有些厂商和有些产品的概念里,LUN ID被绑定到了具体的Device上,比如IBM的一些带库,整个带库只有一个Target ID,然后changer,tape drive被分别分配为LUN0、LUN1、LUN2…,但是我们要注意到,这只是产品做了特别设计,也是少数情况。
(摘自:https://blog.csdn.net/liukuan73/article/details/45506441)
VOLUME (在LUN上划分)
LUN是对存储设备而言的,volume是对主机而言的。
选择存储设备上的多个硬盘形成一个RAID组,再在RAID组的基础上创建一个或多个LUN(一般创建一个LUN)。许多厂商的存储设备只支持一个RAID组上创一个LUN。此时LUN相对于存储设备是一个逻辑设备。当网络中的主机连接到存储设备时,就可以识别到存储设备上逻辑设备LUN,此时LUN相对于主机来讲就是一个“物理硬盘”,与C盘D盘所在IDC或SCSI硬盘的性属是相同的。在该“物理硬盘”上创建一个或多个分区,再创建文件系统,才可以得到一个VOLUME。
此时VOLUME相对于主机是一个逻辑设备。
从容量大小方面比较VOLUME,分区、LUN、RAID的关系如下:
VOLUME = 分区 ≤ 主机设备管理器中的磁盘 = LUN ≤ RAID ≤ 存储设备中硬盘的总容量。
上述只是针对一般情况,VOLUME也只是针对主机来讲。个别厂商对LUN和VOLUME定义与普通厂商的定义不同,甚至会起一些奇怪的名称,这些名称即使是存储行业的资深人士也不一定全明白。不过只要你能分清楚其实质就行。
原文链接:https://blog.csdn.net/liukuan73/article/details/45506441
HBA (总线适配器)
HBA,即主机总线适配器英文“Host Bus Adapter”缩写。是一个在服务器和存储装置间提供输入/输出(I/O)处理和物理连接的电路板或集成电路适配器。因为HBA减轻了主处理器在数据存储和检索任务的负担,它能够提高服务器的性能。一个HBA和与之相连的磁盘子系统有时一起被称作一个磁盘通道。
a、总线适配器是个什么东西呢?
我们首先要了解一下主机的结构,一台计算机内部多半由两条总线串起来(当然实际情况会有不同,这里只讨论常见的,简单的情况),一条总线叫系统总线,一条叫I/O总线。系统总线上接了CPU,Memory,cache什么的,I/O总线上接的就是外围设备,现如今最常见的就是PCI总线了。这两条总线之间用桥接的芯片或者说电路连接起来。举个形象的例子,就好比一个城市里,有两条主干道,一条属于行政区,一条属于商业区,中间有个环岛,将两条主干道连接到了一起,系统总线就好比行政区里的主干道,而I/O总线就好比商业区的主干道。系统总线和I/O总线的带宽的单位都是以Gbyte来记,但是显而易见的是,行政区的主干道和商业区的主干道相比的话,前者肯定更“核心”,更宽,更顺畅,设计的要求也高。 我们知道,在向公仆部门要求服务的时候,是要有一些接口的部门和程序的,而桥接芯片的作用就是连接和协调两条总线的工作的。
虽然I/O总线的速度和系统总线的带宽相比要低很多,但是好歹也是以G来计量的,而我们知道外围设备的速度,往往只有几百兆,甚至几十k而已,怎么协调工作呢?好比卖煎饼果子摊子不能直接戳到城市主干道上,怎么办?好办,在主干道边上开个2000平米的小吃城,把摊子都收进去好了。那么主机总线适配器的作用也就是这个,我们就是要把外设组织起来,连接到I/O总线上去!HBA就是指Host和I/O BUS直接的一个适配器,也好比一个水管工常说的“双通”。
b、常见的HBA有哪些呢?
比如显卡,网卡,scsi卡,1394卡等等。我要拿出来说的就是FCHBA和ATA&IDE。我们通常说的什么Emulex的LP9002,什么Qlogic的QLA2340都是FCHBA卡,就是将Fibre Channel的设备和IO总线连接起来的适配器。ATA也是一种适配器技术,我们PC主板上的ATA接口,就是一个磁盘适配器的对外接口,要强调的就是,ATA说的是适配器技术,IDE是说得存储外设技术,比如我们可以说IDE硬盘,IDE光驱,说ATA接口,但是说IDE接口,ATA硬盘就不时那么合适了,虽然很多情况下,大家都习惯把他们混在一起说。
描述HBA的时候,有几个主要的规范要说一下
> 一个承上,就是说,HBA和IOBUS怎么连,我们经常说的PCI接口卡,就是指这个HBA卡是要插在PCI BUS上的PCI slot上的,但是现在的计算机上,不仅仅只有PCI总线而已,大家碰到的时候留意。
>一个启下,就是说HBA要和外设怎么连,这样的规范就很多了。
>再说HBA本身,比如带宽,比如运行机制(protocol等),独立处理能力等等
Tips:有时候我们看到的一块卡,看到的实际是一个物理的卡,有的时候实际上是多个Adapter,好比一家机构,挂多个牌子,有的时候,一块卡有两条通道,好比一家公司,有两套人马。
原文链接:https://blog.csdn.net/liukuan73/article/details/45506441
DAS/NAS/SAN
区别见:DAS、SAN、NAS---https://blog.csdn.net/bandaoyu/article/details/122543752
iSCSI(互联网小型计算机系统接口)
见:
iSCSI Target(tgt) |什么是iSCSI target|SCSI协议--https://blog.csdn.net/bandaoyu/article/details/121578419