---------------------------------------------------------------------------------------------------
1.网络存储主要技术
2.主要协议和相关技术
3.文件系统
4.RAID技术
5.数据复制与容灾
6.备份技术
7.windows相关
8.linux相关
9.存储网络知识
10.存储I/O
11.云存储
12.其他存储
13.资料
--------------------------------------------------------------------------------------------------------------------------------
1.网络存储主要技术
1.1 NAS
NAS简介
在20世纪80年代初,英国纽卡斯尔大学布赖恩.兰德尔教授 ( Brian Randell)和同事通过“纽卡斯尔连接”成功示范和开发了在整套UNIX机器上的远程文件访问。继“纽卡斯尔连接”之后, 1984 年Sun公司发布了NFS协议,允许网络服务器与网络客户分享他们的存储空间。90年代初Auspex工程师创建了集成的NetApp文件管理器,它支持windows CIFS和UNIX NFS协议,并有卓越的可扩展性和易于部署,从此市场有了专用NAS设备。在短短几年中,NAS凭借简便高效应用的中心思想,逐渐成为网络数据存储方案的主打设备之一。目前EMC公司 Celerra产品拥有优异的性能及多功能性,在全球NAS市场处于领导地位。
NAS概念
NAS(Network-Attached Storage,网络附加存储)是指连接到计算机网络的文件级别计算机数据存储,可以为不同客户端提供数据存取。
NAS被定义为一种特殊的专用数据存储服务器,包括存储器件(一个或多个硬盘驱动器的网络设备,这些硬盘驱动器通常安排为逻辑的、冗余的存储容器或者RAID阵列)和内嵌系统软件,可提供跨平台文件共享功能。NAS通常在一个LAN上占有自己的节点,无需应用服务器的干预,允许用户在网络上存取数据,在这种配置中,NAS集中管理和处理网络上的所有数据,将负载从应用或企业服务器上卸载下来,有效降低总拥有成本,保护用户投资。
NAS本身能够支持多种协议(如NFS、CIFS、FTP、HTTP等),而且能够支持各种操作系统。NAS是真正即插即用的产品,并且物理位置灵活,可放置在工作组内,也可放在混合环境中,如混合了Unix/Windows局域网的环境中,而无需对网络环境进行任何的修改。NAS产品直接通过网络接口连接到网络上,只需简单地配置一下IP地址,就可以被网络上的用户所共享。
NAS特点
与采用存储区域网络(SAN-Storage Area Network)的方案比较,采用网络附加存储(NAS-Network-Attached Storage)结构的方案具有以下特点:
1). 以网络为中心,开放的标准协议支持
区别于存储区域网络(SAN)的设计方案,网络接入存储(NAS)的模式以网络为中心。该方案利用现有的以太网网络资源来接入专用的网络存储设备,而不是另外再部署昂贵的光纤交换机网络来连接传统的存储设备,这样保护了用户对以太网的投资。
近年来,千兆以太网的传输带宽(1000Mbps,为125MB/s)已经得到普及,并且有望朝万兆以太网发展。届时,以太网的传输带宽将会是10倍于SAN赖以生存的各种SCSI和 Fiber Channel协议的传输带宽。EMC公司Celerra产品支持目前最流行的TCP/IP网络协议,而使用的NFS和CIFS文件服务协议也是业界标准协议,充分做到设备的兼容性。
2). 独立的操作系统
Celerra的DART操作系统具备自主知识产权,专注于文件系统的传输。该操作系统功能强大,性能优越,保证了文件系统高速可靠的传输。 Celerra后端通过SAN网络连接后端存储设备,拥有多条链路冗余,避免单点故障,保障了数据安全性。用户的数据只要保存一个拷贝,即可被前端的各种类型的主机所使用,因此,具备主机无关性。Celerra的DART操作系统对于不同操作系统Unix和Windows同样保证了数据共享,并且各自的访问权限亦可得到相应的保证。
3). 安装及管理简便
NAS无需服务器直接上网,而是采用面向用户设计的、专门用于数据存储的简化操作系统,内置了与网络连接所需的协议,整个系统的管理和设置较为简单。Celerra只要现有的网络具有空闲的网口,在无需关机的情况下,即可提供给前端不同类型主机进行访问,无需在主机上安装任何的软硬件。
4). NAS底层协议
NAS采用了NFS(Sun)沟通Unix阵营和CIFS沟通NT阵营,这也反映了NAS是基于操作系统的“文件级”读写操作,访问请求是根据“文件句柄+偏移量”得出。
1.2 SAN
SAN(Storage Area Network的简称)直译过来就是存储区域网络,它采用光纤通道(Fibre Channel)技术,通过光纤通道交换机连接存储阵列和服务器主机,建立专用于数据存储的区域网络。SAN网络存储是一种高速网络或子网络,SAN存储系统提供在计算机与存储系统之间的数据传输。一个SAN网络由负责网络连接的通信结构、负责组织连接的管理层、存储部件以及计算机系统构成,从而使SAN技术保证数据传输的安全性和力度。SAN具有以下几点优势:
1.SAN的可扩展性意味着你有少数的磁盘不受连接到系统上的限制。SAN可以增长到数百个磁盘,但是普通物理服务器的极限只有十几个。
2.SAN的性能不会受到以太网流量或本地磁盘访问量的制约。数据通过SAN从自己的私有网络传送,隔开用户流量、备份流量和其他SAN流量。
3.在正确的配置环境下,SAN数据被区域划分。用户保存数据的分区和其他人处在同样的SAN.SAN区域隔离就如同将UNIX服务器和Windows服务器连接到相同的SAN上,但这两种服务器上的数据访问是不同的,事实上,Windows系统不能“看到”UNIX的数据,反之亦然。
4.SAN系统不需要重新启动就能添加新的磁盘,更换磁盘或配置RAID组。数据流完全避开服务器系统,SAN同样增加了数据备份和恢复性能。
5.分区也可以在SAN上将你的工作负载分离。不仅是将你的数据分离保护,而且对那些影响应用程序性能的不相关的工作负载采取屏蔽。在适当的区域应用SAN共享从性能上讲不是问题。
6.SAN有个无可比拟的优势,就是存储连接距离为10公里距离(约6英里)。不是说你一定会用到这个优势,但当你需要的时候,它就能显现出来。具有距离优势,可以将数据存储到一个独立的位置,从系统服务中脱离出来。
7.在如SAN这样的存储网络上的自动精简配置的空间利用效率,要比本地存储的来得高。当一个系统需要更多的存储资源时,SAN将动态分配资源。这意味着物理系统可以享受自动精简配置,就像虚拟化那样。
1.3 SAN和NAS的区别
1.4 SCSI 访问控制原理
SCSI-2 Reserve(预留)/Release(释放)/Reset(重置)
SCSI-2协议中客户端访问lun过程如下:
1、客户端向lun发起预留操作
2、预留操作成功后,客户端获得lun操作权限;预留失败,提示预留冲突,会继续尝试,直到预留成功。
3、客户端操作完毕后,执行释放操作,其他客户端可以预留。
SCSI-2访问控制主要缺点有:
1、预留操作基于路径。预留和释放必须由相同的客户端完成,一台主机不能释放另外一台主机的预留,同一主机HBA卡不能取消相同主机另外一块HBA的预留。
2、预留无法长久保留。主机重启将会丢失预留信息。
3、如果lun已经被预留,其他主机无法再预留。如果其他主机要想获得lun操作权限,必须对lun进行重置,重置操作可能会导致数据丢失。重置后释放掉lun现有的预留,重置操作由lun主动发起,原来预留主机并不知晓。
SCSI-3 Persistent Reserve (PR)/ PREEMPT(抢占)
SCSI-3协议引入PGR(persistent group reservation)功能。在访问lun之前,客户端首先向lun注册(registration)一个预留密钥(reservation key),注册成功后客户端可以尝试进行永久预留(reserve),永久预留成功后就可以获得lun操作权限。预留密钥是一串16进制的ASCII码,最长8个字节。永久预留一共6种类型,由1、3、5、6、7、8数字表示。包括两种操作类型和三种客户类型,操作类型包括写排它和所有访问排他,客户类型包括所有客户端、已注册客户端和所属客户端。数字与永久预留类型对应关系如下:
1-> write exclusive
3-> exclusive access
5-> write exclusive - registrants only
6-> exclusive access - registrants only
7-> write exclusive - all registrants
8-> exclusive access - all registrants.
不同注册类型对应不同访问权限。与SCSI-2不同,SCSI-3释放操作根据预留密钥。不同客户端可以使用相同密钥或是不同密钥进行预留,具体可以结合永久预留类型决定。客户端可以通过抢占来获取已被永久预留的lun访问权限。SCSI-3抢占和SCSI-2重置不一样,抢占不会造成数据丢失。
SCSI-3关于PGR相关操作命令分为两大类:分别是PRIN和PROUT。PRIN主要用于查询,PROUT用于修改。SCSI命令执行过程中,需要明确该命令是哪种类型。
常见使用场景
1、 集群I/O Fencing
为了防止集群故障发生“脑裂”现象,2-节点集群可以通过SCSI-2 Reseve/Release触发I/O fencing来保证整个集群正常运行,是SCSI-2不适用于多-节点集群,多-节点集群可以使用SCSI-3 PGR。主流厂商集群套件都已经支持SCSI-3 PGR,比如:VCS、HACAMP、RHCS等。
2、 集群文件系统
集群文件系统需要保证多节点同时访问存储时的数据一致性,SCSI-2/SCSI-3都可以满足,当一个节点尝试访问一个已经被预留的存储就会产生访问权限冲突。SCSI-3 PGR相比SCSI-2 Reserve/Release更能够减少访问权限冲突。
小结:
SCSI-2具体基本访问控制能力,但是无法满足Active/Active多路径环境和集群多节点访问存储的需求。SCSI-3通过引入客户端注册和操作权限分类概念,强化并行访问权限控制,弥补SCSI-2的不足。