1、iSCSI(Internet Small Computer System Interface)简介
iSCSI技术由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)之间进行大量数据的封装和可靠传输过程。
2、iSCSI target安装步骤
所需的软件为:
1)首先通过rpmbuild将下载的iscsitarget-0.4.12-6.src.rpm包重建成3个rpm包
#rpmbuild --rebuild iscsitarget-0.4.12-6.src.rpm
备注:重建之后生成以下3个rpm包,32位机器在/usr/src/redhat/RPMS/i386/目录下,64位机器在/usr/src/redhat/RPMS/x86_64/目录下。64位机器的3个rpm包如下:
2)安装iscsitarget-kernel-0.4.12-6_2.6.9_34.EL.i386.rpm
#rpm -Uvh iscsitarget-kernel-0.4.12-6_2.6.9_34.EL.i386.rpm
3)安装iscsitarget-0.4.12-6.i386.rpm
#rpm -Uvh iscsitarget-0.4.12-6.i386.rpm
4)对target的配置文件/etc/ietd.conf进行修改
参数解析:
Target iqn.2001-04.vod0:storage.disk2 //名字
Lun 0 Path=/dev/sdc5,Type=fileio
//配置路径,/dev/sdc5是要挂载的PV,可以是多个,在下图所示,可以看出将一个100G的盘作为target格式化后给initiator用。
5)开启target服务
# ./etc/init.d/iscsi target configuration //有的版本需要,我没有用到这步
# ./etc/init.d/iscsi-target start //restart,stop
3、iSCSI initiator安装步骤
所需的软件为:
备注:initiator的版本与Linux内核版本有关系,内核版本是2.6.9的系统对应的iSCSI initiator的版本是iscsi-initiator-utils-4.0.3.0-7.x86_64.rpm如果版本不符合,会出现以下错误:
error: Failed dependencies:
libc.so.6(GLIBC_2.4)(64bit) is needed by iscsi-initiator-utils-6.2.0.865-0.2.fc8.x86_64
1)initiator安装
32位机器
#rpm -Uvh iscsi-initiator-utils-4.0.3.0-3.i386.rpm
64位机器
#rpm -Uvh iscsi-initiator-utils-4.0.3.0-3.x86_64.rpm
2)对initiator的配置文件/etc/iscsi.conf进行修改
参数解析:
DiscoveryAddress=192.168.0.86 #target的IP地址
3)开启initiator服务
# service iscsi restart
4)检查target是否挂载
# iscsi-ls
5)对挂载的target进行使用
备注:通过fdisk命令可以看出,initiator多了个盘/dev/sdd,并且大小就是100G,通过挂载便可以向使用本地盘一样使用了。