现在把我学存储备份的一些经验共享,曾经绕了不少弯道,请教了不少高手,挨了不少熊,不容易学了些东西,还不知道对不对,希望大家多纠正错误,就是这个目的了。(此帖由冬瓜头qq122567712原创,转贴请注明,谢谢!痛斥剽窃行为!)
关于为什么要存储备份,我就不说了,见谅!(此帖由冬瓜头qq122567712原创,转贴请注明,谢谢!痛斥剽窃行为!)
现在企业部署数据网络,一般有三中方式,先说das,das就是直接把存储设备挂在各个节点上,数据分别存放在各个节点的存储设备上,比如,一个hub接着5台pc,80G硬盘,这就叫das,其实没什么特别的,我要存文件,可以放在我的机器上,也可以放在其他机器的共享盘上,就是把分区共享,都会吧,呵呵,这就是das了,没法管理,因为太分散,每个人都可以把共享关掉,你没辙,呵呵。(此帖由冬瓜头qq122567712原创,转贴请注明,谢谢!痛斥剽窃行为!)
再说说nas,nas其实就想当一台拥有超大硬盘容量的pc机在以太网络上放着,当成文件服务器,就这样,只不过,它单独做成和pc不一样的外观,磁盘插槽较多,一般做成raid5,一般内嵌windows storage server(有的也是普通2000的server)操作系统,响应以太网的客户请求,每台节点都能看见,当作文件服务器用,可以作为windows,unix,macos,netware等系统的网络文件系统。这就是nas。(此帖由冬瓜头qq122567712原创,转贴请注明,谢谢!痛斥剽窃行为!)
san是与前两者截然不同的所谓的“网络”,其实不是传统意义上的网络,它只是把scsi数据线延长、用fc(光纤通道)协议封装,以便传输更快更远。并且做成交换模式而已,所以叫存储区域网络,而不是主机网络,只能跑数据流,而不像以太网络那种真正的网络,san就是一个“后方网络”,也可以叫第二网络,第一网络是lan,lan直接面对客户端请求,san的诞生是为了跑数据流更快。(此帖由冬瓜头qq122567712原创,转贴请注明,谢谢!痛斥剽窃行为!)
以前传统的通过Lan的数据存储方式是:单独设立一台备份服务器,又称Backup Server,安装备份服务器端软件(在安装的同时,自动安装了media server,也就是说backup srever也是media server);存储磁盘阵列或者磁带机单独连接在一台机器上,作为介质服务器(拥有备份介质的节点),安装Media Server端软件,这台介质服务器一般就是backup server兼作,除非想实施多介质服务器分流;其他需要备份数据的节点安装备份客户端软件(也称client agent代理);在服务端制定备份策略,客户端负责与服务端的通信,包括节点的目录结构,状态等,备份开始时,服务端发起备份,客户端接受备份指令,把节点数据通过以太网lan,传给Media Server,然后Media Server主机将接受到的数据写到他连接的存储设备上。在基于LAN的备份中, 也可以有多个media server, 可以指定那些client 数据通过特定media server写到相应的存储设备上。这样,以太网将承受很大负担,不但接受访问请求通过lan,备份数据流也通过lan走,影响了性能。(此帖由冬瓜头qq122567712原创,转贴请注明,谢谢!痛斥剽窃行为!)
现在,san的诞生解决了只有一个lan的紧张状态,使得生产前线和后台备份分开,走两个网络,互不干扰,当然也可以用第二套以太网络代替san,但是san是基于光纤链路的,速度快,一般结构是:中心一台光纤交换机,存储阵列和磁带设备都单独连接到光交换机上,磁带设备对任何节点可见,任何节点都可以访问他们(当然要装驱动),所以任何节点都拥有备份介质,都是Media Server。对于主机,要有hba卡,用于接光纤,就像用以太网卡接双绞线一样。hba卡有个wwn号,就类似与网卡的mac地址。磁盘阵列上一般要先划多组raid,划好后,划分逻辑卷大小,一个逻辑卷就叫一个lun,一般一个lun不能跨raid组,这些lun可以设定让哪些wwn(hba卡对应的号码)看到,对应的主机开机后,便会认出新加物理磁盘(其实是阵列上的lun),在aix下,lun被认成vpath。(此帖由冬瓜头qq122567712原创,转贴请注明,谢谢!痛斥剽窃行为!)
san备份,同样需要一台备份服务器,安装服务器端软件,其他节点安Meida Server端软件,对于Veritas公司的说法,还要安装SSO选件,SSO是指:share storage option(共享存储选件,就是指san的环境),作用是用来仲裁共享的设备,因为san上的盘阵,磁带机都是对任何节点可见的,这样就需要来协调,不至于发生节点抢资源造成冲突的情况。同样服务端发起备份指令,客户端接收执行,但是这次,客户端直接将数据从本节点(media server,也是生产主机,客户机)写入备份设备,因为,san上,任何节点都能看到磁带库设备,都是Media Server,这就是所谓的lan free备份,如果有些数据可以直接从盘阵拷贝到磁带(盘阵和磁带库都独立的接到san交换机上),那么完全不用主机插手,叫做server free备份。(此帖由冬瓜头qq122567712原创,转贴请注明,谢谢!痛斥剽窃行为!)
下面是Veritas公司各种选件说明:
1. Remote Agent (CAL) 选件,就是所谓的client agent选件,包括windows、linux、netware、macos等版本。
2. 介质服务器选件,安装在介质服务器上的选件。
其中又包括:(此帖由冬瓜头qq122567712原创,转贴请注明,谢谢!痛斥剽窃行为!)
a. 中央管理服务器选件 (CASO)
为多台Backup Exec介质服务器提供简化的集中管理 。它是强大的可扩展解决方案,能够集中管理大量Backup Exec介质服务器的运行、负载平衡、容错、监控和报告。这些服务器可能位于Windows 数据中心或分布在整个网络,或者位于远程办公室。借助中央管理服务器选件,用户可以简单地增加和管理Backup Exec。
b.高级磁盘备份选件 (ADBO) (此帖由冬瓜头qq122567712原创,转贴请注明,谢谢!痛斥剽窃行为!)
通过基于磁盘的高级备份和恢复,包括合成备份、脱机备份,可以实现更快的备份和恢复,进行零影响的备份。 合成备份可以缩短备份时间,减少网络带宽需求,而且不会影响原始客户端。此外,合成备份使用户能够从一个备份映像进行快速的客户端恢复,而无需从多盘磁带和增量备份进行恢复。脱机备份功能能够在Backup Exec介质服务器上(而不是在远程计算机或生产主机上)处理备份操作,从而提高备份性能,解放远程计算机。(此帖由冬瓜头qq122567712原创,转贴请注明,谢谢!痛斥剽窃行为!)
c.ADVANCED OPEN FILE OPTION™ (高级打开文件选件)
确保本地或远程服务器上的文件在被使用过程中也能受到保护。VERITAS Backup Exec的Advanced Open File Option能够在卷的级别上处理打开的文件,并且无缝集成到Backup Exec软件中。使用本选件,您无需提前知道哪些文件是打开的,只需点击鼠标,设定预定备份即可。此外,它还能在一次作业中备份多个卷,利用依次创建各个逻辑卷在某个时间的快照来进行。在创建逻辑卷快照并进行备份之后,这个快照会在创建下一个逻辑卷快照之前删除。该选件提高了最小化快照所需静默时间的能力。(此帖由冬瓜头qq122567712原创,转贴请注明,谢谢!痛斥剽窃行为!)
d.DESKTOP AND LAPTOP OPTION (台式机和笔记本选件)
大多数企业都依靠用户手动将关键业务数据复制到服务器。如果用户没有遵照执行,存储在员工工作站、台式机、笔记本电脑上的大多数关键业务信息就得不到保护。DLO能够为台式机和笔记本电脑提供持续的数据保护,无论是在办公室,还是在路途中。这种选件不仅能够改进数据保护和效率,还使用户能够恢复自己的文件,保持多台台式机和笔记本电脑之间的同步,从而使所有用户的电脑都能保持最新的文件版本。Desktop and Laptop Option不需要专用的独立服务器,能够很轻松地集成到现有的IT基础设施和策略中,从而降低总投资成本。Backup Exec内部的全新推送式安装功能可以进行软件的集中部署。(此帖由冬瓜头qq122567712原创,转贴请注明,谢谢!痛斥剽窃行为!)
3. 各种数据库代理,如oracle代理,exchange代理,notes代理,这些代理能实现针对数据库或应用软件深层的比如表结构,某封邮件进行备份,而不只是文件层次的备份。(此帖由冬瓜头qq122567712原创,转贴请注明,谢谢!痛斥剽窃行为!)
4. INTELLIGENT DISASTER RECOVERY™ OPTION (智能灾难恢复选件)作用类似于ghost,能利用他生成系统恢复磁带或者光盘,当系统崩溃时,直接用磁带或者光盘启动系统,进行快速恢复。
5. LIBRARY EXPANSION OPTION™ (磁带库扩展选件)任何Backup Exec介质服务器都可以连接到不限数目的独立磁带机,或者在一个物理或虚拟磁带库、自动加载磁带机、介质更换机中的物理或虚拟的磁带机。但是,要使用这些超过一个磁带机的设备时,都需要购买另外的磁带库扩展选件(LEO)来支持每一个额外的磁带机。这个就有点赖皮了,呵呵。(此帖由冬瓜头qq122567712原创,转贴请注明,谢谢!痛斥剽窃行为!)
6. SAN SHARED STORAGE OPTION™ (SAN共享存储选件)(此帖由冬瓜头qq122567712原创,转贴请注明,谢谢!痛斥剽窃行为!)
借助这种脱离LAN的强大备份解决方案,多台分布式备份服务器能够集中通过交换式光纤存储网络或iSCSI 存储区域网络(SAN)连接的存储设备,提高性能、效率和容错率。SAN Shared Storage Option能够跨越多台共享设备来实现作业(来自多台Backup Exec服务器)之间的负载平衡。它能够改进性能、备份速度和集中的介质管理,有助于降低总投资成本。SAN Shared Storage Option是一种具有突破性的解决方案,可以提高大型高端存储环境的可管理性和性能。
这个就是SSO。(
小知识:作raid需要有raid卡,raid卡的作用是协调多块硬盘之间的数据走向,计算各个raid模式下,各硬盘应走多少数据。raid卡可以是集成在主板上,也可以单独一块pci卡。有的raid卡上面带硬盘接口,比如scsi,sata,ide,硬盘必须插到卡上;而有的raid卡不硬盘带插口,插到主板上,自动接管了硬盘通道,硬盘还是接到主板上。 不要将raid卡和scsi卡弄混,scsi卡是为了解决主板上没有scsi接口而生的,scsi硬盘需要接到scsi卡上或者主板的scsi口。有的scsi卡也集成了raid功能,就是二合一卡。
1. raid0 比如有两块盘,100M的文件,现在想把文件写到盘上,可以写到任何一块盘上,比如写到A盘,耗时10秒;现在如果这样,通过计算,把100M的数据分成两个50M,每个盘各写50M,这样总耗时:5秒,是不是快了,当然实际肯定高于5秒,至少比写到一块盘快。同样读数据也是这样,从两块盘并行读,是不是也必一块盘要快呢?这就是raid0,任何大于2块数量的磁盘就可以作raid0,如果磁盘容量不一样,比如一块40G,一块80G,不会浪费任何空间(仅限raid0模式),这样两块盘作raid0,总容量最后就是40G+80G=120G。一般情况,raid0容量=各个盘容量之和。raid0是所有模式中速度最快的。也是安全性最低的,因为数据都分割了存放,任意一块盘损坏,数据全部丢失。无任何安全性可言。
2. raid1 为了实现数据冗余,防止一块盘损坏,数据就全丢失的情况发生,将一份数据同时写到两块盘上,任何一块盘损坏,另一块块盘在线接管。所以raid1也叫镜像raid。是所有模式中速度最慢的,因为数据要同时写两块盘。但是安全性是最高的。无任何速度可言。任意偶数块盘就可以作raid1。如果磁盘容量不一样,最终按照容量最小的盘算。raid1总容量=最小容量X磁盘数量÷2。
3. raid0+1(也称raid10) 比如这样:两块盘先作raid0,然后再找两块盘,将原来做好的raid0中数据复制一份到自己,与原来的raid0做成raid1;或者两块盘先作raid1,然后再找两块盘,分担数据流量,与原来的raid1做成raid0,这样就组成了raid10。这种模式是所有模式中性能和安全性都最好的一种,但是成本是最高的。
4. raid3 顾名思义raid3就是最少需要3块盘组成,原理是这样的:和raid0一样,数据分割,并行写入各个磁盘,除了其中一块磁盘,这块盘叫做奇偶校验盘(一般用P表示),单独存放奇偶校验信息,所谓奇偶校验,就是:因为数据被分割了存放,所以可以根据这些分割的数据来做一个恢复措施,利用我这边的数据和你那边的数据算出一些信息,如果任意一边数据丢失,通过另一边的现存数据和事先算好的信息,就可以再生成丢失的数据。这样,如果任何一块盘损坏,都可以根据另外的磁盘重新生成坏盘上的数据,不管损坏的是数据盘,还是校验信息盘。由于校验信息占用空间不大,所以只需一块盘就够了,信息都放在这块盘上,这样既实现了raid0的速度(比raid0稍慢),又实现了raid1的安全(raid1是纯数据的镜像,raid3是利用奇偶校验信息,占用空间小),成本又相对低廉,何乐而不为?但是如果同时(同一时刻)坏掉两块盘,数据就完了。raid3总容量=容量总和-P盘容量。
5. raid5 raid5是raid3的升级版本。 raid3有个缺点:作为存放校验位的硬盘,工作负荷会很大,因为每次写操作,都会把生成的校验信息写入该磁盘,而其它磁盘的负荷相对较小,这会对性能有一定的影响。raid5是:当向阵列中的磁盘写数据,奇偶校验数据均匀存放在阵列中的各个盘上,其他和raid3一样。现在raid5是应用最普遍得一种模式。
小知识: 热备盘(hot spare盘,又称S盘)。刚才说了,任何模式的raid阵列,如果同一时刻坏掉两块以上得盘,数据就完了(raid0坏一块就完了),但是这种情况一般不会发生,除非人为或者不可抗力引发,那么我们就不管了吗?不行!如果某天,raid阵列有一块盘损坏,而没有采取措施(比如没有多余备用硬盘,或者周末,无人),那么过一段时间,如果又坏了一块,咋办?哭吧你就!虽然同一时刻坏多块盘的情况很少,但是同一时期坏盘的几率就很大很大,因为硬盘生产批次,所处环境都一样。那么怎么避免这种情况发生呢?热备盘就派上用场了。热备盘就是为了一块盘损坏后,无人值守情况下,自动补上坏盘的位置,数据重新生成在这块新盘上。可以设多块热备盘,有的阵列可以只设一块热备盘,供阵列中所有的raid组(就是按照一个raid模式所作的raid)使用,有的就只能每个raid组都必须设一块热备盘(IBM的就是这样)。 可能有人有个疑问:在raid5或者3中,如果一块盘坏了,坏的数据怎么继续读出?是这样的:损坏的数据是一边校验,一边传送给外部的,这样其实是很危险的,万一再坏一块盘。。。。。
6. raid5E 为了防止没有热备盘的情况下先后坏掉多块盘引起的数据丢失,一旦某块盘损坏,不像raid5,只有再请求数据读写的时候,现场生成数据流,发送给外部,这些数据没有存放起来,raid5E将损坏的数据重新校验生成,压缩存放在其他盘上的未使用的空间上(这些未使用的空间,系统是认不到的,没有参与raid的建立,没有条带化,不属于raid组),这样就和raid5+S差不多,只是S被均匀分部到了其他盘上。这样的话,先后坏两块盘,同样能保持运行。raid5E中不存在热备盘,只是每块盘上划出一些空间,用作热备而已,所以整个raid模式还是raid5(不带S盘)级别。
7. raid5EE 与raid5E相比,raid5EE是完全携带了S盘,不过这个S盘不是真正的一块物理盘,而是均匀分部在其他盘上,S空间参与了条带化,属于整个raid组的一部分,这样恢复数据更有效率,其他和raid5E一样。
小知识:一些售前工程师专业的术语。x+s+p:raid5中的术语,x块盘是数据盘,一块s盘, 一块p盘(实际不是一块物理盘都是热备,p被均匀分部各盘上,而是他占用了一块盘的空间而已,严格来说,数据盘也就是x+1块了)。
这次说说磁盘阵列柜
什么是磁盘阵列柜,就不说了,见谅!
针对不同的硬盘接口,阵列柜有不同的内部接口,比如scsi,sata,fc(光口),ssa(串行scsi接口)接口,除了内部接口(接硬盘用的),阵列柜还得有个外部接口,包括scsi,ssa,fc,iscsi接口。现在企业级用户一般用fc-fc(内接口-外接口)的盘阵.
这里终点讲讲iscsi,iscsi就是scsi over ip,将scsi协议封装到ip包中,通过lan双绞线传输,以克服scsi传输距离短的缺点,而且方式变得灵活,毕竟以太网及ip都是非常成熟的技术。iscsi分为initiaor端(发起端)和target端(目标端)。 initiaor端是主机端,适配器可以是专门的iscsi卡,价格昂贵;也可以用普通网卡,安装iscsi的initiaor驱动,用软件模拟硬件的iscsi,这个驱动微软免费提供。target端指得就是阵列端,也有用软件模拟target的,名称叫做wintarget,付费软件,装到一台主机上,主机的硬盘(不管什么接口)就成了iscsi target。
阵列柜一般由这两种柜组成:自带raid控制器的机头(server enclosure),和不带raid控制器的扩展柜(enclosure)。两种柜子里面都有一定数量的磁盘槽位。
后者只是一个柜子而已,一般作为机头(稍后讲)的扩展柜,机头可以带领多个扩展柜。如果单独用后者作为存储设备,需要主机额外购买raid控制卡,通过主机上的raid控制卡,对盘柜中的硬盘进行raid组划分,逻辑单元(lun)的划分,这个过程可以在windows环境下通过盘柜提供的管理软件来做,也可以通过提供的光盘引导主机后,进入管理界面来做(IBM的server raid盘)。一个典型的例子就是ibm的exp300扩展柜(其对应的机头是fastT系列的),外部scsi接口,主机上用6M的阵列卡(二合一),scsi接口,对其作raid控制。
前者,机头,是阵列的控制器所处的柜子,其上背板的接口分为两部分,一部分用来与扩展规作级联,扩展容量,接口类型按照型号不同,可以是scsi,fc,ssa等;另一部分用来与san交换机或者主机连接,一般是fc口,而且有多个,用来做冗余,连接到多台san交换机,或者同一个主机上的两块hba卡,这样可以做到冗余并且负载均衡。
高端一些地机头,一般都有电池后备系统,仅仅用来支持系统缓存板(一般都是G级别的)中数据缓存,以至于断电的时候不至于丢失数据,所有数据的读写都是先通过缓存,缓存容量一般1G或者2G,写数据的时候,客户发出写的命令时,其实是先写道缓存,然后阵列通知用户写动作结束,写入成功,因为是写到缓存,所以对用户来说,速度是很快的,其实,这时候,缓存正准备向磁盘写入,如果磁盘写入成功,那么缓存方能删除此次的数据,如果此时突然断电,磁盘写失败,那么缓存便知道发生灾难,电池会继续保持缓存中数据和待处理的写动作,等待来电时继续执行。对于IBM的DS6800系列,电池可以支持72小时。
DS6800机头是一个双控制器,双电池后备板,双电源,4个host access口的机头,每个控制器可以连接7个扩展柜,但是机头中的磁盘已经属于一个控制器带了,所以这个控制器在外部,还能带6个,另一个控制器带7个,所以一共是14个柜子(包括了机头),每个柜子最多放16块盘,这样一共224块盘的容量。
下面说说raid和lun的问题,因为机头上有控制器,所以,可以通过机头来管理raid,而不需要额外的raid卡。机头背面有以太网接口,可以通过以太网连接到机头,有的可以直接通过telnet就可以完成配置,有的则需要在主机上安装相应的管理软件,然后连接机头,做相应配置。机头的ip地址由厂家预先设好,可以自己改,通过串口,用超级终端通信。阵列的配置,无非就是先选好几块盘,作raid组,然后在raid组上,划分lun,大小自定;然后作group,可以是raid组group、lun group,主机group等,就和windows系统中的用户组一样,为了方便管理;然后作主机map(映射),或者叫host attachement,所谓map就是说让哪个或者哪个组(哪些)主机能看到相应的lun,或lun group,设定好map后,主机开机,便会看到分配给它的新磁盘(对应阵列上的lun),主机可以对其进行分区,格式化等常规磁盘的操作,而不必也无法关心这个lun在阵列中是由哪些盘组成的,raid类型是什么,这些都是阵列控制器关心的,上层主机是看不到的。
这次本来想说说
双机,但是今天去帮网友调BE(backup exec),想把过程说说,一是为了给读者阅读,二也为了把过程记录下来,以后有用处。
周六晚上和一个网友聊天,说是周一他要给客户调BE,自己搭了个环境,练练手,说是remote agent不管是push安装(从一台机器上通过ipc共享,将安装文件及安装命令通过lan拷贝到客户机,在本机控制客户机安装),还是将安装文件拷贝到客户机,本地安装,都不能安装成功(辨别方法是:看看服务里面有没有backup exec remote agent服务启动,或者看看windows或者winnt系统目录下的日志文件中有没有报错)。 和他约好今天上午去他公司一起研究研究,由于我也是蔡鸟,欣然接受,中午还捞了顿饭,呼呼。
大致过程如下:
搭建的环境是这样的:2台pc机,其中一台安装oracle9i,作为备份客户机,需要安装remote agent以及oracle agent;另一台作为备份服务器,需要安装backup exec for windows server,同时也作为介质服务器(media server)
这个环境的安装顺序以及需要注意的问题:
1。 首先在备份服务器上,从光盘安装BEWS(backup exec for windows server),行话又称:BENT(也就是backup exec for NT enviroment)。安装的时候是这样的:
在安装界面中,先选择本地安装,BE的各个选件都有对应的序列号,搞到序列号(用算号器),输入到安装界面,添加,便会自动识别出对应的选件,首先输入BE主模块的key,然后输入remote agent和oracle agent的key,安装程序将安装BE主模块,并且在安装目录下生成“oralce”以及“rant32”两个目录,都自动设成了共享,因为这两个选件(rant32中是remote agent的安装文件,oracle中是oracle agent的安装文件)需要拷贝到客户机或者push到客户机安装。
2。 在客户机,将需要安装remote agent以及oracle agent两个选件,可以从备份服务器上远程push安装(在安装界面中选择:远程安装),也可以利用上一步生成的安装文件在本地安装。但是我们今天不管是push还是本地,都未能安装成功,日志中提示1603错误,可能是版本的问题。最后索性在数据库客户机上也安装BE主模块,remote agent服务方才启动(主模块带了remote agent功能,需要输入remote agent的key)。然后安装oracle agent,安装完成后,程序菜单中生成一个oracle agent配置程序的快键方式,这个配置程序的作用,主要有3点,第一是定义一个密码,用于备份服务器访问oracle agent时进行验证(这个密码和数据库毫无关系,完全自定义);第二就是定义介质服务器,必须添加介质服务器(添加主机名或者ip地址),以便数据传到介质服务器上,进行备份,需要说明的是,一开始,我们没有添加任何介质服务器,导致在备份服务器上,看不到任何oracle agent发过来的回溃信息,只有在这里定义的介质服务器,才能在对应的介质服务器上看到oracle的回溃信息;第三就是定义数据库的SID,以及登陆数据库的帐号和密码,因为oracle agent必须要打开数据库进行读取操作。
所以,安装oracle agent后,必须先进行这3个配置。
配置完成后,在备份服务器上控制台中点击备份,会看到有本地和远程两大部分,其中本地部分就是备份服务器本地的硬盘目录,可以选择备份哪些;远程下面就和网上邻居差不多,浏览各个目标客户机的目录结构(由agent回溃),选中某些文件,以便进行备份。另外,如果远程客户机有oracle数据库运行,并且装了oracle agent而且已经配置好,那么在远程部分,应该出现oracle agent回溃的远端主机oracle的数据库结构(可以有多个),可以选择某些表的备份,当点选这些oracle结构时候,可能会弹出让你选择用户的对话框,这就是因为在oracle agent配置程序中配置的那个验证密码,只有通过验证,才能访问agent的回溃内容,此时可以在这个对话框中新建一个用户,密码就是在oracle agent配置程序中定义的密码,然后用此用户访问oracle agent即可。
到这里,还有一个问题没有解决,即remote agent 的安装,为什么总是报错,装了3台机器,两种系统,2000server,2003server,都报错,怎么回事。。。。。。
SAN路由存储区域网(SAN)被称作“第二网”,经过多年发展,第二网络已经从一个“二层”网络发展成为“三层”网络。
一个孤立的二层网络
存储区域网是专门为进行大规模数据传输而设计的专有网络,它使用光纤通道协议,通过光纤通道集线器、交换机将磁盘阵列、带库以及相关的服务器连接起来,从而形成了一个高速的专用网络。因此,SAN最大的特点就是独立性,甚至在初期,它在物理上与其他网络相分离。
尽管SAN为用户的大规模数据存储提供了一个高性能、高可靠性的“第二网”,但是,长期以来,用户形成了多个SAN孤岛。可能每个孤岛用来满足用户的某项应用。但是,就像采用直连存储所造成的信息共享困难一样,各SAN孤岛之间的数据也同样无法进行交流。
当初,为了消除信息孤岛,为了能够使数据在服务器之间共享,才发明了SAN,而随着SAN的构建形成了新的孤岛。在新的孤岛之间进行数据共享的难度加大,而随着用户对数据共享的需求越来越高,因此希望将SAN孤岛连接起来。
目前有四种方式可以实现,包括裸光纤直连、WDM(波分复用)、使用SONET(SDH)数据传输技术以及FCIP技术,这样几个SAN孤岛可集成为一个大的SAN网络。
SAN孤岛互联问题多
从现有的SAN网络技术来说,四种连接方式均将多点构成一个Fabric网络,这样在一个Fabric网络中就有统一的网络服务(如统一的名称服务器、分区配置、地址空间、Fabric管理等),在远程连接的环境中就会带来很多问题,主要有以下几个方面。
主交换机(Principal Switch)的问题:在光纤通道际踔校?桓銎abric网络只有惟一的主交换机,由它来统一分配域ID,保证整个Fabric有一致的地址空间,当主交换机出现故障时,就会造成整个Fabric发生重新配置(Reconfigure),从而中断应用系统运行。因此无论主交换机处于哪一端,出现故障时都对其他端带来致命影响。
主ISL(Inter-Switch Link,交换机间链路)的问题:远程连接两端的链路一般均是交换机之间的连线,而且也承担交换机管理信息的传递(主ISL链路),而这个链路很有可能发生时断时续的故障,当这个主ISL链路发生故障时,就会使无主交换机的SAN孤岛发生Reconfigure,并选举新的主交换机,这样也造成应用系统的中断; 同时也会对主交换机的SAN孤岛造成Fabric Build过程,如果这个过程不成功,同样也会造成应用系统的中断。
加入或撤出交换机的问题:由于多个端点均连接成一个Fabric网络,因此在网络中的任何人从网络的任何一个点中加入或撤出一个交换机时,可能会发生域ID的冲突,这样会使整个Fabric发生Reconfigure,同样会造成应用系统的中断,即使无域ID的冲突,也会使整个Fabric发生Fabric Build过程,如果因某种原因造成这个过程不成功,也会使应用系统发生中断。
远程点之间安全性的问题:在远程连接的SAN网络中,安全性是一个突出的问题,因为任何人可以从网络的任何点连接到整个Fabric网络中,如果能够模拟其他应用系统HBA的WWN(全球名称),将会窃取到数据,如果有人为的破坏,也会使整个Fabric网络发生瘫痪,从而使整个应用系统无法正常运行。
多点容灾环境下的问题:如果在多点的环境中,将各个SAN孤岛连接起来,形成一个大的Fabric网络,远程ISL链路比较多,出现远程连接的问题就比较多,而且任何SAN岛出现上述的任何问题,都会造成Fabric网络的不稳定或应用系统的中断,因此在多点远程连接的情况下,网络安全和稳定将会是一个突出的问题。
SAN路由器应运而生
为了解决上述SAN孤岛互联时产生的各类问题,SAN路由技术应运而生。人们可以使用SAN路由技术把迄今为止互无联系的光纤通道Fabric连接起来而又使各个Fabric能够保持其相互的独立性。SAN路由技术给网络存储以及容灾系统带来了诸多好处。
SAN路由技术实现了SAN Fabric间的无缝连接,在连接不同的Fabric时不要求对现有Fabric的参数做任何修改,同时路由器的接入不会对正在执行的I/O造成任何影响。SAN路由器实现了Fabric间的资源共享,特别是实现了Fabric间的磁带库共享。SAN路由器突破了一个Fabric内最多239台光纤通道交换机的限制,使得大规模SAN网络成为可能。在容灾系统中使用SAN路由器可以隔离本地和异地的SAN Fabric,极大地提高了容灾系统的数据可用性和整体的可靠性和稳定性。多Fabric通过SAN路由器的互相连接保证了同一个公司中不同部门的SAN网络的管理的自主性,提高了各部门SAN发展的自由度。
从实现技术上讲,目前主要有两种主流技术:一种是FCIP(FC over IP),另一种是iFCP(Internet光纤通道协议)。
FCIP
博科通讯中国区技术总监司马聪博士介绍: “由于在当今的数据中心里,SAN发挥着更加重要的作用,所以许多机构都在寻找创新解决方案,将其SAN的优点延伸到整个企业。为了对这种努力提供支持,独特的博科SilkWorm多协议路由器可以增加当今SAN的功能、连接和通用性。”该多协议路由器用于支持多种路由服务,包括实现SAN连接的博科 FC-FC路由服务、用于延伸SAN距离的博科FCIP隧道服务以及用于同iSCSI服务器共享光纤通道存储资源的Brocade iSCSI网关服务。
FC-FC路由服务是多协议路由器上的服务之一,它可以让不同SAN Fabric中的设备建立通信,而无需将这些Fabric合并成一个大型的SAN。博科FCIP隧道服务使得各机构可以将其光纤通道SAN延伸更远的距离。将FCIP隧道服务与FC-FC路由功能配合使用,可以让两个Fabric保持独立,而无需将其合并为一个,而且还允许在所有设备间建立任意设备到任意设备连接的Fabric。
iFCP
根据McDATA公司中国区技术经理雷涛介绍,该公司主要根据一项名为“SecureConnect”的技术设计SAN路由器。SecureConnect SAN路由技术是由Nishan System公司首创,该公司在2003年被McDATA收购。SecureConnect SAN路由技术能够为每个本地SAN光纤网络提供具备互操作性能力的E_Port连接,在每个站点终止E_Port连接。因此,光纤网络的搭建被限制在每个地点,而且光纤交换机到交换机间的协议也无需贯穿整个IP网络。如果两个甚至更多的地点由McDATA的SAN路由器连接,每个地点将仍然拥有一个独立的SAN。在存储设备及服务器间,只有被授权(被分区)的连接允许通过IP网络。
与第三层网络路由相同,SecureConnect SAN路由不但保证了各SAN分区间数据的可靠传输,也避免了整个存储网络暴露于应用全面中断的潜在风险。用户可以利用具备成本效益的IP网络服务,来部署复杂的、多重SAN存储解决方案。除错误隔离外,SecureConnect SAN路由解决方案能够减少地址重复问题,从而简化SAN的连接。McDATA的SecureConnect SAN路由技术允许在不同的光纤交换机上使用相同的域地址分配,而不会出现任何路由问题。
FCIP与iFCP之比较列表
协议类型是否终结光纤通道会话是否为隧道协议类型可连接设备类型FCIP否是交换机、集线器、路由器iFCP是否交换机、集线器、路由器、HBA、存储阵列
发展趋势―多厂商互联
目前而言,SAN路由器还只能够将来自一家厂商的产品进行连接,SAN路由器还不能支持多厂商产品,也就是说,如果两个Fabric分别由来自不同厂商的光纤通道交换机组成,那么目前还没有产品能够将它们连接在一起。尽管各厂商都声称将来支持,但是,分析人士认为,目前多厂商交换机之间的互联互通仍存在各种问题,而路由器之间的问题要远比交换机的复杂得多。
在以太网中的路由器技术已经非常成熟了,同时标准化的产品之间互联互通不会存在任何问题。这是大家非常熟悉的现状,那么,以太网的路由器在初期也无法互联互通吗?其实,在以太网实现“路由”的道路大致一样,当初,用户认为他们有足够多的交换机,根本没有必要使用路由器,当需要连入更多资源时,用户购买更多交换机而非路由器。笔者一位朋友在回忆大概十年前的情景时说,当时抱着一个巨大的路由器向用户上门推销,但是用户却问:“我们有交换机,为何需要路由器呢?”如今,以太网路由器几乎到处都是。最为关键的是,在用户目前的以太网环境中使用的路由器来自多个厂家,它们之间、它们与以太网交换机之间可以任意互联互通。
这也应该是SAN路由器的发展方向。
“标准化”三个字极大地推动了以太网的发展,一方面标准化可以吸引众多厂商参与,并且朝着同一个方向前进,结果使得各厂商产品都符合“标准”,因此在互联互通方面不会存在任何问题;另一方面,标准化加速了产品与技术的成熟,使得成本和产品价格迅速降低,更多的用户可以用得起,应用的普及反过来对技术起到积极的推动作用。
应用案例
互联互通 轻松实现
国内某大型保险公司已经成功应用了SAN路由器。在用户的存储环境中,有两个本地的存储网络,SAN-1和SAN-2,每个SAN网络都通过一个导向器级的交换机连接。此外,一个比较小的SAN网络(SAN-3)用来模拟一个小型远端的分支SAN的配置。
该用户使用三个SilkWorm多协议路由器将一个GbE的交换机以及三个SAN环境联接起来。
用户采取了iSCSI、FCIP以及IFL (Inter-Fabric Links)组合的连接方式。IFL是最基本的FC连接方式,与ISL的概念类似。一般地,在连接一个SAN时,你需要建立两个或多个IFL链路,以保证系统的稳定性和性能。首先,在SAN-1内的一个主机设备与SAN-2内的一个磁盘阵列建立一个连接,通过这种方式在SAN之间建立的连接称为逻辑SAN(LSAN)。
创建一个LSAN非常容易。在一个单一SAN环境下,可以创建包含一组存储或主机设备在内的特别分区,以实现在SAN内的跨设备间的更好的访问和管理。LSAN分区在概念上类似于通常意义上的分区,并且可以用同样的工具创建。为了避免SAN网络地址的冲突,SilkWorm路由器使用FC-NAT方式,如同相应的IP地址,来掩盖相邻SAN网络的地址冲突。
LSAN和FC-NAT实现了在多个SAN之间保持其各自独立的SAN网络管理的同时,在不破坏以前的配置的情况下,建立LSAN分区。用户可以在不同的SAN网络之间有选择地将部分主机及存储设备连接起来。对于SAN集中的需求来说,这是最能够被接受并减少潜在危险的一种方式。
为了检验网络中断的效应,工程师将其中一个IFL的端口拔掉。几秒钟内,另一个没有被拔掉的IFL端口开始承担原来两个IFL的工作,并且吸收来自主机端的全部传输量。
存储区域网原本是一个既封闭又独立的子网,它使用的光纤通道协议对于大多数IT技术人员来讲都十分陌生。由于各种原因,在长期的运行过程中,SAN经常出现各类问题,比如管理复杂、随着系统规模增大存储整合难度加大等。
SAN路由技术是一个比较好的进步,它不仅解决了一些SAN孤岛互联问题,更重要的是为存储区域网的应用开辟了一条崭新的道路。大家知道,IP存储技术已经发展了几年时间,而直到SAN路由器的产生才使得IP存储技术得到实际应用,除此之外,多协议的转换技术还为更多IP存储技术的集成预留了足够的发展空间,比如iSCSI。
但是路由并没有解决所有问题,比如从它的应用领域来讲,目前主要应用在中低端的存储区域网中,大型存储区域网的整合目前还主要通过导向器级光纤通道交换机来实现。另外,与以太网路由器技术相比,SAN路由器还相对简单,它并没有完全设计出一套全新的体系,有分析人士指出,SAN路由器大概类似一个SAN孤岛互联的“补救设备”,它并没有从根本上改变原来SAN孤岛的设计。
由此看来,对于SAN路由器来讲,“革命尚未成功,厂商仍需努力”。在这方面,以太网是一个很好的榜样,存储区域网可以从中学习借鉴许多经验。而笔者认为,最值得借鉴的便是标准化与多厂商参与,然而,从近两年的发展情况来看,存储区域网领域大有“逆其道而行之”的趋势,随着一些并购案的发生,该领域厂商没有增加反而减少了,再加上该领域的进入门槛相当高,因此,在可预见的将来,用户仍然不会获得更多的选择。
SAN的基本知识和应用SAN(Storage Area Network, 存储局域网)是独立于服务器网络系统之外几乎拥有无限存储能力的高速存储网络,这种网络采用高速的光纤通道作为传输媒体,以FC (Fiber Channel, 光通道)+ SCSI(Small Computer System Interface, 小型计算机系统接口) 的应用协议作为存储访问协议,将存储子系统网络化,实现了真正高速共享存储的目标。
光纤通道SAN引发了更多类型的存储应用,其中包括服务器群集、磁带备份、故障恢复以及高速视频与图形编辑。每一种应用都可通过与光纤通道集线器或光纤通道交换器的组合建造。高速的数据传输能力是由集线器和交换器产品提供的,软件产品提供了对较高层功能支持。例如,Veritas和Legato公司所提供的服务器群集和磁带备份软件,可管理在光纤通道传输设备上所执行的操作。
1.群集
对于SAN服务器群集应用来说,单台服务器上所出现的故障不再意味着数据的丢失。另一台服务器可跨越SAN存取出故障的服务器中的数据。许多厂商的软件产品可以使服务器的故障得以恢复。光纤通道SAN将能够通过多台服务器实现对公共存储设备的平等存取,确保数据的随时可用。在IT界,这种能力叫做“数据拨号音",意指“能够可靠进行连接并能顺利完成所需的事务处理的能力”。
在服务器和存储设备之间提供冗余的数据路径,有助于确保数据的高可用性。冗余的数据路径可通过向每台服务器配备两个光纤通道宿主总线适配器(HBA)得以实现。其中,一个HBA作为主数据路径附接于光纤通道集线器或交换器上,而另外一个HBA作为辅助数据路径附接于第二个光纤通道集线器或交换器上。存储阵列通常拥有主、辅两个光纤通道连接器。如果主光纤通道出现故障,另一个通道能够接管。
与冗余的数据路径和服务器群集软件相结合,一台服务器或一条数据路径上的故障将不会中断系统的运行,因为另一台服务器或另一条数据路径随时处于备用状态。
2.备份
对于所有企业网络来说,磁带备份是一个普遍性的问题。在磁带备份方面,主要的限制因素包括:备份数据必须流经的传输设备运行速度偏低;磁带子系统本身的性能较差。如果某一磁带子系统能够维持每秒10兆~15兆字节的备份流,那么这一速度将超过100兆以太网的能力。另外,在LAN上对一台服务器进行备份,要求所备份的数据必须进行TCP/IP打包。TCP/IP方面的开销是导致磁带备份性能严重下降的又一重要原因。因此,基于LAN的备份不能为有效的磁带备份提供充足的带宽。与此同时,用户还将会发现,在备份操作期间,甚至在交换式网络的环境中,LAN性能也将会明显下降。
随着备份所需的存储量不断从GB数量级向TB数量级的迅速迁移,一个完整的备份或恢复过程所需的时间将不能由基于LAN的过程得到保障。如果没有足够的时间备份所有的数据,那么企业将很容易受到磁盘故障的困扰。目前只有极少数企业具有恢复数据的能力。为了更有效地进行备份,管理员必须花钱“买”时间。而这种“时间”只能来自更高的备份传输带宽。光纤通道SAN可以满足这一需求。
不依赖于LAN的磁带备份,是SAN带给企业网络的主要好处之一。通过把服务器、存储阵列以及磁带子系统与光纤通道SAN相连,备份数据流可以不经过LAN,从而使LAN摆脱了用户网络流量的重负。由于可提供每秒100兆字节的带宽,所以光纤通道能够很容易地提供对多磁带备份流的支持。另外,由于备份数据流是元SCSI-3格式的,所以写向磁带的数据块比IP包的数据流更为有效。
不依赖于LAN的磁带备份还可以安装在那些带有直接并行SCSI磁盘驱动器的服务器上。把光纤通道HBA安装于每一服务器、把服务器连接于光纤通道集线器或交换器,磁带备份数据能够高速地发往附接于光纤通道的磁带子系统。这样一来,用户不仅能够继续利用他们对SCSI磁盘驱动器最初的投资,而且还可享用SAN所提供的不依赖于LAN的备份。一旦光纤通道基础设施得以建立,日后预算允许的时候,用户将可随时把光纤通道磁盘阵列并入其基础设施的配置之中。
可以使用不同的方法把磁带子系统并入SAN。较新的磁带库产品大都拥有本地光纤通道接口,因此能够很方便地与光纤通道集线器或交换器连接。使用“光纤通道-SCSI"路由器也可对较旧的磁带子系统进行连接。这些磁带库是由不同的供应商制造,并都提供了1或2个光纤通道连接和4~8个SCSI连接。“光纤通道-SCSI"路由器负责处理来自光纤通道的串行SCSI-3数据转换和来自并行SCSI接口所使用的SCSI-2数据转换。
当前,大多数操作系统(例如NT、Solaris以及Unix)都提供不依赖LAN的磁带备份软件。磁带备份软件包可处理较高水平的服务,例如调度、并行备份以及对磁带自动化设备的媒体控制。由于SAN使磁带备份的效率大大提高,所以目前许多开发商都在支持光纤通道SAN技术的开发,其中Veritas和Legato公司已成为这一技术的主要支持者。
把备份数据流从LAN移向SAN,解决了企业网络的数据拥塞问题。然而,不依赖于LAN的备份依然要求服务器主动地从磁盘上读取数据,然后把数据写入磁带。因此在备份期间仍需消耗服务器的CPU周期和内存资源。新的SAN应用可解决这一问题。不依赖于服务器的备份把服务器排除在数据路径之外,并使数据能够直接从磁盘转向磁带。这一功能是由一个第三方拷贝代理完成的。第三方拷贝代理是一种软、硬件结合的产品,并可驻留在“光纤通道-SCSI"路由器或光纤通道交换器中。网络数据管理协议(NDMP)可用于向第三方拷贝代理发送指令。第三方拷贝代理能够从服务器上获得当前文件系统结构的一个快照(Snapshot),然后开始从磁盘上读取数据块,并将它们写入磁带。一旦获得当前文件系统结构的一个快照,服务器将不再主动参与数据备份过程,因而可在数据备份进行的同时,自由地服务于用户的其他请求。第三方拷贝代理更完善的版本还将允许用户在备份过程期间主动参与文件的修改,因而在备份过程结束后,那些改变了的文件也能够得以备份。
灾难恢复与SAN磁带备份密切相关,但同时也需要光纤通道提供对长距离连接的支持能力。光纤通道可以在单模长波光缆上维持一个10公里长的数据通路。波分多路转换(WDM)以及其他技术还可以把这一距离进一步加以扩展。由于较长的链路会导致时间上的延迟,因此最好能够把光纤通道交换器纳入灾难恢复系统。典型的配置应包括:一个生成网点(具有附接于光纤通道的服务器和磁盘)和一个远程网点(具有多个磁盘和一个磁带子系统)。处于两端的光纤通道交换器可实现生成网点与灾难恢复网点之间的连接。尽管把磁盘镜像于远程网点是可行的,但仅当变化出现时才对记录进行修改是一种更加有效的做法。远程网点还可以拥有一台备份服务器,从而使周期性的备份能够由同步化的存储阵列来实现。
3.影像
视频和图形编辑是率先使用光纤通道SAN的领域之一。视频和图形编辑应用要求使用SAN所提供的所有先进功能――高速数据传输、对等连接、大规模存储阵列存取以及在单一配置中对大量工作站的支持。
印前(pre-press)业务是高效SAN的典型应用。提供这类服务的公司,主要任务是生成那些可用于杂志、销售目录、广告牌以及城市公共汽车所使用的图形图像。印前数据流是一种“爆发性的"数据流模式。在这一模式中,高频度存取期后常常会跟随一个传输过程的寂静期。在一台印前工作站上工作的艺术家,可能需要从磁盘上读取一个规模相当大的、数以百兆字节的图像文件,然后在这一文件上工作相当长的一段时间。当编辑工作完成之后,又把文件写回到磁盘上。然而,由于很可能会有多个艺术家正在同时随机地读、写那些大型的文件,因此传输过程必须能够向他们提供足够的带宽。使用Ethernet很难满足这类需求,改用光纤通道后事情将会变得十分简单。典型的印前SAN拥有一个可提供与大规模存储阵列相连的光纤通道交换器。由于每一存储设备都连接在它们各自的交换器端口上,所以都能够提供每秒100兆字节的带宽。然而,工作站并不需要过高的专用带宽,因为它们仅仅是间歇性地进行文件存取,所以可以把所有工作站接在一个光纤通道集线器上,然后把集线器接到一个光纤通道的交换器端口。这是一种高性阶比的方案,并且能很好地满足用户对带宽的需求。目前Vixel集线器和交换器已被许多印前公司采用,并成为较高层应用的基础部件。在印前业务操作中,软件发挥了非常重要的作用。印前编辑通常是以顺序方式执行的,其中图形编辑人员和文本编辑人都将会对一个单一的文件进行存取,因此整个工作流必须确保所有编辑人员不会过早地对文件进行重写。中间件安装于每一台工作站上,用以验证文件当前的归属关系和读/写许可情况,并可防止未经授权的重写操作。
视频编辑不同于印前业务,它要求向用户提供稳定的带宽。一个视频流通常为每秒30兆字节。一个光纤通道交换器可以提供每端口100兆字节的数据吞吐能力,所以它可以在每一个端口上维持多个视频流。在过去的两年里,一些公司,例如AvidTechnologies和AvidSports公司,一直把BROCADE交换器用于高速编辑环境。有线电视提供商有时也会使用BROCADE2800去编辑那些在较长影片中的情节。电影(例如“玩具总动员")的特殊效果编辑使用Vixel来满足高速图像处理对带宽的需求。可以把光纤通道交换器串联在一起,提供更多的可直接与工作站相连的端口。这将允许企业在其各部门或整个企业的范围内建造更大的系统。
尽管服务器群集、磁带备份、故障恢复以及图形编辑都有它们各自不同的需求,但光纤通道SAN能够同时满足这些需求。光纤通道所具有的灵活性是各种SAN应用能够有效组合的重要原因所在。服务器群集也可以并入磁带备份。在极易发生地震的加利福尼亚,后期制作视频编辑公司或许更需要在一个稳定的场所部署一个包括灾难恢复功能的系统环境,SAN将是它们的理想选择。总而言之,建造一个SAN基础设施不仅能够更好地满足企业当前的业务需求,而且可以更好地满足企业未来业务增长的需求。
作为一种网络体系结构,目前光纤通道SAN的性能已趋于稳定。然而,如同任何其他网络系统一样,故障的发生将是不可避免的,因此网络的管理性能是至关重要的。对SAN传输的管理是用户选择光纤通道产品的一个关键的性能指标。当故障出现时,能否立即通知管理员迅速采取补救措施,将是许多企业十分关注的问题。管理应用(例如Vixel的SANInSite)可以前瞻性地孤立出传输过程中所出现的问题,并可使系统继续正常运行。先进的诊断工具和性能监视工具可帮助管理员使SAN的无故障时间达到最大化,维护用户对数据的正常存取。把SAN管理程序集成于更高水平的管理框架(例如Transoft的FibreNet、CAUnicenter和HPOpenView),可以提供对所有网络部件的企业级管理。
目前,光纤通道SAN已发展成为一种成熟、可行的存储管理技术,针对这一技术的新的软件应用和新的硬件产品正不断推出,不断改善着存储网络的性能。 预计随着电子商务和Internet业务的日趋增多,光纤通道SAN和“.com”将会成为更多企业的最佳配置选择
动态多路径(DMP)
1. 介绍动态多路径(DMP)
在某些操作系统上,Volume Manager支持多路径访问到磁盘阵列。它自动重新组织到磁盘阵列内具体某个磁盘设备的多个I/O 路径。Volume Manager的动态多路径功能通过提供路径故障切换机制,提供更大的可靠性。一旦到磁盘的某个连接丢失,系统将通过到该磁盘的其它可靠的连接继续存取重要的数据。DMP 还通过将I/O 负载平均分布在多条到磁盘设备的I/O 路径上,提供更大的I/O吞吐量。
Volume Manager DMP管理多路径目标(如磁盘阵列),多路径目标定义使用多条路径的策略。某些磁盘阵列允许多条路径同时保持活动状态(活动/活动)。某些磁盘阵列只允许一条路径保持活动状态,将替换路径用作备件以防现有路径发生故障(主动/被动),某些磁盘阵列具有设计更精细的策略(如对LUN的互为备援)。
一般情况下,Volume Manager 被设计成将VM 磁盘映射到一个Volume Manager DMP 元节点。为简化VxVM 逻辑操作,每个VM 磁盘都映射到唯一一个Volume Manager DMP元节点,不管在多路径配置中是否连接了物理磁盘设备,此映射都将发生。
ü # vxdmpadm getsubpaths ctlr=c3
NAME STATE PATH-TYPE DMPNODENAME ENCLR-TYPE ENCLR-NAME
======================================================================
c3t1d0s2 ENABLED - c3t1d0s2 Disk Disk
c3t1d1s2 ENABLED - c3t1d1s2 Disk Disk
c3t1d2s2 ENABLED - c3t1d2s2 Disk Disk
c3t1d3s2 ENABLED - c3t1d3s2 Disk Disk
c3t1d4s2 ENABLED - c3t1d4s2 Disk Disk
c3t1d5s2 ENABLED - c3t1d5s2 Disk Disk
c3t1d6s2 ENABLED - c3t1d6s2 Disk Disk
c3t1d7s2 ENABLED - c3t1d7s2 Disk Disk
c3t1d8s2 ENABLED - c3t1d8s2 Disk Disk
c3t1d9s2 ENABLED - c3t1d9s2 Disk Disk
ü # vxdmpadm getsubpaths ctlr=c4
NAME STATE PATH-TYPE DMPNODENAME ENCLR-TYPE ENCLR-NAME
======================================================================
c4t1d0s2 ENABLED - c3t1d0s2 Disk Disk
c4t1d1s2 ENABLED - c3t1d1s2 Disk Disk
c4t1d2s2 ENABLED - c3t1d2s2 Disk Disk
c4t1d3s2 ENABLED - c3t1d3s2 Disk Disk
c4t1d4s2 ENABLED - c3t1d4s2 Disk Disk
c4t1d5s2 ENABLED - c3t1d5s2 Disk Disk
c4t1d6s2 ENABLED - c3t1d6s2 Disk Disk
c4t1d7s2 ENABLED - c3t1d7s2 Disk Disk
c4t1d8s2 ENABLED - c3t1d8s2 Disk Disk
c4t1d9s2 ENABLED - c3t1d9s2 Disk Disk
2. 路径故障切换机制
DMP 与多端口磁盘阵列一起使用时可增强系统可靠性,一旦到磁盘阵列的某个连接丢失,DMP 将自动为I/O 请求动态选择下一个I/O 路径,而无需系统管理员的任何操作。DMP的自动修复功能只要是 vxconfigd 进程能正常启动,就能自动启动。
ü # vxdmpadm stat restored
The number of daemons running : 1
The interval of daemon: 300
The policy of daemon: check_disabled
如果你想修改DMP的policy,可以修改 /etc/init.d/vxvm-sysboot文件,找到restore_daemon_opts="interval=300 policy= check_disabled " 可调整interval的值,但减小该值会影响系统性能。check_disabled 是指DMP的后台进程只定时监控有问题的路径。DMP 允许系统管理员向Volume Manager 中的DMP子系统指出是修复还是恢复连接。这称为DMP 重新配置,重新配置过程还允许检测最新添加的设备(只有当操作系统完全看到它们时),以及完全引导系统后删除的设备。
3. 负载平衡
对于VM 的DMP 功能是自动激活的,例如在阵列只有单控制器的情况下,主机有两块HBA 卡,当往阵列的硬盘写数据时,会发现两个HBA 都有I/O,(通过 vxstat命令查看)。这种情况下读写硬盘数据的I/O瓶颈应在阵列控制器,为了提供阵列路径间的负载平衡,DMP 遵循活动/活动磁盘阵列的平衡路径机制。负载平衡通过使用所有路径的最大带宽,确保最大限度地提高I/O 吞吐量。不过到磁盘的有序I/O 将沿同一条路径发送以优化I/O 吞吐量,这样做是为了使用磁盘跟踪高速缓冲存储器的效果。
对于主动/ 被动磁盘阵列,I/O 将沿主路径(指阵列控制器)发送,直到主路径失败。一旦主路径失败,I/O 将切换到其它可用的主路径或辅助路径,为了避免LUN 的拥有权不断地从一个控制器转让给另一个控制器(这将导致I/O 严重减慢速度)对于主动/ 被动磁盘阵列将不执行路径间的负载平衡。
4. 从DMP 设备启用
当根磁盘受Volume Manager的控制时,如果它是单个磁盘,则将作为DMP 设备自动存取,如果磁盘是多端口磁盘阵列的一部分,则有多条路径。通过对根磁盘进行封装,将增强系统防备到磁盘的一条或多条现有物理路径丢失的可靠性。
5. 启用和禁用控制器
DMP 允许系统管理员关闭到主机I/O 控制器的I/O ,以便执行管理操作。它可用于维护挂接在主机上的控制器或由Volume Manager 支持的磁盘阵列。完成维护任务后,可以启用到主机I/O 控制器的I/O 操作。可以使用由Volume Manager提供的vxdmpadm 命令完成此操作。例如,如果系统有StorEdge A5000(TM) 阵列,当用户需要更改与此磁盘阵列相连的A5000接口板时,应使用vxdmpadm 命令获得连接在此A5000接口板上的主机I/O 控制器列表并应禁用这些控制器。这些控制器一旦被禁用,通过这些控制器对磁盘的进一步I/O 存取将停止。然后,用户就可在不中断对该磁盘阵列中的现有磁盘进行I/O 存取的情况下来更换接口板。这样要求是因为在正常情况下,对于活动/活动类型的磁盘阵列(与本例中的一样),Volume Manager都使用平衡路径机制来调度具有多条路径的磁盘的I/O ,从而使I/O 可以在任意时刻经过任何路径。对于主动/ 被动类型的磁盘阵列,I/O 由Volume Manager调度到主路径,直到主路径发生故障。因此,若要更改磁盘阵列上的接口卡或更改与磁盘阵列相连的主机(可能发生)上的卡,则应禁止到主机I/O 控制器的I/O 操作。这允许在更改硬件前,使所有的I/O 都转移到另一个I/O控制器上的主动辅助路径或主动主路径。此操作结束后,可使用vxdmpadm 命令的启用选项,使这些控制器的路径重新发挥作用。Volume Manager不允许禁用到根磁盘的最后一条活动路径。
6. 显示DMP 数据库信息
vxdmpadm 命令可用于列出DMP 数据库信息并执行其它管理任务,此命令使您得以列出系统上的所有控制器(与磁盘相连)和其它存储在DMP 数据库中的相关信息。该信息可用于定位系统硬件并决定要启用/ 禁用的控制器。注意:通过命令启用/禁用的功能只是临时的,在系统重启后将恢复到缺省设置。vxdmpadm 还提供其它有用的信息,如磁盘阵列序列号和与磁盘阵列相连的DMP 设备(磁盘)列表,具体某个控制器的路径列表,等等。
ü # vxdmpadm listctlr all
CTLR-NAME ENCLR-TYPE STATE ENCLR-NAME
=====================================================
c1 Disk ENABLED Disk
c3 Disk ENABLED Disk
c4 Disk ENABLED Disk
ü # vxdmpadm listenclosure all
ENCLR_NAME ENCLR_TYPE ENCLR_SNO STATUS
============================================================
Disk Disk DISKS CONNECTED
Disks OTHER_DISKS OTHER_DISKS DISCONNECTED
FAKE_ARRAY0 FAKE_ARRAY FAKE_ENCLR_SNO DISCONNECTED
ü # vxdmpadm getdmpnode nodename=c3t1d9s2
NAME STATE ENCLR-TYPE PATHS ENBL DSBL ENCLR-NAME
=========================================================================
c3t1d9s2 ENABLED Disk 2 2 0 Disk
ü # vxdmpadm getdmpnode enclosure=Disk
NAME STATE ENCLR-TYPE PATHS ENBL DSBL ENCLR-NAME
=========================================================================
c1t1d0s2 ENABLED Disk 1 1 0 Disk
c1t0d0s2 ENABLED Disk 1 1 0 Disk
c3t1d0s2 ENABLED Disk 2 2 0 Disk
c3t1d1s2 ENABLED Disk 2 2 0 Disk
c3t1d2s2 ENABLED Disk 2 2 0 Disk
c3t1d3s2 ENABLED Disk 2 2 0 Disk
c3t1d4s2 ENABLED Disk 2 2 0 Disk
c3t1d5s2 ENABLED Disk 2 2 0 Disk
c3t1d6s2 ENABLED Disk 2 2 0 Disk
c3t1d7s2 ENABLED Disk 2 2 0 Disk
c3t1d8s2 ENABLED Disk 2 2 0 Disk
c3t1d9s2 ENABLED Disk 2 2 0 Disk
7. vxddladm 命令的使用
使用vxddladm命令可以动态添加不支持的阵列到支持库。使DMP能正确使用。
#vxddladm help
listversion Listing of all ASL with their correxponding versions
listsupport Listing Of all Supported Arrays
listexclude Listing Of all excluded Array Libraries
excludearray Exclude an array library/a set of libraries
includearray Include an array library/a set of libraries
addjbod Specify an array to be JBOD :see help addjbod
rmjbod Remove an array from JBOD List :see help rmjbod
listjbod List all JBODs :see help listjbod
listforeign List all Foreign disks :see help listforeign
addforeign Add a Foreign disk :see help addforeign
rmforeign Remove a Foreign disks :see help rmforeign
8. 配置动态多路径DMP(以下内容都是以两块HBA卡为例)
1. 主机至少有两块HBA 卡 ,最好是相同类型。
2. 如果是临时License ,DMP功能是激活的。通过命令查看:
# vxdctl license
All features are available:
Mirroring
Root Mirroring
Concatenation
Disk-spanning
Striping
RAID-5
VxSmartSync
Clustering-full
VVR
DMP (multipath enabled)
3. 查看 /dev/vx/dmp 和 /dev/vx/rdmp 下是否有设备文件。如果想重新产生DMP设备文件,将两个目录下的文件删除。执行 #vxdctl initdmp
4. 通过命令vxdmpadm,必需能看到两块HBA,ENCLR-TYPE不能是OTHER_DISKS,STATE= ENABLED
# vxdmpadm listctlr all
CTLR-NAME ENCLR-TYPE STATE ENCLR-NAME
=====================================================
c1 Disk ENABLED Disk
c3 Disk ENABLED Disk
c4 Disk ENABLED Disk
错误输出:(只认到单控制卡)
#vxdmpadm listctlr all
CTLR-NAME ENCLR-TYPE STATE ENCLR-NAME
=====================================================
c1 Disk ENABLED Disk
c4 OTHER_DISKS ENABLED OTHER_DISKS
5. 通过#format能看到两倍的物理盘。
6. 通过vxdisk list 只能看到一倍的盘(当DMP正确配置时),
# vxdisk list
DEVICE TYPE DISK GROUP STATUS
c1t0d0s2 sliced rootdisk rootdg online
c1t1d0s2 sliced disk01 rootdg online
c3t1d0s2 sliced - - online
c3t1d1s2 sliced - - online
c3t1d2s2 sliced - - online
c3t1d3s2 sliced - - online
c3t1d4s2 sliced - - online
c3t1d5s2 sliced - - online
c3t1d6s2 sliced - - online
c3t1d7s2 sliced aaadg00 aaadg online
c3t1d8s2 sliced aaadg01 aaadg online
c3t1d9s2 sliced abcdg00 abcdg online
#vxdisk_list_lun00
Device:c5t0d0s2
devicetag: c5t0d0
type: sliced
hostid: p9adv.nielsenmedia.com
disk: name=lun00 id=1046287031.1750.p8adv.nielsenmedia.com
group: name=occdg id=1046291758.1896.p8adv.nielsenmedia.com
flags: online ready private autoconfig autoimport imported
pubpaths: block=/dev/vx/dmp/c5t0d0s4 char=/dev/vx/rdmp/c5t0d0s4
privpaths: block=/dev/vx/dmp/c5t0d0s3 char=/dev/vx/rdmp/c5t0d0s3
version: 2.2
iosize: min=512 (bytes) max=256 (blocks)
public: slice=4 offset=0 len=25155072
private: slice=3 offset=1 len=8447
update: time=1048104676 seqno=0.37
headers: 0 248
configs: count=1 len=6210
logs: count=1 len=941
Defined regions:
config priv 000017-000247[000231]: copy=01 offset=000000 enabled
config priv 000249-006227[005979]: copy=01 offset=000231 enabled
log priv 006228-007168[000941]: copy=01 offset=000000 enabled
Multipathing information:
numpaths: 4
c5t0d0s2 state=enabled type=secondary
c5t4d0s2 state=enabled type=
c6t2d0s2 state=enabled type=secondary
c6t6d0s2 state=enabled type=
#vxdmpadm_getdmpnode_nodename=c5t4d0s2
NAME STATE ENCLR-TYPE PATHS ENBL DSBL ENCLR-NAME
=========================================================================
c5t0d0s2 ENABLED EMC_CLARiiON 4 4 0 EMC_CLARiiON0
#vxdmpadm_get_dmpnode enclosure=EMC_CLARiiON0
NAME STATE ENCLR-TYPE PATHS ENBL DSBL ENCLR-NAME
=========================================================================
c5t0d0s2 ENABLED EMC_CLARiiON 4 4 0 EMC_CLARiiON0
c5t0d1s2 ENABLED EMC_CLARiiON 4 4 0 EMC_CLARiiON0
c5t0d2s2 ENABLED EMC_CLARiiON 4 4 0 EMC_CLARiiON0
#vxdmpadm_getsubpaths_ctlr=c5
NAME STATE PATH-TYPE DMPNODENAME ENCLR-TYPE ENCLR-NAME
======================================================================
c5t0d0s2 ENABLED SECONDARY c5t0d0s2 EMC_CLARiiON EMC_CLARiiON0
c5t0d1s2 ENABLED SECONDARY c5t0d1s2 EMC_CLARiiON EMC_CLARiiON0
c5t0d2s2 ENABLED c5t0d2s2 EMC_CLARiiON EMC_CLARiiON0
c5t0d3s2 ENABLED c5t0d3s2 EMC_CLARiiON EMC_CLARiiON0
c5t0d4s2 ENABLED c5t0d4s2 EMC_CLARiiON EMC_CLARiiON0
#vxdmpadm.getsubpaths.ctlr=c6
NAME STATE PATH-TYPE DMPNODENAME ENCLR-TYPE ENCLR-NAME
======================================================================
c6t2d0s2 ENABLED SECONDARY c5t0d0s2 EMC_CLARiiON EMC_CLARiiON0
c6t2d1s2 ENABLED SECONDARY c5t0d1s2 EMC_CLARiiON EMC_CLARiiON0
c6t2d2s2 ENABLED c5t0d2s2 EMC_CLARiiON EMC_CLARiiON0
c6t2d3s2 ENABLED c5t0d3s2 EMC_CLARiiON EMC_CLARiiON0
c6t2d4s2 ENABLED c5t0d4s2 EMC_CLARiiON EMC_CLARiiON0
#vxdmpadm_listctlr_all
CTLR-NAME ENCLR-TYPE STATE ENCLR-NAME
=====================================================
c1 SENA ENABLED sena0
c4 SENA ENABLED sena0
c5 EMC_CLARiiON ENABLED EMC_CLARiiON0
c6 EMC_CLARiiON ENABLED EMC_CLARiiON0
7. 通过vxdisk list 列某一块盘时,能看到信息
Multipathing information:
numpaths: 2
c3t1d9s2 state=enabled
c4t1d9s2 state=enabled
# vxdisk list c3t1d9s2
Device: c3t1d9s2
devicetag: c3t1d9
type: sliced
hostid: sun2801
disk: name=abcdg00 id=1052368240.2809.sun2801
group: name=abcdg id=1052368257.2812.sun2801
flags: online ready private autoconfig autoimport imported
pubpaths: block=/dev/vx/dmp/c3t1d9s4 char=/dev/vx/rdmp/c3t1d9s4
privpaths: block=/dev/vx/dmp/c3t1d9s3 char=/dev/vx/rdmp/c3t1d9s3
version: 2.2
iosize: min=512 (bytes) max=256 (blocks)
public: slice=4 offset=0 len=6287360
private: slice=3 offset=1 len=2559
update: time=1052812106 seqno=0.54
headers: 0 248
configs: count=1 len=1865
logs: count=1 len=282
Defined regions:
config priv 000017-000247[000231]: copy=01 offset=000000 enabled
config priv 000249-001882[001634]: copy=01 offset=000231 enabled
log priv 001883-002164[000282]: copy=01 offset=000000 enabled
Multipathing information:
numpaths: 2
c3t1d9s2 state=enabled(阵列单控制器的情况下,没有看到type=primary
c4t1d9s2 state=enabled 或type=secondary?在阵列为A/P时看到)
8. 如果通过vxdisk list 能看到两倍的盘,说明VM的DMP没有正确配置。
先通过命令查看同一块盘的信息是否一样,如果不同,先调阵列。
# cd /etc/vx/diag.d
# ./vxdmpinq /dev/rdsk/c3t1d9s2
Inquiry for /dev/rdsk/c3t1d9s2, evpd 0x0, page code 0x0
Vendor id : DGC
Product id : RAID 5
Revision : 0524
Serial Number : 093E580000CL
# ./vxdmpinq /dev/rdsk/c4t1d9s2
Inquiry for /dev/rdsk/c4t1d9s2, evpd 0x0, page code 0x0
Vendor id : DGC
Product id : RAID 5
Revision : 0524
Serial Number : 093E580000CL
9. 如果阵列VM缺省不支持,请先安装ASL包。
#vxddladm listjbod
VID PID Opcode Page Code Page Offset SNO length
==========================================================================
SEAGATE ALL PIDs 18 -1 36 12
SUN SESS01 18 -1 36 12
10. 然后添加到DMP支持列表库
#vxddladm addjbod vid=DGC
#vxddladm listjbod
VID PID Opcode Page Code Page Offset SNO length
==========================================================================
SEAGATE ALL PIDs 18 -1 36 12
SUN SESS01 18 -1 36 12
DGC ALL PIDs 18 -1 36 12
11. 执行#vxdctl enable
12. #vxdisk list应只能看到一倍的盘。
13. The following three parameters must be set on the master controller unit:
Ø Multi-path support software:
§ DMP: sys mp_support rw
§ STMS: sys mp_support mpxio
Ø sys cache auto
Ø sys mirror auto
14. 有一种工作方式:有些阵列控制器的工作方式可以是对具体的LUN互为备援。既partner pair configuration ,所以当用命令#vxdisk list查看,会发现只列出第一块HBA卡所读到的信息。
The T3 array in partner pair configuration provides 2 paths to each logical unit (LUN). One path is considered the primary and the other path is considered the secondary for any given LUN. In normal operation, all I/O for a particular LUN goes down the primary path. If the primary path for a LUN fails, I/O for that LUN is sent down the secondary path. In order to balance the I/O load, half of the LUNs use one path as the primary and half use the other. This means that both paths are considered primary for some LUNs and secondary for some LUNs. Because there is a primary and secondary path for each LUN, the T3 is an Active/Passive type array.
When Dynamic Multipathing (DMP) scans the device list looking for devices that are accessed through more than one controller, it assigns the name of the disk media record based on whichever controller is probed first. Because of this all the LUNs in the array will have DM records that start with the same controller. The DM record name does not indicate which controller is in use as the primary path for a particular LUN.
EXAMPLE:
The array is attached to the host through 2 controllers, C1 and C4. One LUN uses the C1 path as the primary and C4 as the secondary. The other LUN uses C4 as the primary and C1 as the secondary. Both LUNs have DM records that begin with C1.
# vxdisk list
DEVICE TYPE DISK GROUP STATUS
c1t2d0s2 sliced disk01 rootdg online
c1t2d1s2 sliced disk02 rootdg online
DMP does know which path is primary and which is secondary for each LUN. That information can be displayed with the vxdisk list command.
vxdisk list c1t2d0s2
Device: c1t2d0s2
devicetag: c1t2d0
type: sliced
hostid: tpsw-154
disk: name=disk01 id=966899066.1066.tpsw-154
group: name=rootdg id=966899051.1025.tpsw-154
flags: online ready autoconfig autoimport imported
pubpaths: block=/dev/vx/dmp/c1t2d0s4 char=/dev/vx/rdmp/c1t2d0s4
privpaths: block=/dev/vx/dmp/c1t2d0s3 char=/dev/vx/rdmp/c1t2d0s3
version: 2.1
iosize: min=512 (bytes) max=2048 (blocks)
public: slice=4 offset=0 len=279707648
private: slice=3 offset=1 len=8191
update: time=966899613 seqno=0.9
headers: 0 248
configs: count=1 len=6027
logs: count=1 len=913
Defined regions:
config priv 000017-000247[000231]: copy=01 offset=000000 enabled
config priv 000249-006044[005796]: copy=01 offset=000231 enabled
log priv 006045-006957[000913]: copy=01 offset=000000 enabled
Multipathing information:
numpaths: 2
c1t2d0s2 state=enabled type=secondary
c4t1d0s2 state=enabled
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
vxdisk list c1t2d1s2
Device: c1t2d1s2
devicetag: c1t2d1
type: sliced
hostid: tpsw-154
disk: name=disk02 id=966899118.1145.tpsw-154
group: name=rootdg id=966899051.1025.tpsw-154
flags: online ready autoconfig autoimport imported
pubpaths: block=/dev/vx/dmp/c1t2d1s4 char=/dev/vx/rdmp/c1t2d1s4
privpaths: block=/dev/vx/dmp/c1t2d1s3 char=/dev/vx/rdmp/c1t2d1s3
version: 2.1
iosize: min=512 (bytes) max=2048 (blocks)
public: slice=4 offset=0 len=279707648
private: slice=3 offset=1 len=8191
update: time=966899613 seqno=0.7
headers: 0 248
configs: count=1 len=6027
logs: count=1 len=913
Defined regions:
config priv 000017-000247[000231]: copy=01 offset=000000 enabled
config priv 000249-006044[005796]: copy=01 offset=000231 enabled
log priv 006045-006957[000913]: copy=01 offset=000000 enabled
Multipathing information:
numpaths: 2
c1t2d1s2 state=enabled
c4t1d1s2 state=enabled type=secondary
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
The multipathing information shows that C1 is primary for disk02 and secondary for disk01, while C4 is primary for disk01 and secondary for disk02. If the primary path fails, DMP will switch to the secondary path and the type will show as disabled for the failed path.
15. 通过T3查看
On the T3 -
labt3-1:/:port listmap
port targetid addr_type lun volume owner access
u1p1 1 hard 0 v0 u1 primary
u1p1 1 hard 1 v1 u1 primary
u1p1 1 hard 2 u2v0 u2 failover
u1p1 1 hard 3 u2v1 u2 failover
u2p1 2 hard 0 v0 u1 failover
u2p1 2 hard 1 v1 u1 failover
u2p1 2 hard 2 u2v0 u2 primary
u2p1 2 hard 3 u2v1 u2 primary
This shows us our LUN ownership and host port target ID's. This
is an example of an ES pair in a normal state.
labt3-1:/:port list
port targetid addr_type status host wwn
u1p1 1 hard online sun 50020f2300005838
u2p1 2 hard online sun 50020f2300005511
9.关于负载平衡
如果阵列没有两个控制器,且非Active/Active工作方式,(注意:并不是所有厂家的所有阵列都支持这种工作方式)。那么阵列的负载平衡就无法实现。
Depending on the array configuration and running version of Volume Manager, can operate in the following modes:
Active/Active (A/A)
In Active/Active, all sub paths to a disk/lun can be accessed simultaneously. Active/Active allows for load balancing and failover in the event of a path failure.
A Sun A5x00 array is an example of an A/A configuration.
Active/Passive - Auto tresspass (A/P)
In Active/Passive, only one of the paths to a disk/LUN can be used at any one time. In the event of an i/o failure on the primary path, i/os will be sent to one of the secondary paths. With an array configured in trespass mode, the failover is invoked by sending the i/os to the second path. Failover is confined to an individual LUN instance level. Active/Passive arrays do not allow load balancing as only one path can be used under normal operating conditions. Auto trespass is also known as implicit failover.
A Sun T3 array in a single host environment (mp_support=rw) is an example of an A/P - auto-trespass configuration
Active/Passive - Explicit failover (A/PF)
In Active/Passive - explicit failover, only one of the paths (primary) to the disk/LUN can be used at any one time. In the event of an i/o failure, a special command is sent to the array to invoke a failover such that a secondary path can be used. Explicit failover is also known as nonauto-trespass mode.
A Sun T3 array in a multi-host environment (mp_support=std) is an example of an A/PF configuration.
Active/Passive - LUN group failover (A/PG)
In Active/Passive - LUN group failover, a group of one or more LUNs are assigned to a controller on the array, which becomes the primary path to the disks. In the event of an i/o failure to a single LUN, the entire group of LUNs is switched to another controller in the array. This controller becomes the secondary active path.
10.VM的DMP与阵列DMP的结合使用
如果VM的DMP要与阵列的DMP同时使用,请查支持列表,例如HP/CPQ Secure Path 4.0
或EMC PowerPath 3.0.x or ATF,以PKG包的形式存在。
阵列的DMP软件功能是将多路径合并成一条路径,且能实现控制器间的负载均衡。而VM去管理的设备是阵列的DMP软件产生的设备,
通过命令#vxidisk list
emcpower33c simple - - online
emcpower38c simple - - online
emcpower40c simple - - online
emcpower41c simple - - online
emcpower42c simple - - online
emcpower43c simple - - online
emcpower44c simple - - online
emcpower45c simple - - online
emcpower46c simple - - online
emcpower47c simple - - online
emcpower48c simple - - online
emcpower49c simple - - online
emcpower50c simple - - online
emcpower51c simple - - online
emcpower52c simple - - online
11.一个配置PowerPath的例子
Reconfiguring Solaris Hosts running EMC PowerPath and Veritas VxVM...
For configuration purposes, PowerPath stores a primary and alternate device path in the /kernel/drv/emcpower.conf configuration file, and the Symmetrix device number in stored in the /etc/emcpower_to_volnum file.
Due to hardware reconfiguration, the PowerPath configuration may become invalid for the following reasons:
a) primary and/or alternate hardware address for the underlying device has changed
b) a different volume may be placed behind a hardware address..
The objective of this procedure is to completely reconfigure PowerPath and reimport VxVM disk groups:
Assumptions:
1. emcpower/safe devices are not part of an encapsulated root disk
2. when the hardware configuration is implemented, all the physical disks belonging to the disk groups will still be visible to the host
3. VxVM disk groups are defined on emcpower devices
NOTE: This procedure is to be used only when it is sure that the emcpower devices will be renumbered due to hardware changes.
Do not use this procedure unless you fully understand the situations when it is to be used. Please contact the EMC Customer Support Center should you have any questions.
Obtain a copy of inq version 6.02 or higher as previous versions of inq were not built to see "emcpower" devices.
SAVE THE CONFIGURATION
1. inq > inq.before - save a copy of the hardware config
2. vxprint -ht > vxprint.ht.out - save a copy of all disk group configurations
3. vxdisk list > vxdisk.list.out - save a copy of each disk and it's associated device
4. for each disk group: vxprint -hvmps -mg > vxprint.dgname.out
- save a mapfile for each disk group
5. Save the above configuration files on a non-PowerPath filesystem
SHUTDOWN AND RECONFIGURE
6. vxdg deport - deport the disk group
7. add new targets/luns to the sd.conf file
8. init 0
9. implement the hardware changes
10. boot -rs - reconfigure reboot to reconfigure devices
11. inq - verify that the hardware reconfiguration was successful and that all paths are visible to the host
12. rm /dev/dsk/emcpower* - delete the old emcpower nodes
13. rm /dev/rdsk/emcpower* - delete the old emcpower nodes
14. mv /kernel/drv/emcpower.conf /kernel/drv/emcpower.conf.old
15. mv /etc/emcpower_to_volnum /etc/emcpower_to_volnum.old
16. powercf -q - quietly reconfigure PowerPath. Creates a new emcpower.conf and emcpower_to_volnum.
17. reboot -- -r - reboot reconfigure
MAKE POWERPATH DEVICES VISIBLE TO VERITAS SO THAT AN IMPORT SCAN WILL SUCCEED
18. powervxvm setup - create the /dev/vx/(r)dmp/emcpower nodes
19. vxdctl enable - rescan all the devices on the system
20. powervxvm define - bring the emcpower devices into the VxVM disk list
21. powervxvm online - bring devices with valid private regions online
22. vxdisk list - ensure that all the emcpower devices are "online"
23. vxdg import - import the disk group
24. vxvol -g startall - start the volumes