网络存储技术 智能信息处理

3.1.8 CPU、缓存和存储性能

很多用户在进行产品对比和设备选型的时候,经常以CPU和缓存的大小、主机端口的数量来判断存储设备性能的好坏。许多用户片面地会认为CPU快、缓存大、接口数量多的设备性能要好。因此在设备选型、编写招标技术要求时也经常以CPU和缓存的大小、主机端口数量来作为是否采用的重要甚至惟一标准。

存储的性能好坏不是简单地对比CPU和缓存大小的就可以区别好坏,如果你认为可以,那么你还没有真正了解存储,对存储还只是一知半解。

中高端的FC存储和iSCSI存储都是基于控制器架构的,存储性能的好坏关键在于控制内部的结构设计,设计先进的控制器可能处理效率非常高,因而并不一定要求很高速的CPU,也不需要很大的缓存。设计不好的存储即使采用了很好的CPU、很大的缓存,其性能也不见得就好。如在XX行业的网络中,为了获得700MB~800MB的大带宽,有的存储设备只需要2GB~4GB的缓存,而有的存储即使采用32GB的超大缓存,其带宽性能仍然很低。另外,增加缓存是否能提升性能还要看存储应用业务环境的好坏。在数据库、小文件应用环境中增大缓存会大幅度提高写带宽,当然前提是后端磁盘性能会达到极限。但对于大文件读取的应用环境,增加缓存所带来的性能提升幅度并不大。

NAS存储设备和一些中低端的iSCSI都是基于PC架构,其核心部分就是一台PC服务器,它的性能会因CPU和内存变化而发生变化,但变化也有一定的范围。这类存储性能一般取决于自身操作系统设计、文件系统中数据管理和数据检索等方面的设计,而不是CPU和缓存。先进高效的文件系统可使存储产品对外提供非常高的性能。NETAPP的高端NAS之所以性能好,就是因为它内部有一个非常高效的文件系统,而不是因为CPU好和缓存大。

另外,对于存储设备来讲,主机接口的数量很多时候只能表示存储设备区有一定的扩展能力,即可以直连更多的主机和交换机,而不能表示性能更高。存储产品的性能是由控制器决定的,但主机端口增加到一定数量,足以完全输出存储设备的最大性能时,增加再多的主机端口也不会增加性能。因此不能片面地相信主机端口越多性能就越高的说法。

希望用户在选择存储设备时,能够合理和正确地对待CPU、缓存和接口等技术参数,并根据自己系统的应用类型和带宽、IOPS等指标,合理地选择存储设备。同时拿到一定产品的说明书或产品的宣传彩页,千万别完全迷信上面所写的技术参数,更别相信8个4GB的FC就能提供3200GB带宽,8个以太网接口就能提供800MB带宽。

3.2 网络存储技术

3.2.1 网络存储技术分类

网络存储技术是基于数据存储的一种通用网络术语。网络存储结构大致分为3种:直连式存储(DAS:Direct Attached Storage)、网络存储设备(NAS:Network Attached Storage)和存储网络(SAN:Storage Area Network)。

直连式存储(DAS):一种直接与主机系统相连接的存储设备,如作为服务器的计算机内部硬件驱动。到目前为止,DAS仍是计算机系统中最常用的数据存储方法。

网络存储设备(NAS):一种采用直接与网络介质相连的特殊设备实现数据存储的机制。由于这些设备都分配有IP地址,所以客户机通过充当数据网关的服务器可以对其进行存取访问,甚至在某些情况下,不需要任何中间介质,客户机也可以直接访问这些设备。

存储网络(SAN):存储设备相互联接且与一台服务器或一个服务器群相连的网络。其中的服务器用作SAN的接入点。在有些配置中,SAN也与网相连。SAN中将特殊交换机当作连接设备。它们看起来很像常规的以太网交换机,是SAN中的连通点。SAN使得在各自网络上实现相互通信成为可能,同时带来了很多有利条件。

网络存储通信中使用到的相关技术和协议包括SCSI、RAID、iSCSI以及光纤信道。一直以来SCSI支持高速、可靠的数据存储。RAID(独立磁盘冗余阵列)指的是一组标准,提供改进的性能和/或磁盘容错能力。光纤信道是一种提供存储设备相互联接的技术,支持高速通信(将来可以达到10Gbps)。与传统存储技术,如SCSI相比,光纤信道也支持较远距离的设备相互联接。iSCSI技术支持通过IP网络实现存储设备间双向的数据传输,其实质是使 SCSI连接中的数据连续化。通过iSCSI,网络存储器可以应用于包含IP的任何位置,而作为Internet的主要元素,IP几乎无所不在。

各种存储结构的示意图如图3-6所示。

3.2.2 SAN存储相关基础知识(1)

1.关于HBA

HBA的全称为Host Bus Adapter,即主机总线适配器。

(1)总线适配器是什么呢?

首先要了解一下主机的结构,一台计算机内部多由两条总线串在起来(当然实际情况会有不同,这里只讨论常见的、简单的情况),一条总线叫系统总线,一条叫I/O总线。系统总线上接了CPU、memory、cache等,I/O总线上接的就是外围设备,如今最常见的就是PCI总线。这两条总线之间用桥接的芯片或者说电路连接起来。就好比一个城市里,有两条主干道,一条属于行政区,一条属于商业区,中间有个环岛,将两条主干道连接到了一起,系统总线就好比行政区里的主干道,而I/O总线就好比商业区的主干道。系统总线和I/O总线的带宽的单位都是以GB来记,但行政区的主干道和商业区的主干道相比,前者肯定更"核心"、更宽、更顺畅,设计的要求也高。在向公仆部门要求服务的时候,是要有一些接口的部门和程序的,而桥接芯片的作用就是连接和协调两条总线的工作。

虽然I/O总线的速度和系统总线的带宽相比要低很多,但是也是以GB来计量的,而外围设备的速度,往往只有几百MB,甚至几十KB而已,怎么协调工作呢?好比卖煎饼果子摊子不能直接戳到城市主干道上,怎么办?好办,在主干道边上开个2000平米的小吃城,把摊子都收进去好了。那么主机总线适配器的作用也就是如此,就是要把外设组织起来,连接到I/O总线上去。HBA就是指Host和I/O BUS直接的一个适配器,也好比一个水管工常说的"双通"。

(2)常见的HBA有哪些呢?

比如显卡、网卡、SCSI卡、1394卡等。这里主要介绍FC HBA和ATA&IDE。通常说的Emulex的LP9002、Qlogic的QLA2340都是FC HBA卡,就是将Fibre Channel的设备和I/O总线连接起来的适配器。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),好比一家机构,挂多个牌子,有的时候一块卡有两条通道,好比一家公司有两套人马。

2.关于lun

(1)lun的概念

lun的全称是logical unit number,也就是逻辑单元号。SCSI总线上可挂接的设备数量是有限的,一般为6个或者15个,可以用target ID(也称SCSI ID的)来描述这些设备,设备只要加入系统,就有一个代号,在区别设备的时候,只要说序列号就可以了。

而实际上需要描述的对象,是远超过该数字的,于是引进了lun的概念,也就是说lun id的作用就是扩充了target id。每个target下都可以有多个lun device,通常简称lun device为lun,这样每个设备的描述就由原来的target x变成target x lun y,那么描述设备的能力就增强了。就好比,以前你给别人邮寄东西,写地址的时候,可以写:xx市人民大街54号xxx(收),但是自从高楼大厦越来越多,你不得不这么写:xx市人民大街54号xx大厦518室xxx(收)。

所以可以总结一下,lun是为了使用和描述更多设备及对象而引进的一个方法。

(2)lun是什么呢?

lun id不等于某个设备,只是个号码而已,不代表任何实体属性,在实际环境里,碰到的lun可能是磁盘空间、磁带机或者是media changer等。

lun的神秘之处(相对于一些新手来说)在于,它很多时候不是什么可见的实体,而是一些虚拟的对象。比如一个阵列柜,主机那边看作是一个target device,为了某些特殊需要,要将磁盘阵列柜的磁盘空间划分成若干个小的单元给主机来用,于是就产生了一些什么逻辑驱动器的说法,也就是比target device级别更低的逻辑对象,人们习惯把这些更小的磁盘资源称之为lun0、lun1、lun2…。而操作系统的机制使操作系统识别的最小存储对象级别就是lun device,这是一个逻辑对象,所以很多时候称之为logical device。

有人说,我的windows里就认到一个磁盘,没看到什么lun的说法,lun是不是物理磁盘(physical disk)呢?回答是否定的,只要注意,磁盘的属性里就可以看到有一个lun的值,只是因为你的disk没有被划分为多个存储资源对象,而将整个磁盘当作一个lun来用,lun id默认为零。

网络存储技术 智能信息处理
曾经碰到过这样的问题,比如有人问,我们有一个磁盘阵列,连到了两个主机上,我们划分了一个lun给两个主机,然后我们想,先在操作系统将磁盘分为两个区,让两个主机分别使用两个分区,然后再出现某一台主机宕机之后,使用集群软件将该分区切换到另外一个主机上去,这样可行吗?答案也是否定的,集群软件操作的磁盘单元是lun,而不是分区,所以该操作是不可行的。当然,在一些环境下,一般也是一些要求比较低的环境,可以在多个主机上挂载不同的磁盘分区,但是这种情况下,实际上是没有涉及磁盘的切换的,所以在一些高要求的环境里,这种情况根本就不允许存在。

还要说明的地方是,在有些厂商和有些产品的概念里,lun id被绑定到了具体的device上,比如IBM的一些带库,整个带库只有一个target ID,然后changer、tape drive被分别分配为lun0、lun1、lun2…但是要注意到,这只是产品做了特别设计,也是少数情况。

图3-6 各种存储架构示意图

3.2.2 SAN存储相关基础知识(2)

(3)存储和主机的电气独立时代的lun的概念

在磁盘阵列和磁带库大行其道的时代,存储越来越智能化,越来越像一个独立的机器,实际上存储和主机的电气独立本来就是一个必然趋势,在存储越来越重要的时代,存储要独立出来是必然的事。

如果把存储当作一个独立的主机,理解起来就很简单了。说到lun的概念的时候,就要分为两个层面。一个层面就是在阵列这个机器的OS识别到的范围,一个层面就是服务器的OS识别到的范围。这两个层面是相对独立的,因为如果把存储当作一个主机来看,那么它自然有自己的device、target、lun之说,而服务器也有自己的device、target、lun之说。另一方面,这两个层面又是相互关联的,一个阵列的控制系统,大多都有虚拟化的功能,阵列想让主机看到什么样的内容,主机才能看到相应的内容。当然,服务器识别到的最小的存储资源,就是lun级别的。那么主机的HBA卡看到的存储上的存储资源就主要靠两个设备来定位,一个就是存储系统的控制器(target),一个就是lun id,这个lun是由存储的控制系统给定的,是存储系统的某部分存储资源。

(4)lun masking、lun mapping

有了独立的磁盘阵列之后,服务器只要看到存储的控制系统,就有可能使用磁盘阵列的磁盘资源,但是磁盘阵列不可能只为某一个服务器来使用,所以它必须管制主机使用某部分磁盘资源。这个管制分为两个部分:一部分就是lun mapping,类似于绿色通道,就是保证服务器能看到某部分存储资源;一部分就是lun masking,类似于警戒线,就是保证服务器只可访问给它分配的存储资源,不可访问没分配给服务器的资源。

实现lun masking和lun mapping有3种方法,一个是基于存储控制系统来设置,一个是基于存储交换系统来设置,一个是基于服务器OS来设置。

基于存储控制系统的设置是比较常见的设置,很多磁盘阵列的控制系统本身就能设置lun被某服务器看到,比如FastT的partition功能。

基于存储交换系统的设置也是一种常用的方法,比如常说的zoning。

基于服务器OS的设置,比较少采用。

(5)lun的多路径(multi-path)

现在,存储网络越来越发达,一个lun有多条通路可以访问也不是新鲜事了。服务器使用多个HBA连接到存储网络,存储网络又可能是由多个交换设备组成,而存储系统又可能有多个控制器和链路,lun到服务器的存储网络链路又可能存在着多条不同的逻辑链路。那么,必然的,同一个physical lun在服务器上必然被识别为多个设备。因为OS区别设备用的是总线、target id、lun id,只要号码不同,就是不同的设备。

由于上面的情况,多路径管理软件应运而生,比如emc的powerpath,这个软件的作用就是让操作系统知道哪些操作系统识别到lun实际上是一个真正的physical lun,具体的做法就是生成一个特别的设备文件,操作系统操作这个特殊的设备文件。设备文件+driver+firmware的一个作用,就是告诉操作系统该怎么使用这个设备。就是说,多路径管理软件从driver和设备文件着手,告诉了操作系统怎么处理这些身份复杂的lun。

3.关于备份(Backup)和高可用性(High availability)

备份,从字面的意思来理解,其实就是现时存在和应用的一个实体的后备实体。

高可用性,即硬件的环境、设施、数据、应用系统等,在复杂环境下可用的能力和可能达到的一个较高的值;在现实世界里,都讲究稳定、可靠,所以经常在计算机环境设计里,涉及高可用性和备份等元素。

对于备份主要说以下几个方面。

(1)设备的备份

设备的备份,也就是除使用的设备之外,采取相同或类似的设备做后备。

比如在服务器上采用冗余电源,也叫后备电源,使用单独的硬盘来做RAID的备用盘,也叫热备盘。

如果采取单独的一台服务器来做后备,这就成了主机的备份,主机的备份有很多种方式,比较著名的就是所谓的cluster、双机热备和双机容错,它们有一个共同的特点,就是都是为了实现主机的备份,即某一个主机失效了,由另外一个主机顶替它来运行。实现主机热备的软件有很多,比如IBM的HACMP、HP的MCSG、SUN的sun cluster、Compaq的Ture Cluster、Veritas的VCS、EMC的autostart、ROSE HA等。

(2)数据的备份

数据的备份,就是在现时使用的数据之外,实现或设置另外一份不同物理体现的、内容相同的有效数据复制,比如将生产数据复制到磁带上,就是一种数据备份方式。比如将生产数据复制到磁盘的另一个分区、另一个文件系统或者复制到别的主机的磁盘上等,都是一种数据备份的方式。

实现数据备份的软件有很多,比如一些磁带操作的小工具,tar、cpio等,大的工具软件有EMC Networker、Symantec Netbackup、CommVault、tapeware等,数据复制的工具就更多了,操作系统的复制命令、EMC replicator、srdf等。

(3)应用系统的备份

应该说应用系统的备份,包含了以上两种备份,因为一个完善的应用系统,其设备和数据都是要求有备份的,除此之外,作为一个应用系统,它还包含了业务程序、人员、业务逻辑、外部环境等一系列让应用运行的内容。

在这个层面,就有一个远程容灾。远程容灾,就是在生产系统环境之外,在相隔较远的物理空间,构建相同或类似的一个应用系统,以达到在必要的时候顶替原生产系统工作的 目的。

要实现远程容灾的目的,除了外部环境,比如机房、电力、后勤保障、人员配备、业务程序之外,我们比较着重的一个环节,就是数据的问题,也就是在两个系统之间要保证数据的相对一致,实现这个目标的方法有很多,比如磁盘阵列之间的卷复制、两个主机之间文件系统上的复制等。当然,在一个系统里,把数据用磁带导出来,快递到另外一个系统地点,再用磁带把数据导进去,也不能说不是一个办法,但是这样操作,经常会和业务的逻辑相违背。

可用性是指在各种复杂环境下,数据、应用等计算资源都可以保持使用的能力和可能性。比如服务器配备冗余电源,就提高了服务器的可用性,即一个电源工作不正常或者能力不够的时候,服务器不受影响。再比如,磁盘阵列采用双控制器,当某个控制器和链路工作不正常的时候,数据的访问能平滑地过渡到另外一个控制器上和链路上,这也提高了数据和存储设备的可用性。

那么高可用性就是一切为了提高系统可用性的实现方法和结果,就是cluster或者双机。为了实现生产的应用系统的高可用性,其中一个环节就是实现服务器的高可用性,就是某服务器失效或者能力不足时,应用能平滑地过渡到另外的主机上,也就是说对于应用系统来说,服务器保证了相对的可用性。

那备份和高可用性有什么区别呢?这是两个不同的概念,它们的着眼点是不同的。备份只是保证了有后备,而高可用性则是为了保证应用的尽快恢复。打个比方,备份就好比买保险,买保险不能保证平安无事,但是肯定能减轻损失。高可用性,就是安全气囊、ABS,能快速地重新开始或者说将危险消弭于萌芽时刻。所以说做备份和提高可用性,两手都不可放松,也不互相矛盾。

  

爱华网本文地址 » http://www.413yy.cn/a/25101012/111292.html

更多阅读

神经网络的特点与功能 卷积神经网络 特点

一、神经网络的特点1.信息处理的并行性、信息存储的分布性、信息处理单元的互联性、结构的可塑性人工神经网络是由大量简单处理元件相互连接构成的高度并行的非线性系统,具有大规模并行性处理特性。虽然每个处理但与的功能十分简单

课堂观察技术2 信息技术课堂观察表

课堂观察技术(2)四、课堂教学观察诊断技术用来收集课堂活动信息的观察方法很多。这些方法基本可分为两大类:定量方法和定性方法。所谓定量方法,就是观察者使用事先设计好的观察量表或者登录图,按照事件的类型或时间的顺序逐一记录事件发

信息技术管理 信息技术管理干什么的

主要介绍了企业的信息需求、信息技术、信息系统及相应风险控制与管理。基本内容框架第一节 企业的信息需求一、信息需求概念数据:是指根据经验、观察、实验、计算机内部程序以及一组假设条件所收集到的事实集合体。数据包含数字、词

声明:《网络存储技术 智能信息处理》为网友花先生分享!如侵犯到您的合法权益请联系我们删除