5netapp存储配置练习SAN.doc

上传人:文库蛋蛋多 文档编号:2293199 上传时间:2023-02-09 格式:DOC 页数:115 大小:829.50KB
返回 下载 相关 举报
5netapp存储配置练习SAN.doc_第1页
第1页 / 共115页
5netapp存储配置练习SAN.doc_第2页
第2页 / 共115页
5netapp存储配置练习SAN.doc_第3页
第3页 / 共115页
5netapp存储配置练习SAN.doc_第4页
第4页 / 共115页
5netapp存储配置练习SAN.doc_第5页
第5页 / 共115页
点击查看更多>>
资源描述

《5netapp存储配置练习SAN.doc》由会员分享,可在线阅读,更多相关《5netapp存储配置练习SAN.doc(115页珍藏版)》请在三一办公上搜索。

1、NetApp存储基础学习汇总(第五部分)目 录一、SAN管理11.1、SAN基本概念11.2、通过LUN SETUP配置LUN21.3、LINUX主机通过iSCSI访问LUN41.3.1、iSCSI协议结构41.3.2、iSCSI 流量控制与超时重发51.3.3、iSCSI发现机制51.3.4、Linux网络环境iSCSI技术的实现方式61.3.5、linux iSCSI实际配置用例71.3.6、Windows2003 iSCSI实际配置用例111.3.7、Solaris10 iSCSI实际配置用例191.3.8、三种操作系统使用iSCSI总结221.4、iscsiadm命令221.5、Int

2、ernet存储名称服务261.6、FC SAN的一些基本概念271.6.1、关于HBA的知识271.6.2、关于LUN的知识281.6.3、关于备份(Backup)和高可用性(High availability)301.7、NETAPP SAN配置的一些重要命令321.3.9、在存储端分步设置LUN113一、SAN管理1.1、SAN基本概念FCP和SCSI是NetApp SAN技术所用的两种数据传输协议。FCP只能被用在SAN环境,它支持光纤通道技术。它需要特殊的线缆、适配卡和私有的软件。相反,iSCSI是基于IP协议的技术,设计用来支持SAN技术。它允许数据存储和检索,并与设备所处地理位置无

3、关。SAN(Storage Area Network)是一个在主机与存储之间传输数据的网络。在NETAPP的SAN里,连接filer的主机即可以跑是FCP也可以跑iSCSI协议,可以用在多种主机环境,比如linux、windows、HP-UX和IBM-AIX,iSCSI也可以支持这些,具体支持那些操作系统、主机架构需要在NOW网站查询兼容列表。一个SAN系统由三个基本元素组成:l 发起设备 在SAN中主动搜索目标设备并与之交互作用的设备,如服务器和工作站。l 目标设备 即存储设备:磁带机、磁带库、JBOD、RAID等。l 互连设备 SAN系统中最重要的组件就是互连设备,即光纤交换机,它是构成S

4、AN系统的基础。其它还有集线器和路由器等。主机和filer可以通过三种方式连接:l 直接连接。l 单通道光纤连接,下图两个filer做cluster,两个光纤交换机连接存储,防止交换机成为单点故障,每个主机都是单路径连接到交换机通过它们安装的HBA卡。主机上的HBA卡是发起方。l 多通道光纤连接,下图两个filer做cluster,两个光纤交换机作为连接设备,防止交换机成为单点故障,UNIX主机之间做cluster同时具有多路径连接到交换机通过它们的HBA卡,windows主机之间也做cluster,通过多路径连接交换机。每个主机两个HBA卡,多台主机设备,一个filer集群,互相之间的链路全

5、是多路径的,这样的配置有时候需要额外的多路径管理软件比如veritas volumeManager for solaris或者MS的MPIO for windows。iSCSI配置:对比FCP配置,iSCSI使用LAN配置更简单。影响iSCSI性能的关键因素有以下几点:l 存储的数量l 主机的数量l 网络的类型l 安全的类型1.2、通过LUN SETUP配置LUNLUN的定义:要想定义和描述logical unit number(LUN),首先必须理解在SAN环境中主机和存储之间的关系,在Netapp SAN环境中,主机是发起者同时存储是目标(具有目标设备LUN),你可以在存储里面创建LUN,

6、然后通过主机来访问。一个主机对待LUN就象对待本地硬盘一样,可以被主机格式化。而存储视LUN为实际存储的逻辑表示。创建LUN的步骤:(1)、绑定主机的HBA卡到目标filer某个端口的WWPN.(2)、在存储一边,创建一个initiator组(igroup)用主机端的WWPN。(3)、在存储端创建LUN.(4)、将LUN与igroup之间进行映射。下图展示了在volume上创建了4个LUN:l LUN0和LUN1创建在/vol/vol1的根目录l LUN2和LUN3创建在/vol/vol1/qtree1的根目录l 不要在/vol/vol0上创建LUN,因为DataONTAP要使用它作为系统管理

7、之用。l 下图是两个raidgroup做成一个volume,卷里又创建了一个qtree,在volume和qtree的根里面分别创建了2个LUN,可以看出LUN只是一块存储容量的表示,具体保存在那对用户的不透明的。创建LUN之前的准备工作:在创建LUN之前,你必须在存储上创建好volume或者qtree。l 如果你要使用snapshot,则创建一个容量是LUN两倍的volume。l 创建一个volume是专为创建LUN使用的,里面不应该有其它文件或者目录。l 确保可以被NAS协议访问的volume不包含LUN,因为它们有不同的空间预留需求。l 激活volume上的space reservatio

8、ns。l 关闭卷上的自动snapshot.l 在volume上激活create_ucod选项,使可以动态的分配更多空间为系统信息。l 可以创建qtree来保存同一类型的LUN,以利用qtree管理灵活的特性,比如备份和恢复。LUN的属性:在创建LUN的过程中,你要指定下列属性:l Volume或者qtree根级的路径名,比如/vol/vol1/lun0,/vol/vol1/qtree1/lun1l 即将访问LUN 的主机操作系统类型。l LUN的尺寸,最小512字节,最大2TB.l 要访问LUN的igroup的名字l 主机那边使用什么协议l 端口名(WWPN)的 16进制格式l Igroup要

9、访问LUN ID号在创建完LUN之后,在主机一端根据操作系统的不同,就需要执行不同的命令来使主机可以访问LUN,比如在solaris主机就使用sanlun来管理主机LUN和HBA卡信息。在windows主机,则使用windows Disk Management或者Netapp提供的snapdrive来连接和访问LUN。1.3、LINUX主机通过iSCSI访问LUN1.3.1、iSCSI协议结构iSCSI协议基本上是一种跨过IP网络来传输SCSI 数据区块的方法,发起读写请求的来源机器设备称作Initiator(发起方),被请求的目标设备则称作Target。如同任何一个协议一样,iSCSI也有一

10、个清晰的层次结构,根据OSI模型,iSCSI的协议栈自顶向下一共可以分为五层,如下图所示: l SCSI层:根据应用发出的请求建立SCSI CDB(命令描述块),并传给iSCSI层;同时接受来自iSCSI层的CDB,并向应用返回数据。l iSCSI层:对SCSI CDB进行封装,以便能够在基于TCPIP协议的网络上进行传输,完成SCSI到TCPIP的协议映射。这一层是iSCSI协议的核心层。 l TCP层:提供端到端的透明可靠传输。l IP层:对IP报文进行路由和转发。 l Link层:提供点到点的无差错传输1.3.2、iSCSI 流量控制与超时重发流量控制是指发送方控制发送数据帧到网络的速率

11、。发送方发送的速率般是传送路径上的交换机、路由器或接收方可用的缓冲区大小的函数。iSCSI则采用TCPlP协议的端到端的流量控制机制,以可变发送窗口的方式进行流量控制。发送窗口在连接建立时由双方面定,但在通信过程中,接收方可根据自己的资源使用情况,随时动态地调整自已的接收窗口(可增大或减小),然后告诉对方,使发送方的发送窗口和自己的接收窗口一致。iSCSI采用的是TCP的自适应超时重发算法,可根据网络的情况动态调整。这种算法记录每一个报文段发出的时间以及收到相应的确认报文段的时间,这两个时间之差就是报文段的往返时延RTT,当发送个数据段时,启动相应的定时器,如果定时器超时确认报文段还没有到达,

12、就触发数据配发机制。如果超时之前得到确认,就记录新的往返时延,将各个报文段的往返时延样本进行加权平均得到新的报文段的平均往返时延RTT,显然定时器设置的重发时间应大于平均的往返时延RTT。在实际应用中,RTT的算法还很复杂,目前一般采用的是Karm算法。1.3.3、iSCSI发现机制iSCSI发起端为了和iSCSI目标端建立iSCSI会话,iSCSI需要知道ISCSI目标端的IP地址,TCP端口号和名字三个信息。iSCSI发现的目的是为了让iSCSI发起端获取一条到iSCSI目标端的通路。iSCSI有三种发现机制: 静态配置:在iSCSI发起端已经知道iSCSI目标端的IP地址TCP端口号和名

13、字信息时,iSCSI发起端不需要执行发现。iSCSI发起端直接通过IP地址和TCP端口来建立TCP连接,使用iSCSI目标端的名字来建立iSCSI会话。这种发现机制比较适合比较小的iSCSI体系结构 SendTarget发现:在iSCSI发起端知道iSCSI目标端的IP地址和TCP端口的情况下,iSCSI使用IP地址和TCP端口号建立TCP连接后建立发现对话。iSCSI发起端发送SendTarget命令查询网络中的存在的iSCSI信息。这种方法主要用于网关设备,iSCSI发起端被静态配置连接到指定的iSCSI设备。iSCSI发起端和iSCSI网关设备建立对话并发送SendTarget请求给iS

14、CSI网关设备。iSCSI网关设备返回一系列和它相连的ISCSI目标端的信息。iSCSI发起端选择一个目标端来建立对话。 零配置发现:这种机制用于iSCSI发送设备完全不知道ISCSI目标端的信息的情况下。iSCSI发起端利用现有的IP网络协议SLP(Service Location Protocol for Discovery,服务定位协议)。iSCSI目标端使用SLP来注册,iSCSI发起端可以通过查询SLP代理来获得注册的iSCSI目标端的信息。当iSCSI目标端加入到网络中的时候,拓扑结构也随之改变。虽然这种方法增加了实现的复杂性,但它不需要重新配置发起端即可找到新的目标端。1.3.4

15、、Linux网络环境iSCSI技术的实现方式iSCSI Initiator可分为三种,即软件Initiator驱动程序、硬件的TOE(TCP Offload Engine,TCP卸载引擎) HBA卡及iSCSI HBA卡。就性能而言,软件Initiator驱动程序最差、TOE HBA卡居中、iSCSI HBA卡最佳。但是iSCSI HBA只能运行iSCSI协议,而无法运行NFS(Network File System,SUN制定)或CIFS(Common Internet File System,微软制定)等档案系统协议与应用服务器沟通。但Initiator驱动程序及TOE HBA卡则同时支持

16、iSCSI、NFS及CIFS三种协议。(1)、纯软件方式 服务器采用普通以太网卡来进行网络连接,通过运行上层软件来实现iSCSI和TCP/IP协议栈功能层。这种方式由于采用标准网卡,无需额外配置适配器,因此硬件成本最低。但是在这种方式中,服务器在完成自身工作的同时,还要兼顾网络连接,造成主机运行时间加长,系统性能下降。这种方式比较适合于预算较少,并且服务器负担不是很大的用户。目前不论是Microsoft Windows、IBM AIX、HP-UX、Linux、Novell Netware等各家操作系统,皆已陆续提供这方面的服务,在价格上,比起前两种方案,远为低廉,甚至完全免费。但由于Initi

17、ator驱动程序工作时会耗费大量的CPU使用率及系统资源,所以性能最差。在此建议,最好是采用1GHz以上CPU的主机,如此才能获得较佳的效能表现,如果公司主机CPU在1GHz以下,那么最好不要采用。至于在各类协议的支持上,Initiator驱动程序可以同时支持iSCSI、NFS及CIFS协议。当然现在大多数服务器CPU都可以满足这个要求。这里免费的iSCSI Initiator驱动程序,才可以将一般Gigabit网卡仿真成iSCSI Initiator。然后再透过iSCSI桥接器将一般SCSI接口的存储配备仿真成iSCSI Target,如此就形成一个iSCSI-SAN。(2)、iSCSI T

18、OE网卡实现方式 在这种方式中,服务器采用特定的TOE网卡来连接网络,TCP/IP协议栈功能由智能网卡完成,而iSCSI层的功能仍旧由主机来完成。这种方式较前一种方式,部分提高了服务器的性能。在三种iSCSI Initiator中,价格比iSCSI HBA便宜,但比软件Initiator 驱动程序贵,性能也居于两者之间。目前市面上Intel的TOE(TCP Offload Engine,TCP卸载引擎) HBA价格在150美金左右。(3)、iSCSI HBA卡实现方式 使用iSCSI存储适配器来完成服务器中的iSCSI层和TCP/IP协议栈功能。这种方式使得服务器CPU无需考虑iSCSI以及网

19、络配置,对服务器而言,iSCSI存储器适配器是一个HBA(存储主机主线适配器)设备,与服务器采用何种操作系统无关。该方式性能最好,但是价格也最为昂贵。在三种iSCSI Initiator中,价格最贵,但性能最佳。1.3.5、linux iSCSI实际配置用例试验环境:项目描述主机操作系统RedHat Linux AS5, 2.6.18-8.el5存储NetApp DataONTAP 7.3iSCSI驱动iscsi-initiator-utils-6.2.0.871-0.10.el5.i386Linux主机IP192.168.0.210存储端IP192.168.0.170192.168.0.17

20、1第一步安装和操作系统适配的iSCSI驱动软件.871-0.10.el5.i386.rpm warning: iscsi-initiator-utils-6.2.0.871-0.10.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID e8562897Preparing. # 100%1:iscsi-initiator-utils # 100%安装完毕后,在/etc/iscsi目录下,有两个文件rootlinserver iscsi# ls -ltotal 16-rw-r-r- 1 root root 50 Dec 29 11:56 ini

21、tiatorname.iscsi-rw- 1 root root 9072 Sep 4 13:03 iscsid.conf iSCSI启动器服务的配置文件initiatorname.iscsi 这个文件里是iSCSI启动器的名称。# vi /etc/iscsi.conf rootlinserver iscsi# cat initiatorname.iscsi InitiatorName=iqn.1994-.redhat:55bc4ac3a2f4第二步在主机端启动iscsi服务rootlinserver iscsi# service iscsi restartStopping iSCSI dae

22、mon: iscsid dead but pid file exists OK off network shutdown. Starting iSCSI daemon: OK OK Setting up iSCSI targets: Logging in to iface: default, target: iqn.1992-app:sn.99908572, portal: 192.168.0.170,3260Logging in to iface: default, target: iqn.1992-app:sn.99908572, portal: 192.168.0.171,3260Log

23、in to iface: default, target: iqn.1992-app:sn.99908572, portal: 192.168.0.170,3260: successfulLogin to iface: default, target: iqn.1992-app:sn.99908572, portal: 192.168.0.171,3260: successful OK rootlinserver # chkconfig -list|grep iscsiiscsi 0:off 1:off 2:off 3:on 4:on 5:on 6:offiscsid 0:off 1:off

24、2:off 3:on 4:on 5:on 6:off第三步在存储端创建LUN,先删除创建好的LUNtan iscsi start =启动iscsi服务tan lun offline /vol/vol2/lun0Wed Dec 30 11:03:58 CST lun.offline:warning: LUN /vol/vol2/lun0 has been taken offlinetan lun destroy /vol/vol2/lun0Wed Dec 30 11:04:13 CST wafl.inode.fill.disable:info: fill reservation disabled

25、 for inode 100 (vol vol2).Wed Dec 30 11:04:13 CST wafl.inode.overwrite.disable:info: overwrite reservation disabled for inode 100 (vol vol2).Wed Dec 30 11:04:13 CST lun.destroy:info: LUN /vol/vol2/lun0 destroyedtan lun show -mtan igroup show linuxgroup (iSCSI) (ostype: linux): iqn.1994-.redhat:55bc4

26、ac3a2f4 (logged in on: ns1, ns0)tan igroup destroy linuxgrouptan igroup showtan lun setup This setup will take you through the steps needed to create LUNs and to make them accessible by initiators. You can type C (Control-C) at any time to abort the setup and no unconfirmed changes will be made to t

27、he system.Do you want to create a LUN? y: Multiprotocol type of LUN (solaris/windows/hpux/aix/linux/netware/vmware/windows_gpt/windows_2008) linux: A LUN path must be absolute. A LUN can only reside in a volume or qtree root. For example, to create a LUN with name lun0 in the qtree root /vol/vol1/q0

28、, specify the path as /vol/vol1/q0/lun0.Enter LUN path: /vol/vol2/lun0 A LUN can be created with or without space reservations being enabled. Space reservation guarantees that data writes to that LUN will never fail.Do you want the LUN to be space reserved? y: Size for a LUN is specified in bytes. Y

29、ou can use single-character multiplier suffixes: b(sectors), k(KB), m(MB), g(GB) or t(TB).Enter LUN size: 500m You can add a comment string to describe the contents of the LUN. Please type a string (without quotes), or hit ENTER if you dont want to supply a comment.Enter comment string: just_test Th

30、e LUN will be accessible to an initiator group. You can use an existing group name, or supply a new name to create a new initiator group. Enter ? to see existing initiator group names.Name of initiator group : linuxgroupType of initiator group linuxgroup (FCP/iSCSI) iSCSI: An iSCSI initiator group i

31、s a collection of initiator node names.Each node name can begin with either eui. or iqn. and should be in the following formats: eui.EUI-64 address or iqn.yyyy-mm.reversed domain name:optional string composed of alphanumeric characters, -, . and : Eg: iqn.2001-.acme:storage.tape.sys1.xyz or eui.0200

32、4567A425678D You can separate node names by commas. Enter ? to display a list of connected initiators. Hit ENTER when you are done adding node names to this group.Enter comma separated nodenames: iqn.1994-.redhat:55bc4ac3a2f4 Enter comma separated nodenames: The initiator group has an associated OS

33、type. The following arecurrently supported: solaris, windows, hpux, aix, linux, netwareor vmware.OS type of initiator group linuxgroup linux: The LUN will be accessible to all the initiators in the initiator group. Enter ? to display LUNs already in use by one or more initiators in group linuxgroup.

34、LUN ID at which initiator group linuxgroup sees /vol/vol2/lun0 0: LUN Path : /vol/vol2/lun0OS Type : linuxSize : 500m (524288000)Comment : just_testInitiator Group : linuxgroupInitiator Group Type : iSCSIInitiator Group Members : iqn.1994-.redhat:55bc4ac3a2f4 Mapped to LUN-ID : 0Do you want to accep

35、t this configuration? y: yWed Dec 30 11:11:30 CST lun.map:info: LUN /vol/vol2/lun0 was mapped to initiator group linuxgroup=0Do you want to create another LUN? n:第四步在主机端查找target设备rootlinserver mnt# service -status-all|grep iscsi发现target:iscsiadm -m discovery -t sendtargets -p :rootlinserver iscsi# i

36、scsiadm -mode discovery -type sendtargets -portal 192.168.0.170192.168.0.170:3260,1000 iqn.1992-app:sn.99908572192.168.0.171:3260,1001 iqn.1992-app:sn.99908572与target建立连接:rootlinserver iscsi#iscsiadm -mode node -targetname iqn.1992-app:sn.151738250 -portal 172.16.1.202:3260 loginDiscover targets at

37、a given IP address:iscsiadm -mode discovery -type sendtargets -portal 192.168.1.10Login, must use a node record id found by the discovery:iscsiadm -mode node -targetname iqn.2001-.doe:test -portal 192.168.1.1:3260 -loginLogout:iscsiadm -mode node -targetname iqn.2001-.doe:test -portal 192.168.1.1:32

38、60 -logoutList node records:iscsiadm -mode nodeDisplay all data for a given node record:iscsiadm -mode node -targetname iqn.2001-.doe:test -portal 192.168.1.1:3260第五步:fdisk l 识别了存储上的LUNrootlinserver iscsi# fdisk -lDisk /dev/sda: 21.4 GB, 21474836480 bytes255 heads, 63 sectors/track, 2610 cylindersUn

39、its = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System/dev/sda1 * 1 13 104391 83 Linux/dev/sda2 14 2610 20860402+ 8e Linux LVMDisk /dev/sdb: 21.4 GB, 21474836480 bytes255 heads, 63 sectors/track, 2610 cylindersUnits = cylinders of 16065 * 512 = 8225280 bytes Device Boo

40、t Start End Blocks Id System/dev/sdb1 * 1 2610 20964793+ 8e Linux LVMDisk /dev/sdd: 524 MB, 524288000 bytes17 heads, 59 sectors/track, 1020 cylindersUnits = cylinders of 1003 * 512 = 513536 bytesDisk /dev/sdd doesnt contain a valid partition table =这块多看见一块盘,这是不对的Disk /dev/sdc: 524 MB, 524288000 byte

41、s17 heads, 59 sectors/track, 1020 cylindersUnits = cylinders of 1003 * 512 = 513536 bytesDisk /dev/sdc doesnt contain a valid partition tablerootlinserver iscsi# dmesg |sort |grep Attached scsi disksd 0:0:0:0: Attached scsi disk sdasd 0:0:1:0: Attached scsi disk sdbsd 1:0:0:0: Attached scsi disk sdc

42、 =channel 0,id 0,lun 0sd 2:0:0:0: Attached scsi disk sddrootlinserver 192.168.0.170,3260,1000# pwd/var/lib/iscsi/nodes/iqn.1992-app:sn.99908572/192.168.0.170,3260,1000rootlinserver 192.168.0.170,3260,1000# cat default # BEGIN RECORD 2.0-871node.name = iqn.1992-app:sn.99908572node.tpgt = 1000node.sta

43、rtup = automaticiface.iscsi_ifacename = defaultiface.transport_name = tcpnode.discovery_address = 192.168.0.171node.discovery_port = 3260node.discovery_type = send_targetsnode.session.initial_cmdsn = 0node.session.initial_login_retry_max = 8node.session.xmit_thread_priority = -20node.session.cmds_ma

44、x = 128node.session.queue_depth = 32在存储端查看iSCSI情况tan iscsi session showSession 1 Initiator Information Initiator Name: iqn.1994-.redhat:55bc4ac3a2f4 ISID: 00:02:3d:00:00:00 Initiator Alias: linserverSession 2 Initiator Information Initiator Name: iqn.1994-.redhat:55bc4ac3a2f4 ISID: 00:02:3d:01:00:00Initiator Alias: linservertan iscsi status iSCSI service is runningtan iscsi security showDefault sec is Nonetan iscsi connection showNo new conne

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号