分类: 服务器与存储
2008-12-28 09:36:17
环境:
1、OS: RedHat AS4 (内核版本:2.6.9-22.ELsmp)
2、Initiator软件:linux-iscsi-4:0.1.11
1.
在客户端安装RedHat AS4.2 (内核版本:2.6.9-22.ELsmp)光盘。安装时选择启动激活网卡的端口,并且安装模式选择“个人定制安装”,选择软件包时,在网络配置选项中选中iscsi选项。
2.
安装完毕后,通过ifconfig命令,确保Linux系统的IP与IX1000业务口IP在同一网段。
3. 设置iscsi服务。
4. 使用 /etc/init.d/iscsi start命令先启动iscsi服务。
5.
在 /etc/iscsi.conf这个配置文件下,有3项内容需要配置:DiscoveryAddress ,OutgoingUsername,
OutgoingPassword 。
其中“DiscoveryAddress”是业务口IP地址,这个地址是在NeoStor上为Target所分配的IP地址。
& 注意:
如果在NeoStor上没有设置CHAP认证,只需要设置DiscoveryAddress一项内容。
“OutgoingUsername”和“OutgoingPassword”,指的是在NeoStor上创建iSCSI协议下的Client的过程中,或者是Client的iSCSI协议的属性里,已设置CHAP认证的用户名和密码。这是针对在NeoStor上设置CHAP认证的情况进行的设置。
DiscoveryAddress=10.1.5.2:3260
相关的CHAP认证的设置,如:
OutgoingUsername=huawei-3com
OutgoingPassword=123456789123
&
注意:
输入用户名和密码时注意区分大小写!
6. 在/etc/initiatorname.iscsi文件下设置Initiator的名字,格式如下:
Initiatorname=iqn.xxx.xxx:xxx
此Initiator是创建时为Client分配的Initiator。
&
注意:
实际上由用户创建的任意合法(不能以test命名开头)的initiator都可以进行连接,即使不符合iqn.xxx.xxx.xxx规范,但是最终希望用户还是采用规范的命名!
7. 如果在同一个Target下如果挂载了多个资源,则要修改Target属性中lun的编号,使得编号从1开始;否则只能看到Lun编号为0的资源。
& 注意:
这由于操作系统RedHat AS4本身的原因,如果不修改LUN的编号,只能看到Lun编号为0的资源!
8. 设置完成后,重新启动iscsi driver的命令:
/etc/init.d/iscsi restart
该操作可以加载iSCSI driver,并且可以使用iscsi-ls -l命令来查看连接上的target的详细信息:
[root@localhost
~]# iscsi-ls -l
************************************************************************
SFNet iSCSI
Driver Version ...4:0.1.11(
************************************************************************
TARGET NAME :
iqn.2000-03.com.huawei-3com:.h3c-2.IX1000-1-26
TARGET ALIAS :
HOST ID : 2
BUS ID : 0
TARGET ID : 0
TARGET
ADDRESS : 10.1.5.2:3260,0
SESSION
STATUS : ESTABLISHED AT 三 2月 8 14:27:51 CST 2006
SESSION ID : ISID 00023d000001 TSIH 44a0
DEVICE DETAILS:
---------------
LUN ID : 0
Vendor: H3C Model: H3C Model: DISK Rev: v1.0
Type: ANSI SCSI revision:
03
LUN ID : 1
Vendor: H3C Model: H3C Model: ISCSI Model: DISK Rev: v1.0
Type:
Direct-Access
ANSI SCSI revision: 02
page83 type3:
6000d7704d4536533947544632395438
page80: 49534353490a
Device: /dev/sdb
LUN ID : 2
Vendor: H3C Model: H3C Model: ISCSI Model: DISK Rev: v1.0
Type:
Direct-Access
ANSI SCSI revision: 02
page83 type3:
6000d77038584e4353343258514c464c
page80: 49534353490a
Device: /dev/sdc
LUN ID : 3
Vendor: H3C Model: H3C Model: ISCSI Model: DISK Rev: v1.0
Type:
Direct-Access
ANSI SCSI revision: 02
page83 type3: 6000d77036345a415252353537504358
page80: 49534353490a
Device: /dev/sdd
LUN ID : 4
Vendor: H3C Model: H3C Model: ISCSI Model: DISK Rev: v1.0
Type:
Direct-Access
ANSI SCSI revision: 02
page83 type3: 6000d77048415a4d3137343636554350
page80: 49534353490a
Device: /dev/sde
LUN ID : 5
Vendor: H3C Model: H3C Model: ISCSI Model: DISK Rev: v1.0
Type:
Direct-Access
ANSI SCSI revision: 02
page83 type3: 6000d7704e324741394b455054435651
page80: 49534353490a
Device: /dev/sdf
************************************************************************
[root@localhost
~]# fdisk -l
Disk /dev/sda:
400.0 GB, 400088457216 bytes
255 heads, 63
sectors/track, 48641 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 48641
390604410 8e Linux LVM
Disk /dev/sdb:
10.4 GB, 10485760000 bytes
64 heads, 32
sectors/track, 10000 cylinders
Units =
cylinders of 2048 * 512 = 1048576 bytes
Device Boot Start End Blocks
Id System
Disk /dev/sdc:
314 MB, 314572800 bytes
10 heads, 60
sectors/track, 1024 cylinders
Units =
cylinders of 600 * 512 = 307200 bytes
Device Boot Start End Blocks
Id System
Disk /dev/sdd:
419 MB, 419430400 bytes
13 heads, 62
sectors/track, 1016 cylinders
Units =
cylinders of 806 * 512 = 412672 bytes
Device Boot Start End Blocks
Id System
Disk /dev/sde:
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
Disk /dev/sdf:
629 MB, 629145600 bytes
20 heads, 60
sectors/track, 1024 cylinders
Units =
cylinders of 1200 * 512 = 614400 bytes
& 注意:
创建iSCSI Target以及为该Target绑定相应的资源都应该在NeoStor上设置完成。
10. 使用fdisk devname命令对所连接的磁盘设备进行分区。其中devname可以由fdisk –l命令得知。举例说明,输入命令 fdisk /dev/sdb,指定/dev/sdb为一个分区/dev/sdb1,在执行的过程中有如下详细的帮助。可以按照相应的提示进行操作。
[root@localhost ~]# fdisk /dev/sdb
The number of cylinders for this disk is set to 10000.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
(e.g., DOS FDISK, OS/2 FDISK)
Command (m for help): m
Command action
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition
l list known partition types
m print this menu
n add a new partition
o create a new empty DOS partition table
p print the partition table
q quit without saving changes
s create a new empty Sun disklabel
11. 在刚刚建立的分区上创建文件系统命令如下:
mkfs –t fstype
partitionname,
其中partitionname表示分区的名字,fstype表示文件系统的类型(ext2、ext3),如,mkfs –t ext2 /dev/sdb1
12. 使用mount partitionname dir命令挂载分区partitionname到特定的节点dir,如果节点是/mnt/iSCSI ,则命令如下:mount /dev/sdb1 /mnt/iSCSI
13. mount操作成功后,就可以对设备进行读写操作。
14. 使用 umount partitionname 或者umount /mnt/dir ,都可以卸载分区;停止driver的命令是/etc/init.d/iscsi stop;重新启动iSCSI driver的命令是/etc/init.d/iscsi restart ;重新连接的命令/etc/init.d/iscsi reload;查看iSCSI driver状态的命令:/etc/init.d/iscsi status .
& 注意:
如果需要连接新的iSCSI 设备,并且不断开现有的连接,可以使用重新连接的命令/etc/init.d/iscsi reload
15.
Linux下自动挂载卷:
linux系统的iSCSI运行机制中,当iSCSI服务启动以后,会自动连接所有能够连接的卷,所以其本身已经实现persistence target功能,即重启后都会自动连接上卷,并开启对话。
Linux环境下,使用硬盘有两种方式,一种方式是不格式化硬盘,直接使用裸盘;另一种方式是使用文件分区。
在第一种使用裸盘的环境下,不需要对卷进行自动挂载,但是需要提供硬盘设备的UUID,可以使用devlabel printid –d device命令在查询硬盘设备的UUID。例如:
[root@localhost root]# devlabel printid -d /dev/sda
S83.2:69716e2e323030352d31312e6833632e636f6d3a696e7472616e73613a707074742e7465737431H3CIX5000
在第二种使用文件分区的环境下,设置相对要复杂一些。iSCSI服务重启后并不会将重启之前手动挂载的卷分区自动mount上来,但是可以通过在/etc/fstab文件中按如下格式添加命令来实现自动挂载:
#device to mount mount point
FS type mount options backup frequency fsck pass
/dev/sda1 /mnt/t0 ext2 defaults 0 0
即系统启动时将设备/dev/sda1自动挂载在/mnt/t0上。
另外一种更可靠的方法是使用卷分区的UUID来挂载卷,此时/etc/fstab.iscsi文件的格式如下:
#device to mount mount point
FS type mount options backup frequency fsck pass
UUID=fb032900-9113-1213-fc09-086734fac1c1 /mnt/t0
ext2 defaults 0
0
iSCSI服务重启后,会按照分区的UUID将设备挂载到指定的节点上。