一、简介
ISCSI主要是通过TCP/IP的技术,将存储设备端通过ISCSI target的功能,做成可以提供磁盘的服务器端,再通过ISCSI initiator功能,做成能够挂载使用ISCSI target的客户端,如此便能通过ISCSI协议来进行磁盘的应用了。
简而言之,就是将target(服务器)端的磁盘提供给initiator(客户端)使用。
二、组成
ISCSI主要由两部分组成
1、ISCSI target:就是存储设备端,提供磁盘或RAID,即服务端;
2、ISCSI initiator:就是能够发现target的客户端;
注释:本文使用linux操作系统(kylin3.2.5)作为服务端。
三、ISCSI target
1、磁盘准备
ISCSI服务器可以使用真实机操作,也能使用虚拟机搭建,这里用虚拟机搭建示范。
服务器端需要提供单独的磁盘来提供给其他主机使用,本文使用“/dev/sdb”盘。如下图所示“硬盘2”
2、安装target包
target需要如下两个rpm包,大家可以去网上下载或者从linux系统文件中安装yum源
perl-Config-General-2.40-1.noarch.rpm(可能已经安装)
scsi-target-utils-0.0-5.20080917snap.ky3.x86_64.rpm
我使用的是直接从系统文件中安装yum源,步骤如下:
3、挂载镜像文件
如上图所示,虚拟机设置,点击【浏览】,找到kylin操作系统文件,设备状态点击“已连接”,虚拟机挂载光盘成功,df查看:
4、安装yum源
进入挂载目录
[root@localhost tgt]# cd /media/NeoKylin-3.2/KYLIN
安装iscsi target 包
[root@localhost KYLIN]# yum install iscsi-initiator-utils-6.2.0.873-10.ky3.x86_64.rpm
遇到提示,输入“y”即可;
5、修改配置文件
在target.conf文件中添加如下字段。
[root@localhost KYLIN]# vi /etc/tgt/targets.conf
<target iqn.iscsi:server.target1>
backing-store /dev/sdb
initiator-address 10.60.1.181
initiator-address 10.60.1.180
incominguser iscsi qwer1234qwer1234
wirte-cache off
</target>
解释:
iqn.iscsi:启动器名称
backing-store:虚拟机设备,即提供的磁盘。也可以使用硬盘的某个分区,如:sdb1;
direct-store:实际设备(虚拟机中不要使用);
initiator-adress:用户地址。后面加入地址后,代表仅有该地址的主机才能连接该磁盘;(可不写)
incominguser:用户账号和密码设置。iscsi为账号,qwer1234qwer1234为密码。客户端检测、连接时使用的账号密码;(可不写)
write-cach2 [off|on]:是否使用缓存。默认情况下,tgtd会使用缓存来提高速度,不过,这样可能会有遗失数据的风险;
6、启动tgtd
service tgtd start
7、查看target信息
[root@localhost KYLIN]# tgt-admin --show
Target 1: iqn.iscsi:server.target1
System information:
Driver: iscsi
State: ready
I_T nexus information:
I_T nexus: 1
Initiator: iqn.iscsi
Connection: 1
IP Address: 10.60.1.180
LUN information:
LUN: 0
Type: controller
SCSI ID: IET 00010000
SCSI SN: beaf10
Size: 0 MB, Block size: 1
Online: Yes
Removable media: No
Prevent removal: No
Readonly: No
Backing store type: null
Backing store path: None
Backing store flags:
LUN: 1
Type: disk
SCSI ID: IET 00010001
SCSI SN: beaf11
Size: 21475 MB, Block size: 512 ------磁盘容量大小
Online: Yes
Removable media: No
Prevent removal: No
Readonly: No
Backing store type: rdwr
Backing store path: /dev/sdb -------------磁盘所在的实际文件名
Backing store flags:
Account information:
iscsi --------账号
ACL information:
10.60.1.181 --------受限IP
10.60.1.180 ---------受限IP
8、关闭防火墙
service iptables stop
9、设置开机自启
chkconfig tgtd on
四、ISCSI initiator(linux客户端)
1、安装initiator
安装步骤参考“安装target”。
iscsi-initiator-utils-6.2.0.868-0.18.ky3.x86_64.rpm
2、修改iscsi.conf文件
增加下面几行设置:
node.session.auth.username = iscsi -------连接时使用的账号
node.session.auth.password = qwer1234qwer1234 -------连接时使用的密码
discovery.sendtargets.auth.username = iscsi -------检测时使用的账号
discovery.sendtargets.auth.password = qwer1234qwer1234---监测时使用的密码
3、启动iscsid
service iscsid start
4、 连接/查看/注销
-
- 连接所有检测到的targets
service iscsi start
-
- 连接指定节点:
iscsiadm –m node –T iscsi –P 10.60.1.182 –l
-
- 注销某个target
iscsiadm –m node –p 10.60.1.182 –u
-
- 查看挂载的硬盘
iscsiadm –m session –P 3
五、ISCSI initiator(windows客户端)
1、打开ISCSI程序
点击【开始】菜单按钮,输入“iscsi”启动ISCSI程序。
2、修改启动器
点击【配置】—【更改】
根据实际情况修改启动器名称
3、连接目标
点击【目标】输入目标地址,点击【快速连接】
点击【连接】—【高级设置】—【启动CHAP登录】,输入CHAP认证账户/密码。点击完成
连接成功