存储区域网络SAN架构下管理软件的研制_第1页
存储区域网络SAN架构下管理软件的研制_第2页
存储区域网络SAN架构下管理软件的研制_第3页
存储区域网络SAN架构下管理软件的研制_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、存储区域网络SAN架构下管理软件的研制摘要针对目前企业对于不同厂家的存储设备无法有效的进展统一管理的现状,本论文在设计方法上通过对不同厂家存储设备的API接口进展分析和抽象,采用客户端/效劳器构造,利用JAVA语言在SAN架构下编制可视化存储管理软件,从而生成一个新的通用型的存储设备接口来定义存储设备的种种操作,进而实如今单一控制平台上对不同厂家的存储设备进展统一管理的目的。关键词存储;软件;异构20世纪90年代以来,随着信息量的急剧增加以及多媒体在各个领域的广泛应用,企业不断购置存储设备以满足日益增长的数据储存和管理的需要。数据以及信息的存储日益成为决定企业命运的最主要因素之一。然而在企业花

2、费巨资购置各个厂家存储设备的时候,却不得不面临一个紧要的问题:来自各个厂家的信息存储技术和设备共存,甚至是在同一企业的不同部门都存在着不同的信息存储方案或是平台,如此复杂的环境使得高效能、低本钱经济的信息数据存储管理变得很难顺利的实现。该工程的目的就是为了创立一个集中、简单、统一的管理软件,方便的管理来自不同供给商的存储设备。通过它,系统管理员将可以统一规划、分配SAN环境中的存储空间,从而实现优化资源利用,进步信息管理的效率。研究的内容主要包括两大局部:客户端软件和效劳器端软件。客户端软件主要完成一个图形化的操作界面,将采用inds的界面风格,可以支持菜单、工具条、状态栏和详细阅读区等界面元

3、素。效劳器端软件主要完成对RAID磁盘阵列控制器的各种操作处理和监控。在此项研究中要解决的关键问题就是如何实现对SAN架构下不同厂商的存储设备的统一管理。采用的方法是,通过对各个厂家存储设备的API接口进展分析和抽象,从而生成一个新的通用型的存储设备接口来定义存储设备的种种操作,新设备只要实现这个接口便可以被支持和使用。1应用该软件的系统构造软件采用客户/效劳器形式,系统构造图如图1所示。管理效劳器通过Fibrehannel交换机和效劳器、存储系统连接。通过fabrehannel,管理效劳器可以管理所有的存储设备。系统采用恳求/应答方式工作。客户端负责图形界面显示和处理用户输入,然后将用户户命

4、令转化成恳求发送给效劳器,效劳器承受/处理恳求,最后返回结果。客户端在图形界面上显示效劳器处理结果。图1系统构造图客户端软件采用JAVA语言编写,可以运行在任何支持JAVA2的平台上。软件的界面由菜单条、工具条、对象树、对象列表和右键弹出菜单等组成。用户可以在对象树或对象列表中选中某个详细对象比方Raid控制器、通道、硬盘、逻辑盘、逻辑卷等,然后在菜单条、工具条或右键菜单中选取某个操作项,进展操作。图2客户端软件界面鉴于客户端的设计采用的是常规界面的设计方法,以及本工程的创新集中在效劳器端软件,客户端软件的设计将不再更详细说明。客户端软件界面如图2。管理效劳器端采用Java编制,它主要负责对存

5、储设备的数据采集及控制,通过Java接口与客户端通信。对于如何实现对不同厂商的存储设备的管理,在软件编制上我们通过对各厂家API接口的分析,在管理效劳器端实现一个抽象的存储设备管理接口,这个接口和设备无关。这个接口定义存储设备的多种操作,新设备只要实现这个接口,管理效劳器就可以支持这种新设备。设计时采用面向对象的思想,抽象出一些数据构造和方法的集合,从而构成一个可以描绘RAID控制器的类。对于不同类型的存储设备,我们构造出它的实例,通过这个实例对存储设备进展控制管理。设计时,我们为每种RAID控制器定义一个名称,并以该名称为唯一关键字,该链表中保存着该软件所支持的各类RAID控制器,该链表在效

6、劳器启动时初始化。出于跨平台的考虑,软件开发中要严格符合PSIX标准,使之可以运行于Linux、AIX、Slaris等主流操作系统上。RAID类型链表构造:typedefstruthead_thead;harnae16;lngip;intprt;harpassrd32;pthread_utex_tlk;raidp_t*raidp;reEiver_t*reeiver;raidtable_t;当收到客户端发出搜索当前在线的RAID控制器的指令后,程序会循环调用raid_list中每种RAID控制器,然后将得到的对应的操作函数执行指令返回给客户端。这样客户端就可以对特定的RAID控制器做特定的操作。

7、当效劳器端程序启动后,首先要初始化raid_list链表,将支持的RAID控制器的raidtable_t构造插入这个链表。然后等待客户端的指令。当软件收到客户端的搜索所有RAID控制器的指令后,它会循环调用raid_list中每种RAID控制器的搜索方法,然后将得到的结果返回给客户端。当效劳器收到其它针对某个RAID的指令的时候,它会根据参数中的RAID名称等标示和操作类型在raid_list链表中搜索对应的操作函数执行,将结果返回给客户端。其运行过程如图3。对于来自客户端的对于各种RAID命令的处理,由于Raid命令非常的多,而且不同Raid控制器对于同一命令的处理不尽一样,为了使得系统构造

8、明晰,并且能灵敏地裁剪Raid命令,特设计了一系列的命令类,每一个命令类代表一种Raid操作,并且它们都继承了同一个超类,这样设计使得命令处理流程的高层都是一样的,只是详细的操作由它们各自的方法来完成,这样既进步了代码的重用性,又把修改某个详细命令对系统的影响降到了最低。图3效劳器端程序运行图如图4所示,AbstratServie类是效劳器提供的效劳的抽象,它里面最重要的方法就是exe,每一种详细的效劳类必须实现该方法,以便完成该效劳。出于扩展效劳器端功能的考虑,比方效劳器可能还要完成其他的效劳包括列节点的目录、共享节点的目录等在内的节点效劳,所以所有的Raid命令都继承的是AbstratRa

9、idServie,该类进一步为所有Raid命令提供根本支持,比方每种命令产生的结果就在这个类中进展组装。图4:效劳器端Raid命令效劳的类关系图通过客户端软件,对于某个Raid控制器功能的所有数据就被准备好了,通过通信子系统与效劳器端进展通信,效劳器再与底层硬件层通信,最终可完成某个Raid控制器的功能。效劳器和客户端通信使用Java的java.i.InputbjetStrea和java.i.utputbjetStrea类,直接在网络上传送java的bjet对象。客户端上传的是Request类,效劳器返回的是Respnse类。存储技术已经成为提升企业竞争力的重要力量,存储被誉为“信息时代的第二次革命,存储领域的各项研究已经成为信息技术的前沿亮点。本工程的创新点在于逻辑上将不同供给商的存储设备纳入到统一的一个存储虚拟池里,系统管理员实现对存储空间的自由分配和应用。在研究方法上,创造性地把不同厂家的存储应用接口进展抽象,形成一个“万能的接口抽象出一个虚拟的Raid控制器类,以便完成对各种不同类型存储设备的支持,也便于扩展。1RbertSpalding美.Stragenetrks:ThepleteR

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论