Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2104200
  • 博文数量: 220
  • 博客积分: 8531
  • 博客等级: 中将
  • 技术积分: 4976
  • 用 户 组: 普通用户
  • 注册时间: 2007-07-18 13:33
文章分类

全部博文(220)

文章存档

2017年(1)

2015年(1)

2014年(5)

2013年(6)

2012年(6)

2011年(30)

2010年(37)

2009年(53)

2008年(41)

2007年(40)

分类: LINUX

2009-06-26 11:39:39

    Asianux Server 3.0 上如何使用iscsi呢?
    iscsi分为target端和initiator端,target端一般是支持iscsi的磁盘阵列或者能提供iscsi服务的server;initiator就是客户端,使用iscsi的。简单的说:target是server端,initiator是client端。
    Asianux Server 3.0上默认带了initiator相关软件包,可以很好的作为一个client来使用iscsi磁盘阵列。但是考虑到没有iscsi磁盘阵列,所以只能通过软件的方式来实现target,在此使用 软件来实现,主页:
    iscsitarget目前最新版本是0.4.17,在 Asianux Server 3.0上可以顺利编译安装:

[root@ASIANUX3 ~]# tar xvfz iscsitarget-0.4.17.tar.gz
iscsitarget-0.4.17/
iscsitarget-0.4.17/etc/
iscsitarget-0.4.17/etc/initd/
iscsitarget-0.4.17/etc/initd/initd

................................

iscsitarget-0.4.17/Makefile
[root@ASIANUX3 ~]# cd iscsitarget-0.4.17
[root@ASIANUX3 iscsitarget-0.4.17]# make
Applying Patch compat-2.6.22-2.6.23.patch
patching file kernel/block-io.c
patching file kernel/config.c

.................................

make[1]: Leaving directory `/usr/src/kernels/2.6.18-8.10AX-i686'
[root@ASIANUX3 iscsitarget-0.4.17]# make install
`usr/ietd'
-> `/usr/sbin/ietd'
`usr/ietadm'
-> `/usr/sbin/ietadm'
`etc/initd/initd.redhat'
-> `/etc/init.d/iscsi-target'
`etc/ietd.conf'
-> `/etc/ietd.conf'
`etc/initiators.allow'
-> `/etc/initiators.allow'
`etc/initiators.deny'
-> `/etc/initiators.deny'
`doc/manpages/ietadm.8'
-> `/usr/share/man/man8/ietadm.8'
`doc/manpages/ietd.8'
-> `/usr/share/man/man8/ietd.8'
`doc/manpages/ietd.conf.5'
-> `/usr/share/man/man5/ietd.conf.5'
install: creating directory `/usr/share/doc/iscsitarget'

`ChangeLog' -> `/usr/share/doc/iscsitarget/ChangeLog'
`COPYING' -> `/usr/share/doc/iscsitarget/COPYING'
`README' -> `/usr/share/doc/iscsitarget/README'
`README.vmware' -> `/usr/share/doc/iscsitarget/README.vmware'
install: creating directory `/lib/modules/2.6.18-8.10AX/kernel/iscsi'
`kernel/iscsi_trgt.ko'
-> `/lib/modules/2.6.18-8.10AX/kernel/iscsi/iscsi_trgt.ko


    安装完毕之后,考虑使用什么方式当做iscsi共享磁盘?可以是真实的设备,也可以以文件的方式,在正式环境中,建议使用真实的磁盘设备或者磁盘分区,但是测试环境中,使用文件形式比较简单

[root@ASIANUX3 ~]# dd if=/dev/zero of=hd.img bs=1M count=500
500+0 records in
500+0 records out
524288000 bytes (524 MB) copied, 6.72447 seconds, 78.0 MB/s


    修改/etc/ietd.conf文件,指定刚建立的hd.igm文件当做磁盘使用,此文件中默认的例子是使用/dev/sdc当做iscsi共享磁盘,修改为/root/hd.img。

#Lun 0 Path=/dev/sdc,Type=fileio
 Lun 0 Path=/root/hd.img,Type=fileio


    在此配置文件中,默认的target名称是iqn.2001-04.com.example:storage.disk2.sys1.xyz,可以根据实际情况更改,此处采用默认也可。
    一切配置完毕,启动target服务

[root@ASIANUX3 etc]# /etc/init.d/iscsi-target start
Starting iSCSI target service:                         [确定]


    此时iscsi target服务端已经配置完毕,可以使用了



    现在配置initiator端。在DC 5.0(DC4.1上默认没有iscsi软件,需要下载软件)系统上的iscsi软件配置非常简单,只需要在/etc/iscsi.conf中添加DiscoveryAddress=172.16.85.57即可。不过在Asianux上面就麻烦了,不再是只修改配置文件了,需要使用命令方式添加target端。查看Asianux 上 iscsi-initiator 的README文件:/usr/share/doc/iscsi-initiator-utils-6.2.0.742/README
     第一步启动iscsi服务

[root@ASIANUX3 ~]# /etc/init.d/iscsi start
iscsid 已停
Turning off network shutdown. Starting iSCSI daemon:     [确定]
                                                                                  [确定]
设置 iSCSI 目标;                                                           [确定]


    第二步搜所target端

[root@ASIANUX3 ~]# iscsiadm -m discovery -t sendtargets -p 172.16.85.57
172.16.85.57:3260,1 iqn.2001-04.com.example:storage.disk2.sys1.xyz

    从提示看, 已经从172.16.85.57上发现了target,名称是iqn.2001-04.com.example:storage.disk2.sys1.xyz。
    第三步,此时已经可以重启iscsi服务即可使用iscsi了,不过我们可以使用下面命令直接链接iscsi target:

[root@ASIANUX3 ~]# iscsiadm -m node --loginall=all
Login session [172.16.85.57:3260 iqn.2001-04.com.example:storage.disk2.sys1.xyz]


    此时通过dmesg和fdisk -l就可以看到500M的新设备了

[root@ASIANUX3 ~]# dmesg
scsi8 : iSCSI Initiator over TCP/IP
  Vendor: IET Model: VIRTUAL-DISK Rev: 0
  Type: Direct-Access ANSI SCSI revision: 04
SCSI device sdc: 1024000 512-byte hdwr sectors (524 MB)
sdc: Write Protect is off
sdc: Mode Sense: 77 00 00 08
SCSI device sdc: drive cache: write through
SCSI device sdc: 1024000 512-byte hdwr sectors (524 MB)
sdc: Write Protect is off
sdc: Mode Sense: 77 00 00 08
SCSI device sdc: drive cache: write through
 sdc: sdc1
sd 8:0:0:0: Attached scsi disk sdc
sd 8:0:0:0: Attached scsi generic sg2 type 0
[root@ASIANUX3 ~]# fdisk -l

Disk /dev/sda: 10.7 GB, 10737418240 bytes
255 heads, 63 sectors/track, 1305 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot Start End Blocks Id System
/dev/sda1 * 1 13 104391 83 Linux
/dev/sda2 14 144 1052257+ 82 Linux swap / Solaris
/dev/sda3 145 1305 9325732+ 83 Linux

Disk /dev/sdc: 524 MB, 524288000 bytes
17 heads, 59 sectors/track, 1020 cylinders
Units = cylinders of 1003 * 512 = 513536 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sdc1               1        1020      511500+  83  Linux


    停止链接iscsi target

iscsiadm -m node --logoutall=all


    删除现有的target

iscsiadm -m node -o delete -T iqn.2001-04.com.example:storage.disk2.sys1.xyz -p 172.16.85.57


    更多命令查看/usr/share/doc/iscsi-initiator-utils-6.2.0.742/README
阅读(1932) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~