Ubuntu 中 iSCSI Target 和 Initiator 的使用

[size=small] 如何在 Ubuntu 中使用 ISCSI ?且听我详细道来。

[list]
[*][b]配置 Ubuntu 作为 ISCSI Target[/b]
[/list] 在开始前,还是先更新一下系统吧:
[b][color=green]# apt-get update[/color][/b]
[b][color=green]# apt-get upgrade[/color][/b]

(1) 安装 target

[b][color=green]# apt-get install iscsitarget iscsitarget-source iscsitarget-dkms[/color][/b]
[url=http://linhost.info/2012/05/configure-ubuntu-to-serve-as-an-iscsi-target/]资料[/url]上说,如果不安装后两个软件,在重启target的时候会报错。为了减少麻烦,还是老老实实都装上吧。

(2) 修改 ISCSI Target 服务配置文件

[b][color=green]# vi /etc/default/iscsitarget[/color][/b]
[b][color=violet]ISCSITARGET_ENABLE[/color][/b]=[b][color=violet]true[/color][/b]

(3) 为 Target 准备存储

如果想用分区或者磁盘作为 Target,可以略过这一步;如果想用文件作为 Target,则可按照下面的示例来进行:
[b][color=green]# dd if=/dev/zero of=/var/lun1.bin count=0 obs=1 seek=50G[/color][/b]
上述命令在 /var 目录下创建了一个名为 lun1.bin,大小为 50G 的文件。

(4) 修改 ISCSI Target 设备配置文件

[b][color=green]# vi /etc/iet/ietd.conf[/color][/b]
在文件的末尾添加如下信息:
[b][color=violet]Target iqn.2012-12.local.mynet:storage.lun1
Lun 1 Path=/var/lun1.bin,Type=fileio,ScsiId=lun1,ScsiSN=lun1[/color][/b]
第一行 Target 之后的内容可以任意修改,不过最好保持例子中的格式;第二行在该 Target 上创建了一个 LUN,序号为 1。
当然,如果不想使用文件,也可以使用磁盘分区,只需修改 Path 属性即可:[b][color=red]Path=/dev/sdd1[/color][/b]

(5) 重启 ISCSI Target

[b][color=green]# service iscsitarget restart[/color][/b]

如何使用 ISCSI Target 呢?这正是下一节要说的。

[list]
[*][b]配置 Ubuntu 作为 ISCSI Initiator[/b]
[/list] 当然,首先也要更新系统,和前面的步骤一样,这里就不啰嗦了。

(1) 安装 open-iscsi

[b][color=green]# apt-get install open-iscsi open-iscsi-utils[/color][/b]

(2) 配置 open-iscsi

本文示例的 ISCSI Target 配置信息如下:
[table]
|ISCSI Server IP |192.168.1.100
|ISCSI username |[b][color=red]vivek[/color][/b]
|ISCSI password |[b][color=red]yHni3Oq9wYzamS[/color][/b]
[/table]

如果 ISCSI Target Server 需要用户名密码,则需要在 [color=red]/etc/iscsi/iscsid.conf[/color] 中进行配置,配置选项如下:
[b][color=green]node.session.auth.username[/color][/b] = [b][color=red]vivek[/color][/b]
[b][color=green]node.session.auth.password[/color][/b] = [b][color=red]yHni3Oq9wYzamS[/color][/b]
[b][color=green]discovery.sendtargets.auth.username[/color][/b] = [b][color=red]vivek[/color][/b]
[b][color=green]discovery.sendtargets.auth.password[/color][/b] = [b][color=red]yHni3Oq9wYzamS[/color][/b]
其中,两组用户名和密码均为 Target Server 设定的用户名和密码。

修改完成后,需要重启 open-iscsi 服务:
[b][color=green]# service open-iscsi restart[/color][/b]

(3) 发现 Target

[b][color=green]# iscsiadm -m discovery -t sendtargets -p 192.168.1.100[/color][/b]
示例输出如下:
[color=darkblue]192.168.1.100:3260,1 iqn.2012-12.com.example:iscsi.vm0.c43030[/color]
这里,3260 是 Target Server 的默认端口,所以在上面的命令中没有指定。如果使用其他端口,则需要用 [b][color=green]# -p ip:port[/color][/b] 的形式显示指定。

(3) 使用 Target

[b][color=green]# iscsiadm -m node --targetname iqn.2012-12.com.example:iscsi.vm0.c43030 -p 192.168.1.100 --login[/color][/b]
示例输出如下:
[color=darkblue]Logging in to [iface: default, target: iqn.2012-12.com.example:iscsi.vm0.c43030, portal: 192.168.1.1,3260]
Login to [iface: default, target: iqn.2012-12.com.example:iscsi.vm0.c43030, portal: 192.168.1.1,3260]: successful
[/color]

登陆成功后,可以在 [color=red]/var/log/messages[/color] 中看到如下消息:
[b][color=green]# tail -f /var/log/messages[/color][/b]
示例输出如下:
[color=darkblue]Jul 2 12:54:04 vivek-laptop kernel: [ 4418.610787] scsi6 : iSCSI Initiator over TCP/IP
Jul 2 12:54:05 vivek-laptop kernel: [ 4419.649208] scsi 6:0:0:0: Direct-Access QNAP iSCSI Storage 3.1 PQ: 0 ANSI: 5
Jul 2 12:54:05 vivek-laptop kernel: [ 4419.649670] sd 6:0:0:0: Attached scsi generic sg3 type 0
Jul 2 12:54:05 vivek-laptop kernel: [ 4419.650531] sd 6:0:0:0: [sdc] 41943040 512-byte logical blocks: (21.4 GB/20.0 GiB)
Jul 2 12:54:05 vivek-laptop kernel: [ 4419.651889] sd 6:0:0:0: [sdc] Write Protect is off
Jul 2 12:54:05 vivek-laptop kernel: [ 4419.652643] sd 6:0:0:0: [sdc] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
Jul 2 12:54:05 vivek-laptop kernel: [ 4419.654620] sdc: unknown partition table
Jul 2 12:54:05 vivek-laptop kernel: [ 4419.692364] sd 6:0:0:0: [sdc] Attached SCSI disk /dev/sdc is new block level device.
[/color]
说明 [color=red]/dev/sdc[/color] 已经作为一个新的块设备被添加到系统中了,该设备使用的就是服务器上的 ISCSI Target。
[/size]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值