创建iS关CSI存储应用 COMSTAR与iSCSI挑大梁

上传人:鲁** 文档编号:485174514 上传时间:2023-07-21 格式:DOC 页数:14 大小:988.53KB
返回 下载 相关 举报
创建iS关CSI存储应用 COMSTAR与iSCSI挑大梁_第1页
第1页 / 共14页
创建iS关CSI存储应用 COMSTAR与iSCSI挑大梁_第2页
第2页 / 共14页
创建iS关CSI存储应用 COMSTAR与iSCSI挑大梁_第3页
第3页 / 共14页
创建iS关CSI存储应用 COMSTAR与iSCSI挑大梁_第4页
第4页 / 共14页
创建iS关CSI存储应用 COMSTAR与iSCSI挑大梁_第5页
第5页 / 共14页
点击查看更多>>
资源描述

《创建iS关CSI存储应用 COMSTAR与iSCSI挑大梁》由会员分享,可在线阅读,更多相关《创建iS关CSI存储应用 COMSTAR与iSCSI挑大梁(14页珍藏版)》请在金锄头文库上搜索。

1、创建iSCSI存储应用 COMSTAR与iSCSI挑大梁COMSTAR 简介COMSTAR 是一种可以实现将任何 Solaris 主机转变为 SCSI 目标的软件框架。COMSTAR 框架使所有 SCSI 设备类型(磁带、磁盘及类似设备)都可以连接到传输路径(如光纤通道),实现并行访问所有逻辑单元号 (logical unit number, LUN) 和单点管理。在 SCSI 目标模式框架 (SCSI Target Mode Frame work, STMF) 和 SCSI 块设备 (SCSI Block Device, SBD) 中,COMSTAR 也已添加了 DTrace 探测器。COM

2、STAR全称Common Multiprotocol SCSI TARget,支持iSCSI,Fiber Channel,FCoE,Infiniband,SAS等协议。COMSTAR提供了一个基于OpenSolaris的企业级的存储框架,它可以将各种存储介质(磁盘、磁带)结合各种通信信道(光纤、iSCSI, iSER, SAS, FcoE等)构成一个存储系统。COMSTAR具有以下关键特性:OpenSolaris:COMSTAR被集成进OpenSolaris,这意味着只要你安装了最新版的OpenSolaris,就内置了STMF模块COMSTAR具有丰富的API,并且支持多种平台COMSTAR遵

3、循T10技术委员会对SCSI存储接口的规范,并支持多路径为每个SCSI命令并行传输COMSTAR的设计目标是为用户创建存储服务时,提供添加新传输协议和不同存储设备的一个简单易用的框架。这使用户能快速的向存储系统中添加新特性。虽然Windows、Linux上也有类似的服务,但它们并没有提供一个框架使不同的存储设备(像磁盘、软盘、SES等)能与多种传输信道(光纤, iSCSI, iSER, SAS, FcoE等)配合使用。COMSTAR则能够使Solaris操作系统,利用ZFS作为备份文件系统以及现有的存储设备阵列,把自己变成一个能被网络上任何主机访问的存储设备。COMSTAR的体系结构图如图1:

4、图1 COMSTAR的体系结构图COMSTAR主要的模块如下:STMF:负责事务管理(例如SCSI命令执行时的上下文和资源的管理),跟踪逻辑单元和端口,STMF也处理逻辑单元映射,分配内存,恢复错误操作,以及一些必要的I/O操作。Port providers:为主机总线适配器(host bus adapters)或者网卡提供的本地连接Logical unit providers:实现SCSI逻辑单元(例如,磁盘、磁带、virtual tape library等)的功能Management library (libstmf):与STMF通信,并负责执行配置任务这种分层模块化的框架将SCSI命令的

5、执行和清除以及资源的分配隔离开来,使得实现SCSI功能的模块不直接与传输模块交互,实现传输协议的模块也不需要关系SCSI层的功能。从而简化了SCSI和传输等模块的编写。iSCSI简介iSCSI,即internet SCSI,是IETF制定的一项标准,用于将SCSI数据块映射成以太网数据包。iSCSI技术是一种基于IP Storage理论的新型存储技术,这里就SAN与iSCSI做一比较,基本两者同属运行块协议的SAN架构,只不过前者透过Fibre Channel,后者由IP传输数据罢了,而两者在管理及应用上也大同小异。这里在此还是尽量做一番归纳整理,以供参考,见表1。表1 iSCSI和SAN综合

6、对比表1 iSCSI和SAN综合对比iSCSI协议模型iSCSI使用TCP/IP协议在不稳定网络上进行可靠的数据传输。iSCSI层和标准SCSI集在协议栈中的位置如图1所示。iSCSI层包括了已封装的SCSI命令、数据和状态如图2所示。图2 iSCSI协议栈iSCSI属于端到端的会话层协议,它定义的是SCSI到TCP/IP的映射,即Initiator将SCSI指令和数据封装成iSCSI协议数据单元,向下提交给TCP层,最后封装成IP数据包在IP网络上传输,到达Target后通过解封装还原成SCSI指令和数据,再由存储控制器发送到指定的驱动器,从而实现SCSI命令和数据在IP网络上的透明传输。它

7、整合了现有的存储协议SCSI和网络协议TCP/IP,实现了存储与TCP/IP网络的无缝融合。iSCSI 体系结构模式和两个术语iSCSI 体系结构模式如图3 。图3 iSCSI 体系结构模式在iSCSI 体系结构模式中通常有两个角色Target与Initiator分别叙述如下:(1)Target称为Target的通常是存储设备(Storage Device),也就是存放数据的磁盘(以磁盘阵列居多)。在我们使用iSCSI期间,会在iSCSI存储设备上去建立LUN(Logical Unit Number),提供给有iSCSI Initiator功能的主机来存取iSCSI存储设备。(2)Initia

8、torInitiator的主要功能是提供计算机主机联机到Target作磁盘存取。这个Initiator可使用硬件方式Initiator或者软件方式Initiator,本文下面的iSCSI操作,皆是使用软件方式Target与Initiator。主流操作系统对iSCSI支持对于蓄势待发已久的iSCSI而言,迟迟未能全面普及的主要原因之一,就在于各类平台支持性的不够完备。是否能得到各式平台充份支持的关键,则在于协议的标准化上。表2是主流操作系统对iSCSI支持情况。表2 主流操作系统对两个角色Target与Initiator支持iSCSI 的装置识别、存取、安全认证iSCSI是透过iSCSI认证名称

9、(iSCSI Qualifier Name,IQN)来识别iSCSI装置,当前端设备发起存取要求时,iSCSI设备即能依照映射设定,响应存取要求?用于识别iSCSI装置的iSCSI认证名(IQN)命名有一定的规则可循,每家主要厂商都有一定的形式,如IBM为iqn.1992-.ibm:xxxxxx;cisio为iqn.1987-.cisco:xxxxxx。(1)iSCSI的命名和编址一个iSCSI名字由三部分组成:类型定义符、名字认证机构、由该认证机构分配的名字.acme.sn.8675309iSCSI地址格式 :/ (2)iSCSI的安全机制由于IQN可自行窜改,因此只依赖IQN作为识别发起者

10、身分的机制相当不安全,所以iSCSI又提供了握手认证协议(Challenge Handshake Authentication Protocol,CHAP)来认证iSCSI发起方的身分。只有通过CHAP认证的发起端才会被允许存取。当然CHAP亦有遭破解的可能,因此也能选用效果更好的IPsec等适用于IP网络的加密机制。OpenSolaris下 安装配置COMATAROpenSolaris本身带了一个iSCSI Target服务,运行在userland,性能一般,这里不使用它,使用COMATAR它可以通过ZFS管理。以下配置的逻辑图如图4。图4 配置的逻辑图1 、服务器端配置安装Storage

11、Server软件包: pfexec pkg install storage-server SUNWiscsit pfexec reboot 2 、ZFS存储池配置 $ pfexec zpool create san_pool mirror c9t0d0 c9t1d0 $ zpool list san_pool NAMESIZEUSEDAVAILCAPHEALTHALTROOT san_pool1008M313K1008M0%ONLINE- $ zpool status san_pool pool: san_pool state: ONLINE scrub: none requested con

12、fig: NAMESTATEREAD WRITE CKSUM san_poolONLINE000 mirrorONLINE000 c9t0d0ONLINE000 c9t1d0ONLINE000 errors: No known data errors 3 、创建磁盘卷 $ pfexec zfs create -V 300M san_pool/vol_osol $ pfexec zfs create -V 300M san_pool/vol_lx $ pfexec zfs create -V 300M san_pool/vol_win $ zfs list -t volume NAMEUSEDA

13、VAILREFERMOUNTPOINT rpool/dump511M26.1G511M- rpool/swap512M26.5G137M- san_pool/vol_lx300M376M16K- san_pool/vol_osol300M376M16K- san_pool/vol_win300M376M16K- 4 、创建三个SCSI Logical Unit Numbers (LUN) $ pfexec sbdadm create-lu /dev/zvol/rdsk/san_pool/vol_osol $ pfexecsbdadm create-lu /dev/zvol/rdsk/san_p

14、ool/vol_lx $ pfexec sbdadm create-lu /dev/zvol/rdsk/san_pool/vol_win 查看一下LUN情况: $ pfexec sbdadm list-lu 图5 查看一下LUN情况5 、添加LUN 到试图 pfexec stmfadm list-lu -v $ pfexec stmfadm list-view -l 600144F01EA8050000004B17FC0A0001 LUN概念UN的全称是LOGICAL UNIT NUMBER,也就是逻辑单元号。我们知道SCSI总线上可挂接的设备数量是有限的,一般为6个或者15个,我们可以用TA

15、RGET ID(也有称为SCSI ID的)来描述这些设备,设备只要一加入系统,就有一个代号。 而实际上我们需要用来描述的对象,是远远超过该数字的,于是我们引进了LUN的概念,也就是说LUN ID的作用就是扩充了TARGET ID。UN是什么东西? LUN ID不等于某个设备,只是个号码而已,不代表任何实体属性,在我们的实际环境里,我们碰到的LUN可能是磁盘空间,可能是磁带机,或者是MEDIA CHANGER等等. LUN的神秘之处(相对于一些新手来说)在于,它很多时候不是什么可见的实体,而是一些虚拟的对象。比如一个阵列柜,主机那边看作是一个TARGET DEVICE,那为了某些特殊需要,我们要将磁盘阵列柜的磁盘空间划分成若干个小的单元给主机来用,于是就产生了一些什么逻辑驱动器的说法,也就是比TARGET DEVICE级别更低的逻辑对象,我们习惯于把这些更小的磁盘资源称之为LUN0,LUN1,LUN2.什么的。而操作系统的机制使然,操作系统识别的最小存储对象级别就是LUN DEVICE,这是

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 资格认证/考试 > 自考

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号