服务器Iscsi存储建设方案.docx
《服务器Iscsi存储建设方案.docx》由会员分享,可在线阅读,更多相关《服务器Iscsi存储建设方案.docx(12页珍藏版)》请在冰点文库上搜索。
![服务器Iscsi存储建设方案.docx](https://file1.bingdoc.com/fileroot1/2023-6/14/7f275d73-6bec-4f00-b472-b313b876ab47/7f275d73-6bec-4f00-b472-b313b876ab471.gif)
服务器Iscsi存储建设方案
服务器Iscsi存储建设方案
2015.09
简介
服务器存储,既是把服务器硬件资源,通过软件、技术为网络中其它设备提供存储服务;
考虑到客户网络环境与业务情况,本次我们为用户提供了服务器+Iscsi技术,通过IP—SAN给业务系统提供可靠、稳定、低成高,高利用率的存储解决方案;
iSCSI(internetSCSI)技术由IBM公司研究开发,是一个供硬件设备使用的、可以在IP协议的上层运行的SCSI指令集,这种指令集合可以实现在IP网络上运行SCSI协议,使其能够在诸如高速千兆以太网上进行路由选择。
iSCSI技术是一种新储存技术,该技术是将现有SCSI接口与以太网络(Ethernet)技术结合,使服务器可与使用IP网络的储存装置互相交换资料.
iSCSI是一种基于TCP/IP的协议,用来建立和管理IP存储设备、主机和客户机等之间的相互连接,并创建存储区域网络(SAN)。
SAN使得SCSI协议应用于高速数据传输网络成为可能,这种传输以数据块级别(block—level)在多个数据存储网络间进行.SCSI结构基于C/S模式,其通常应用环境是:
设备互相靠近,并且这些设备由SCSI总线连接。
iSCSI的主要功能是在TCP/IP网络上的主机系统(启动器initiator)和存储设备(目标器target)之间进行大量数据的封装和可靠传输过程.
本次系统的拓扑结构如下:
方案介绍
工作过程:
当iSCSI主机应用程序发出数据读写请求后,操作系统会生成一个相应的SCSI命令,该SCSI命令在iSCSIinitiator层被封装成ISCSI消息包并通过TCP/IP传送到设备侧,设备侧的iSCSItarget层会解开iSCSI消息包,得到SCSI命令的内容,然后传送给SCSI设备执行;设备执行SCSI命令后的响应,在经过设备侧iSCSItarget层时被封装成ISCSI响应PDU,通过TCP/IP网络传送给主机的ISCSIinitiator层,iSCSIinitiator会从ISCSI响应PDU里解析出SCSI响应并传送给操作系统,操作系统再响应给应用程序。
主要优势:
这几年来,iSCSI存储技术得到了快速发展。
iSCSI的最大好处是能提供快速的网络环境,虽然其性能和带宽跟光纤网络还有一些差距,但能节省企业约30-40%的成本。
iSCSI技术优点和成本优势的主要体现包括以下几个方面:
硬件成本低:
构建iSCSI存储网络,除了存储设备外,交换机、线缆、接口卡都是标准的以太网配件,价格相对来说比较低廉.同时,iSCSI还可以在现有的网络上直接安装,并不需要更改企业的网络体系,这样可以最大程度地节约投入.
操作简单,维护方便:
对iSCSI存储网络的管理,实际上就是对以太网设备的管理,只需花费少量的资金去培训iSCSI存储网络管理员。
当iSCSI存储网络出现故障时,问题定位及解决也会因为以太网的普及而变得容易。
扩充性强:
对于已经构建的iSCSI存储网络来说,增加iSCSI存储设备和服务器都将变得简单且无需改变网络的体系结构。
带宽和性能:
iSCSI存储网络的访问带宽依赖以太网带宽.随着千兆以太网的普及和万兆以太网的应用,iSCSI存储网络会达到甚至超过FC(FiberChannel,光纤通道)存储网络的带宽和性能。
突破距离限制:
iSCSI存储网络使用的是以太网,因而在服务器和存储设备的空间布局上的限制就会少了很多,甚至可以跨越地区和国家。
安全性:
iSCSI和FC采用不同的方法保证存储访问的安全,这可能是多协议存储架构师必须解决的最大问题。
FC利用
FC交换机实行分区,通过全局名称排列LUN编号和主机标识,而iSCSI采用上述隔离iSCSI的物理和虚拟方法,通过IP地址、主机系统和存储设备的名称、内部/外部CHAP身份验证等方式限制访问,从而保证存储安全。
建设过程
1准备工作
iSCSI可分享的设备类型有很多,包括镜像文件(*。
img)、分区(partition)、物理硬盘、raid设备、逻辑卷等,下面我们将准备其中的几种来测试,其他类型大家可以自行测试.
1。
1模拟镜像
在iSCSITarget的/srv目录下创建一个200M大小的镜像文件.
#mkdir/srv/iscsi
#ddif=/dev/zeroof=/srv/iscsi/disk1.imgbs=1Mcount=200
#ll—lh/srv/iscsi/disk1.img
1.2建立分区
创建一个500M大小的分区/dev/sdb1。
#fdisk/dev/sdb
1。
3创建逻辑卷
创建一个800M大小的LV。
#pvcreate/dev/sdc
#vgcreatevg0/dev/sdc
#lvcreate—L800M—nlv1vg0
2配置iSCSITarget
2.1安装tgt
CentOS自带了scsi-target-utils软件,我们使用该软件进行target设置.
#yum-yinstallscsi—target-utils
2。
2配置tgt
tgt的主配置文件为/etc/tgt/targets.conf,下面我们来设置改文件。
在该文件最后新增以下设置:
〈targetiqn.2014—07。
dev。
iscsi-target:
iscsidisk>
backing—store/srv/iscsi/disk1.img
backing-store/dev/sdb1
backing—store/dev/vg0/lv1
backing-store/dev/sdd
说明:
iqn=iSCSIQualifiedName
iSCSItarget的名称规则如下:
iqn.2014-07。
dev。
iscsi—target:
iscsidisk
iqn。
年份—月份。
域名反写。
设备识别
每个在同一个target上的backing—store称为逻辑单元号(LogicalUnitNumber,LUN);
2。
3启动iSCSItarget
#/etc/init.d/tgtdstart
#chkconfigtgtdon
#netstat-tulnp|greptgt
2.4查看iSCSItarget
#tgt-admin–show
LUN0是控制器,可以看到各个LUN的大小和磁盘路径。
至此,iSCSITarget设定完毕。
3、配置iSCSIInitiator
3。
1安装initiator
#yum-yinstalliscsi—initiator—utils
3.2设置开机启动
#chkconfigiscsidon
#chkconfigiscsion
3.3配置文档
initiator的配置文档位于/etc/iscsi/,该目录下有两个文件,initiatorname.iscsi和iscsid。
conf,
其中iscsid.conf是其配置文件,initiatorname.iscsi是标记了initiator的名称,它的默认名称是InitiatorName=iqn.1994—。
redhat:
b45be5af6021,我们可以根据实际情况进行更改,比较好区分,这里我们修改为InitiatorName=iqn。
2014-07。
dev。
iscsi—initiator:
initiator.
因为在target里面,我们并没有设置访问限制,所以iscsid。
conf文件并不需要修改.
3。
4侦测target
如果我们事先不知道目标主机的target名称,我们就需要进行侦测,下面来讲解。
#iscsiadm—mdiscovery—tsendtargets—p192。
168。
1.21
说明:
-mdiscovery //侦测target
-tsendtargets //通过iscsi协议
—pIP:
port //指定target的IP和port,不写port的话,默认为3260
3。
5查看nodes
iscsiadm侦测到的结果会写入/var/lib/iscsi/nodes/中,因此只需启动/etc/init.d/iscsi就能够在下次开机时,自动连接到正确的target了。
#ll—R/var/lib/iscsi/nodes/
侦测信息都写入了/var/lib/iscsi/nodes/iqn.2014-07。
dev。
iscsi—target:
iscsidisk/192。
168.1.21,3260,1/default文件中了。
3。
6连接target
查看目前系统上面所有的target
#iscsiadm—mnode
登录target
#iscsiadm—mnode-Tiqn。
2014—07。
dev。
iscsi—target:
iscsidisk–login
3。
7查看磁盘情况
#fdisk–l
可以看到,initiator上面多了四块硬盘,大小和target上的LUN一致.这时你就可以像使用本地磁盘一样使用这些iSCSI设备了,下面我们来测试。
3.8将/dev/sdb和/dev/sdc创建成LV挂载使用
创建LV
#pvcreate/dev/sdb/dev/sdc
#vgcreateiscsi/dev/sdb/dev/sdc
#lvcreate—L1G-niscsilviscsi
格式化并挂载
#mkfs。
ext4/dev/iscsi/iscsilv
#mkdir/mnt/iscsi
#vi/etc/fstab
创建测试文件
挂载成功,创建测试文件成功.
3.9重启测试
测试成功。
3。
10查看target信息
#tgt—admin–show
可以看到,此时使用该target的initiator为iqn.2014—07。
dev.iscsi—initiator:
initiator,也就是我们上面更改的initiatorname,IP地址为192。
168.1。
22。
至此,iSCSI置完毕