利用ISCSI存储技术构建IP存储网络
- 格式:doc
- 大小:67.00 KB
- 文档页数:5
1iscsi工作原理与服务器搭建1.1概念iSCSI是因特网小型计算机系统接口(internet Small Computer System Interface)的简称,其是IETF制订的一项标准,用于将SCSI数据块映射为以太网数据包。
从根本上来说,它是一种基于IP Storage 理论的新型存储技术。
简单的说,iSCSI就是在IP网络上运行SCSI 协议的一种网络存储技术。
一个可以用于存储数据的iSCSI磁盘阵列或者具有iSCSI功能的设备都可以称为“iSCSI Target”。
目前大部分iSCSI Target 都是收费的,例如DataCoreSoftware,FalconStor Software的iSCSI Server for Windows等,这些都是支持Windows平台的。
不过在linux平台下也存在iSCSI Target软件,例如iSCSI Enterprise Target,而这也是我们KMJ 所使用的,后面则会重点介绍该软件。
1.2iSCSI的工作原理首先客户端Initiator发出请求建立SCSI CDB(命令描述块),并将其传给iSCSI层。
而iSCSI 层则对SCSI的CDB进行封装,完成SCSI到TCP/IP的协议的映射。
TCP/IP层则对IP报文进行路由转发,并且提供端到端的透明可靠的传输。
1.3搭建iSCSI Target服务器1寻找一台linux服务器,搭建好yum源,我们一般使用kylin 3.1.8或kylin3.2.2操作系统。
2安装iSCSI Target 包yum–y install scsi-target-utils3在该服务器上添加一块空闲分区或者硬盘作为存储盘,比如将/dev/sdb作为映射存储。
4修改配置文件vi /etc/tgt/targets.conf<target zkt> //target名称可自定义backing-store /dev/sdb</target>5启动iSCSI Target服务6service tgtd start7关闭selinux 和防火墙关闭selinux,setenforcesoftmode关闭防火墙,service iptables stop 或者/etc/init.d/iptables start1.4搭建iSCSI Initiator 服务器注:以下操作不需要手动去做,KMJ 已经默认安装或通过web进行配置,只需对其有一定了解即可。
SAN是通过专用高速网将一个或多个网络存储设备和服务器连接起来的专用存储系统,未来的信息存储将以SAN存储方式为主。
SAN 主要采取数据块的方式进行数据和信息的存储,目前主要使用于以太网和光纤通道两类环境中。
无限带宽技术(Infiniband )是一种高带宽、低延迟的互连技术,构成新的网络环境,实现IB SAN 的存储系统。
通过Internet协议(IP)或以太网的数据存储。
IP存储使得性价比较好的SAN技术能应用到更广阔的市场中。
它利用廉价,货源丰富的以太网交换机,集线器和线缆来实现低成本、低风险基于IP的SAN存储。
本文主要是和大家一起探讨IP SAN和IB SAN两种网络存储方式。
一、IP SAN网络存储1、什么是IP SANIP SAN存储技术,顾名思义是在传统IP以太网上架构一个SAN存储网络把服务器与存储设备连接起来的存储技术。
IP SAN其实在FC SAN的基础上再进一步,它把SCSI协议完全封装在IP协议之中。
简单来说,IP SAN就是把F C SAN中光纤通道解决的问题通过更为成熟的以太网实现了,从逻辑上讲,它是彻底的SAN架构,即为服务器提供块级服务。
2、IP SAN的特性IP SAN 技术有其独特的优点:节约大量成本、加快实施速度、优化可靠性以及增强扩展能力等。
采用iSCSI 技术组成的IP SAN 可以提供和传统FC SAN 相媲美的存储解决方案,而且普通服务器或PC 机只需要具备网卡,即可共享和使用大容量的存储空间。
与传统的分散式直连存储方式不同,它采用集中的存储方式,极大地提高了存储空间的利用率,方便了用户的维护管理。
iSCSI 是基于IP 协议的,它能容纳所有IP 协议网络中的部件。
通过iSC SI ,用户可以穿越标准的以太网线缆,在任何需要的地方创建实际的SAN 网络,而不需要专门的光纤通道网络在服务器和存储设备之间传送数据。
iSCSI 可以实现异地间的数据交换,使远程镜像和备份成为可能。
第1章存储模式4.1 IPSAN存储模式IP-SAN,即基于IP以太网络的SAN存储架构,它使用iSCSI协议传输数据,直接在IP网络上进行存储,iSCSI协议就是把SCSI命令包在TCP/IP 包中传输,即为SCSI over TCP/IP。
IP-SAN架构使用以太网络、以太网卡和iSCSI存储设备。
IP-SAN可以将存储设备分成一个或多个卷,并导出给前端应用客户端,客户端计算机可以对这些导过来的卷进行新建文件系统(格式化)操作。
客户端计算机对这些卷的访问方式为设备级的块访问,IP-SAN通过把数据分成多个数据块(Block)并行写入/读出磁盘,块级访问的特性决定了iSCSI数据访问的高I/O性能和传输低延迟。
IP-SAN继承了IP网络开放、高性能、高可靠性、易管理、可扩展性强、自适应性强的优点,存储方式灵活,实现存储网络与应用网络的无缝连接,并提供了优良的远程数据复制和容灾特性。
1.IP SAN存储构架图表:IPSAN存储架构视频监控图像存储应具备高度的可靠性,不允许出现需要回放某一时间某一地点的录像时,出现没有录像或不能回放的情形。
存储系统的设计和配置需要从以下几个方面提高系统的可靠性:1)存储服务器的冗余技术,确保存储管理不间断工作。
2)存储磁盘阵列采用RAID技术与多种硬件冗余保证系统的高可靠性,磁盘故障不会影响数据的继续访问。
3)磁盘在线更新机制,采用热备盘实现故障的自动替换。
2.IPSAN存储特点IP-SAN存储模式具有如下特点:♦具有高带宽“块”级数据传输的优势。
♦基于TCP/IP,IP网络技术成熟,具有TCP/IP的所有优点,如可靠传输,可路由等,减少了配置、维护、管理的复杂度。
♦可以通过以太网来部署iSCSI存储网络,易部署,成本低。
♦易于扩展,当需要增加存储空间时,只需要增加存储设备即可完全满足,扩展性高。
♦数据迁移和远程镜像容易,只要网络带宽支持,基本没有距离限制,更好的支持备份和异地容灾。
iSCSI直存解决方案目录第一章. 概述 (3)第二章. 需求分析 (4)2.1 背景挑战 (4)2.2 主体需求 (5)2.3 补充需求............................................. 错误!未定义书签。
第三章. 方案架构.. (6)第四章. 业务流程 (7)4.1 直存配置流程 (7)4.2 录像存储流程 (7)第五章. 方案特点 (8)第六章. 产品介绍 (11)第一章概述当今视频监控技术伴随着计算机、网络、存储、芯片技术的进步而迅速发展,从模拟视频监控逐渐往IP网络监控发展,监控图像的高清化需求也日益强烈,监控的规模也从原来的一个园区扩大到整个城市,甚至是跨省联网监控。
但随着监控规模、监控点位、监控质量的提升,海量的高清视频数据该如何传输,以什么样的方式进行存储,如何才能提高存储业务的可靠性和高效性,是业内亟需解决的问题。
基于市场急需一套安全、可靠、高效、稳定并且便于维护的解决方案来管理整个监控数据存储业务,大华依托强大的研发实力,推出了iSCSI直存解决方案,将视频监控的视频数据采取“时间索引+块数据”的数据管理方式,能够帮助用户在提高存储业务的可靠性与高效性的同时降低系统复杂度,并且减少投入与运行的成本,满足大规模可靠性应用的需求。
第二章需求分析2.1背景挑战业界目前较为典型的监控存储的数据管理方案是:“视频编码器+媒体服务器+存储系统”。
其中媒体服务器是系统的核心,由其负责媒体数据流的分发、录像、以及VOD点播,前端设备采集的视频流经流媒体服务器转发以打包的形式写入到存储设备。
如下图:这种流媒体服务器+存储系统方案中,数据管理基于文件系统,所有的录像数据通过媒体服务器时,被转成了标准的流媒体文件,再进行存储。
存储方式利用了传统文件系统自身的特点,系统开发较为简单,但降低了监控存储的效率。
除文件系统自身的不足之外,方案还会受到流媒体服务器能力的影响。
使用iSER协议在ESXi主机上挂载存储的方法随着数据存储需求的不断增长和技术的不断发展,企业对于存储解决方案的需求也越来越多样化。
iSER(iSCSI Extensions for RDMA)协议是一种适用于存储网络的高性能传输协议,结合了RDMA(Remote Direct Memory Access)技术和iSCSI协议,可以提供更高的传输速度和更低的延迟。
在ESXi主机上使用iSER协议挂载存储,可以大幅度提升存储性能和响应时间。
本文将介绍使用iSER协议在ESXi主机上挂载存储的详细步骤。
1. 确认硬件和软件支持在开始配置之前,首先需要确保ESXi主机的硬件和软件都支持iSER协议。
硬件方面,ESXi主机的网络适配器需要支持RDMA技术,通常使用的是以太网适配器,并且需要支持iSCSI功能。
对于软件支持,ESXi主机的版本需要是6.5或更高版本,因为iSER协议在ESXi 6.5中得到了原生支持。
2. 配置存储设备和iSCSI Target在ESXi主机上挂载存储之前,需要先配置存储设备和iSCSI Target,确保它们之间可以正常通信。
首先,在存储设备上启用iSCSI服务,并创建一个LUN(Logical Unit Number)作为存储空间。
然后,在iSCSI Target上创建一个iSCSI目标,将该LUN添加到目标中。
确保在配置过程中设置了正确的接入控制列表(ACL)以及授权用户,以确保ESXi主机可以通过iSCSI协议访问存储设备。
3. 配置ESXi主机在ESXi主机上进行如下配置:3.1 进入ESXi主机的管理界面,选择"Configuration",然后选择"Storage Adapters"。
在适配器列表中找到主机上的网络适配器,点击相应的适配器。
3.2 在网络适配器的属性页面,选择"Configure iSCSI",然后点击"Enabled"来启用iSCSI协议。
iSCSI:Internet 小型计算机系统接口(iSCSI:Internet Small Computer System Interface)。
iSCSI技术是一种由IBM公司研究开发的,是一个供硬件设备使用的可以在IP协议的上层运行的SCSI指令集,这种指令集合可以实现在IP 网络上运行SCSI协议,使其能够在诸如高速千兆以太网上进行路由选择。
iSCSI技术是一种新储存技术,该技术是将现有SCSI接口与以太网络(Ethernet)技术结合,使服务器可与使用IP网络的储存装置互相交换资料。
Internet 小型计算机系统接口(iSCSI)是一种基于TCP/IP的协议,用来建立和管理IP 存储设备、主机和客户机等之间的相互连接,并创建存储区域网络(SAN)。
SAN 使得SCSI 协议应用于高速数据传输网络成为可能,这种传输以数据块级别(block-level)在多个数据存储网络间进行。
SCSI 结构基于客户/服务器模式,其通常应用环境是:设备互相靠近,并且这些设备由SCSI 总线连接。
iSCSI 的主要功能是在TCP/IP 网络上的主机系统(启动器initiator)和存储设备(目标器target)之间进行大量数据的封装和可靠传输过程。
此外,iSCSI 提供了在IP 网络封装SCSI 命令,且运行在TCP 上。
如今我们所涉及的SAN (Storage Area Network),其实现数据通信的主要要求是:1. 数据存储系统的合并;2. 数据备份;3. 服务器群集;4. 复制;5. 紧急情况下的数据恢复。
另外,SAN 可能分布在不同地理位置的多个LANs 和WANs 中。
必须确保所有SAN 操作安全进行并符合服务质量(QoS)要求,而iSCSI 则被设计来在TCP/IP 网络上实现以上这些要求。
iSCSI(Internet SCSI)是2003年IETF(InternetEngineering Task Force,互联网工程任务组)制订的一项bcm5722 ISCSI网卡标准,用于将SCSI数据块映射成以太网数据包。
H3C创新存储模式—“iSCSI块直存”作者:物联产品网作为IP领域的领导厂商之一,H3C同时在IP网络、IP视频、IP存储等领域有着长期的技术和产品积累。
进入IP监控领域后,H3C将这些技术进行融合,首家将iSCSI块存储的存储方式引入监控中,从而有效的解决了媒体服务器引入的存储的性能、可靠性以及检索效率的问题。
在“块数据”和“直存”两者的技术基础上,通过全局性的资源统一划分和调度,实现数据的全局性管理。
在大型监控系统里面,可能有成千上万个摄像机和海量的存储空间。
如何管理这些摄像头和存储设备之间的对应关系是一个非常复杂的难题。
在“块直存”视频监控系统中,H3C引入了数据管理服务器单元(DM),以此来实现存储资源的统一管理。
DM是一个专用的数据管理设备,所有的摄像头和存储资源都由其管理。
摄像头需要存储资源时,会统一向DM申请,DM会从存储空间中选择合适的存储资源分配给摄像头,使摄像头与这一块的存储资源建立读写关系。
IP SAN设备完成某个摄像头媒体数据块的存储工作后,根据监控点的IP地址、写入媒体数据的起始和终止时间,自动生成一个块索引值。
DM和IP SAN之间进行通信,获取最新的视频存储信息,对所有监控图像的检索等通过DM完成。
当然,这种存储方式必然对监控厂商的技术积累和实力提出了更高的要求,如要求编码器支持双码流,实时监控视频流和存储视频流可以独立编码,同时编码器支持iSCSI协议。
双码流是现在所有高端编码器的基本要求,实现的厂商较多,编码器支持iSCSI则要求监控厂商同时具备专业的存储技术积累,对于目前的多数监控厂商而言,存在一定的技术门槛。
可喜的是,我们看到,越来越多的监控厂商认识到存储对于一个监控方案的重要性,开始进行这方面的技术积累。
利用ISCSI存储技术构建IP存储网络(安全篇)2012-09-24 10:47:36| 分类:openfiler系统+fr|举报|字号订阅在前面的文章中,介绍了如何搭建一个简单的iSCSI网络存储系统,作为iSCSI initiator的客户端主机可以任意连接和使用iSCSI target共享出来的所有磁盘和分区,而在很多时候,通过授权认证连接共享磁盘或分区是必须的,例如:只允许客户端主机A连接target共享出来的磁盘分区一,而客户端主机B只允许连接target共享出来的磁盘分区二等等,在这种情况下,就需要在iSCSI target主机上进行授权设定了。
iSCSI 在授权访问和安全管理方面有着不错优势,它能够使用以主机为基础,也就是以IP地址为基础来设定允许或拒绝存取;也可以通过用户账号密码认证来完成允许或拒绝存取的设定。
下面通过一个应用案例来讲述iSCSI授权获取磁盘资源的方法。
有一个PC构架的iSCSI target服务器,共享的硬盘标识为/dev/sdc,大小10G,然后此硬盘划分了两个分区/dev/sdc1和/dev/sdc2,分别将/dev/sdc1共享给一个IP地址为192.168.12.136的windows客户端主机,将/dev/sdc2共享给一个IP地址为192.168.12.26的Linux客户端主机,iSCSI target服务器的IP地址为192.168.12.246。
接下来通过IP认证和用户密码认证两种方式来讲述如何实现这种需求。
一、Initiator主机以IP认证方式获取iSCSI Target资源此种方式配置非常简单,只需在iSCSI target服务器上修改两个文件即可,首先在iscsitarget主目录/etc/iet目录下找到ietd.conf文件,然后添加如下内容:Target .ixdba:sdc1Lun 0 Path=/dev/sdc1,Type=fileioTarget .ixdba:sdc2Lun 0 Path=/dev/sdc2,Type=fileio在ietd.conf文件中,定义了两个Target,每个Target分别添加了对应的磁盘分区,接着修改/etc/iet/initiators.allow文件,这个文件是定义Initiator主机对target 服务器的访问规则,作用类似与Linux操作系统中的/etc/hosts.allow文件。
修改完成的initiators.allow文件内容如下:.ixdba:sdc1 192.168.12.136.ixdba:sdc2 192.168.12.26修改完成,重启iscsi-target服务:[root@iscsi-target iet]# service iscsi-target restartStopping iSCSITarget:[ OK ]Starting iSCSITarget:[ OK ]接着,在IP地址为192.168.12.26的Linux Initiator主机上执行如下操作:[root@ Initiator iscsi]# /etc/init.d/iscsi restart[root@ Initiator iscsi]#iscsiadm -m discovery -t sendtargets -p192.168.12.246192.168.12.246:3260,1 .ixdba:sdc2[root@ Initiator iscsi]#fdisk -lDisk /dev/sda: 320.0 GB, 320072933376 bytes255 heads, 63 sectors/track, 38913 cylindersUnits = cylinders of 16065 * 512 = 8225280 bytesDeviceBoot Start End Blocks Id System /dev/sda1 * 1 13 10439183 Linux/dev/sda2 14 38913 3124642508e Linux LVMDisk /dev/sdb: 5724 MB, 5724794880 bytes177 heads, 62 sectors/track, 1018 cylindersUnits = cylinders of 10974 * 512 = 5618688 bytesDeviceBoot Start End Blocks Id System /dev/sdb1 1 1018 558573583 Linux通过重启iscsi服务,重新执行Target发现,Linux系统已经识别了Target共享出来的磁盘分区,其中“/dev/sdb: 5724 MB”就是iSCSI共享磁盘,接下来就可以在linux 上管理和使用这个共享磁盘了。
最后,登录windows系统,打开Microsoft iSCSI Initiator,添加iSCSI共享磁盘即可,这个操作很简单,这里不在详述。
二、Initiator主机以密码认证方式获取iSCSI Target资源iSCSI Target使用账号密码方式认证分成两阶段:第一阶段是Discovery查询认证所使用的账号和密码(即SendTargets 用的)。
第二阶段是登入Target / iqn / Lun时所使用的账号密码(即Login登录时用的)。
此种方式在配置方面稍复杂一些,需要在Initiator主机和iSCSI Target服务器上做简单配置,下面分步介绍。
1 配置iSCSI Target首先修改/etc/iet/initiators.allow文件,打开所有权限,修改后的内容如下:#.ixdba:sdc1 192.168.12.136#.ixdba:sdc2 192.168.12.26ALL ALL接着修改/etc/iet/ietd.conf文件,修改后的内容如下:IncomingUser discovery.auth discoverysecretTarget .ixdba:sdc1IncomingUser login.windows.auth windowssecretLun 0 Path=/dev/sdc1,Type=fileioTarget .ixdba:sdc2IncomingUser login.linux.auth linuxsecretLun 0 Path=/dev/sdc2,Type=fileio其中,第一个“IncomingUser”是个全局参数,用来指定Discovery查询认证所使用的账号和密码,必须与initiator主机中设定的用户名密码一致。
第二个和第三个“IncomingUser”选项包含在对应的Target中,用来指定windows和Linux客户端主机登录Target/iqn/Lun时所使用的账号密码。
也必须与initiator主机中设定的用户名密码一致。
所有配置完毕以后,重启iscsitarget服务。
2 配置Linux Initiator主机修改/etc/iscsi/iscsid.conf文件,添加如下选项:#以下三个是针对login的node.session.auth.authmethod = CHAP #表示在login时启用CHAP验证。
ername = login.linux.auth #验证用户名称,可以是任意字符,但必须与target端IncomingUse配置的名字一致。
node.session.auth.password = linuxsecret #验证密码,必须与target端对应的IncomingUse选项设置的密码一致。
#以下三个是针对discovery的discovery.sendtargets.auth.authmethod = CHAP #表示discovery时启用CHAP验证。
ername = discovery.auth #验证用户名称,可以是任意字符,但必须与target端IncomingUse配置的名称一致。
discovery.sendtargets.auth.password = discoverysecret #验证密码,必须与target端对应的IncomingUse选项设置的密码一致。
配置完毕,重启initiator,重新执行Discovery查询,操作如下:[root@ Initiator iscsi ]#/etc/init.d/iscsi restart[root@ Initiator iscsi ]# iscsiadm -m discovery -t sendtargets -p 192.168.12.246 192.168.12.246:3260,1 .ixdba:sdc1192.168.12.246:3260,1 .ixdba:sdc2从查询结果可知,initiator查询到了两个Target,最后执行fdisk操作:[root@ Initiator iscsi ]# fdisk -lDisk /dev/sda: 320.0 GB, 320072933376 bytes255 heads, 63 sectors/track, 38913 cylindersUnits = cylinders of 16065 * 512 = 8225280 bytesDeviceBoot Start End Blocks Id System/dev/sda1 * 1 13 10439183 Linux/dev/sda2 14 38913 3124642508e Linux LVMDisk /dev/sdb: 5724 MB, 5724794880 bytes177 heads, 62 sectors/track, 1018 cylindersUnits = cylinders of 10974 * 512 = 5618688 bytesDeviceBoot Start End Blocks Id System/dev/sdb1 1 1018 558573583 Linux从fdisk的输出结果可知,Linux initiator已经成功连接了ISCSI共享磁盘,而“/dev/sdb: 5724 MB”就是识别的硬盘标识和大小。
3 配置windows Initiator主机配置windows Initiator主机的方法在前面章节已经有过介绍,这里仅仅讲述不同的地方,首先打开Microsoft iSCSI Initiator,选择第二个分页标签“Discovery”,然后在“Target Portals”部分点击“Add”按钮,跳出“Add Target Portal”窗口,在此窗口中填写iSCSI Target的IP地址和端口,填写完毕,点击“Advanced”按钮,如图1所示:图1在此界面下,选中“CHAP logon information”标签,然后填写Discovery查询认证所使用的账号和密码。