linux iscsi initiator 安装配置

实现环境:vmware workstation,netapp simulator,windows 2003,redhat linux enterprise;

一、安装并配置iSCSI Initiator软件

1.从光盘安装iscsi initiator

[root@pe03 Server]# cd /mnt/Server/

[root@pe03 Server]# rpm -ivh iscsi-initiator-utils-6.2.0.742-0.5.el5.i386.rpm

warning: iscsi-initiator-utils-6.2.0.742-0.5.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186

Preparing... ########################################### [100%]

1:iscsi-initiator-utils ########################################### [100%]

这个安装将iscsid、iscsiadm安装到/sbin目录下,它还将把默认的配置文件安装到/etc/iscsi目录下:

/etc/iscsi/iscsid.conf 所有刚发起的iSCSI session默认都将使用这个文件中的参数设定。

/etc/iscsi/initiatorname.iscsi 软件iSCSI initiator的intiator名称配置文件。

在iscsi启动的时候,iscsid和iscsiadm会读取这两个配置文件。

查询软件包安装情况(安装了哪些文件及其位置;)

[root@rhe5 Server]# rpm –q --list iscsi-initiator-utils-6.2.0.742-0.5.el5 
/etc/iscsi/iscsid.conf 
/etc/rc.d/init.d/iscsi 
/etc/rc.d/init.d/iscsid 
/sbin/iscsi-iname 
/sbin/iscsiadm 
/sbin/iscsid 
/sbin/iscsistart

Technorati 标签:  iscsi initiator


/usr/share/doc/iscsi-initiator-utils-6.2.0.742 
/usr/share/doc/iscsi-initiator-utils-6.2.0.742/README 
/usr/share/man/man8/iscsiadm.8.gz 
/usr/share/man/man8/iscsid.8.gz 
/var/lib/iscsi/nodes 
/var/lib/iscsi/send_targets 
/var/lock/iscsi 
[root@rhe5 Server]# rpm -q --scripts iscsi-initiator-utils-6.2.0.742-0.5.el5 
postinstall scriptlet (using /bin/sh): 
if [ ! -f /etc/iscsi/initiatorname.iscsi ]; then 
        echo "InitiatorName=`/sbin/iscsi-iname`" > /etc/iscsi/initiatorname.iscsi 
fi 
/sbin/chkconfig --add iscsid 
/sbin/chkconfig --add iscsi 
preuninstall scriptlet (using /bin/sh): 
if [ "$1" = "0" ]; then 
    /sbin/chkconfig --del iscsi 
    /sbin/chkconfig --del iscsid 
fi 
[root@rhe5 Server]# iscsi-iname 
iqn.2005-03.com.redhat:01.4e85bacb9b8

2、确认iscsi服务随系统启动而启动

用chkconfig检查iscsi和iscsid服务在运行级别3和5中随系统的启动而自动启动

[root@pe03 Server]# chkconfig --list |grep iscsi

iscsi 0:off 1:off 2:off 3:on 4:on 5:on 6:off

iscsid 0:off 1:off 2:off 3:on 4:on 5:on 6:off

如果iscsid和iscsi没有随系统的启动而启动,则用chkconfig设置这两个服务在系统运行级别为3和5时随系统启动而启动

[root@pe03 Server]# chkconfig iscsi --level 35 on

[root@pe03 Server]# chkconfig iscsid --level 35 on

( 3、设置InitiatorName)

用vi编辑/etc/iscsi/initiatorname.iscsi文件,文件内容如下

InitiatorName=iqn.2005-03.com.redhat:01.e7839d513f

注意:

l InitiatorName这个单词必须注意大小写,同时,必须顶格写,xxxx代表要设 置的initiator名称,请遵循iqn命名规范。

l iqn规范定义的InitiatorName格式为iqn.domaindate. reverse.domain.name:optional name,例如:iqn.2006-11.com.h3c:dbserver。

4、启动iscsi服务

用service iscsi start启动iSCSI服务。

root@pe03 Server]# service iscsi start

Turning off network shutdown. Starting iSCSI daemon: [ OK ]

[ OK ]

Setting up iSCSI targets: [ OK ]

用service iscsi status及service iscsid status查看iscsi相关服务的运行状态

[root@pe03 Server]# service iscsi status

iscsid (pid 3697 3696) is running...

[root@pe03 Server]# service iscsid status

iscsid (pid 3697 3696) is running...

Open-iSCSI是通过以下iSCSI数据库文件来实现永久配置的:

Discovery (/var/lib/iscsi/send_targets):在/var/lib/iscsi/send_targets目录下包含iSCSI portals的配置信息,每个portal对应一个文件,文件名为“iSCSI portal IP,端口号”(例如“200.200.10.200,3260”)。

Node (/var/lib/iscsi/nodes):在/var/lib/iscsi/nodes目录下,生成一个或多个以iSCSI存储服务器上的Target名命名的文件夹,在该文件夹下有一个文件名为“iSCSI portal IP,端口号” (例如“200.200.10.200,3260”)的配置参数文件,该文件中是initiator登录target时要使用的参数,这些参数的设置是从/etc/iscsi/iscsi.conf中的参数设置继承而来的,可以通过iscsiadm对某一个参数文件进行更改(需要先注销到target的登录)。

iscsiadm是用来管理(更新、删除、插入、查询)iSCSI配置数据库文件的命令行工具,用户能够用它对iSCSI nodes、sessions、connections和discovery records进行一系列的操作。

5、分配存储资源,在Linux上执行target的发现

RHEL 5上当前的iSCSI Initiator版本只支持sendtargets 的发现方式,不支持SLP和iSNS

使用下面的命令执行target的发现:

[root@rhel5 Server]# iscsiadm -m discovery -t sendtargets -p 192.168.1.20:3260

???    iscsiadm: can not connect to iSCSI daemon! 
         iscsiadm: exiting due to configuration error!

重启linux,再执行上命令后结果:(netapp模拟器两个网口,全部自动发现,如何去掉一个?)

192.168.1.21:3260,1001 iqn.1992-08.com.netapp:sn.99900641 
192.168.1.20:3260,1000 iqn.1992-08.com.netapp:sn.99900641

netapp模拟器终端上信息:

Sat Jan 16 15:50:54 GMT [iscsi.notice:notice]: ISCSI: New session from initiator iqn.2005-03.com.redhat:01.74394c92c697 at IP addr 192.168.1.60

[root@rhe5 iscsi]# fdisk –l  (如何配置去掉一个???)

Disk /dev/sda: 23.6 GB, 23622320128 bytes 
255 heads, 63 sectors/track, 2871 cylinders 
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System 
/dev/sda1   *           1           6       48163+  83  Linux 
/dev/sda2               7         515     4088542+  83  Linux 
/dev/sda3             516        2741    17880345   83  Linux 
/dev/sda4            2742        2871     1044225    5  Extended 
/dev/sda5            2742        2871     1044193+  82  Linux swap / Solaris

Disk /dev/sdb: 36 MB, 36700160 bytes 
2 heads, 35 sectors/track, 1024 cylinders 
Units = cylinders of 70 * 512 = 35840 bytes

   Device Boot      Start         End      Blocks   Id  System 
/dev/sdb1               1        1024       35822+  83  Linux

Disk /dev/sdc: 36 MB, 36700160 bytes 
2 heads, 35 sectors/track, 1024 cylinders 
Units = cylinders of 70 * 512 = 35840 bytes

   Device Boot      Start         End      Blocks   Id  System 
/dev/sdc1               1        1024       35822+  83  Linux

7、登录target

[root@pe03 Server]# iscsiadm -m node -T iqn.2007-04.acme.com:h3c:200realm.rhel5 -p 200.200.10.200:3260 -l

这里-T后面跟target名称,最后的-l(英文字母中小写的L),是login的意思。

可以使用iscsiadm -m node --loginall=all

      一次登录所有的targets。

[root@pe03 Server]# iscsiadm -m node --loginall=all

8、查看iSCSI session信息

用iscsiadm -m session –i查看iSCSI session和设备信息

[root@rhe5 ~]# iscsiadm -m session -i 
iscsiadm version 2.0-742 
************************************ 
Session (sid 0) using module tcp: 
************************************ 
TargetName: iqn.1992-08.com.netapp:sn.99900641 
Portal Group Tag: 1000 
Network Portal: 192.168.1.20:3260 
iSCSI Connection State: LOGGED IN 
Internal iscsid Session State: NO CHANGE

************************ 
Negotiated iSCSI params: 
************************ 
HeaderDigest: None 
DataDigest: None 
MaxRecvDataSegmentLength: 65536 
MaxXmitDataSegmentLength: 65536 
FirstBurstLength: 65536 
MaxBurstLength: 65536 
ImmediateData: Yes 
InitialR2T: No 
MaxOutstandingR2T: 1

************************ 
Attached SCSI devices: 
************************ 
Host Number: 1  State: running

scsi1 Channel 00 Id 0 Lun: 2 
Attached scsi disk sdb          State: running

二、对新发现的磁盘进行分区并创建文件系统

fdisk –l;fdisk /dev/sdb;mkfs –t ext3 /dev/sdb1

1、先用fdisk –l查看新的磁盘名称,这里我们发现了一个100GB的磁盘,设备名为/dev/sdb

[root@pe03 Server]# fdisk -l

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

Disk /dev/sdb: 107.3 GB, 107373133824 bytes

255 heads, 63 sectors/track, 13054 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

Disk /dev/sdb doesn't contain a valid partition table

2、用tune2fs修改文件系统的属性,去掉自动检查的属性:

[root@pe03 Server]# tune2fs -c -1 -i 0 /dev/sdb1

tune2fs 1.39 (29-May-2006)

Setting maximal mount count to -1

Setting interval between checks to 0 seconds

Linux上的ext3文件系统有一个特性,对某个分区mount、umount很多次后或者隔一个固定的时间后,系统会对该分区进行检测,这就会导致硬盘反映速度很慢,影响业务,本操作的目的就是去掉文件系统自动检查的属性。

三、设定文件系统的自动挂载

本例中我们将要把/dev/sdb1挂载到/data目录下

1、手动创建一个目录/data

[root@pe03 Server]# mkdir /data

2、用tune2fs查看文件系统的UUID:

[root@pe03 Server]# tune2fs -l /dev/sdb1

tune2fs 1.39 (29-May-2006)

Filesystem volume name: <none>

Last mounted on: <not available>

Filesystem UUID: 3f0a00b7-4939-4ad2-a592-0821bb79f7c6

Filesystem magic number: 0xEF53

Filesystem revision #: 1 (dynamic)

Filesystem features: has_journal resize_inode dir_index filetype sparse_super large_file

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

3、用vi编辑/etc/fstab文件,设置自动挂载:

在/etc/fstab文件中增加下面蓝色的一行文字:

/dev/VolGroup00/LogVol00 / ext3 defaults 1 1

LABEL=/boot /boot ext3 defaults 1 2

devpts /dev/pts devpts gid=5,mode=620 0 0

tmpfs /dev/shm tmpfs defaults 0 0

proc /proc proc defaults 0 0

sysfs /sys sysfs defaults 0 0

/dev/VolGroup00/LogVol01 swap swap defaults 0 0

UUID=3f0a00b7-4939-4ad2-a592-0821bb79f7c6 /data ext3 _netdev 0 0

注意:

l 挂载选项使用的是“_netdev”

l UUID要顶格写。

l Linux系统重启后,磁盘设备的名称可能会发生变化,从而引起文件系统不能挂载上来或者不能正确挂载,使用UUID的方式进行挂载可以解决这个问题,

、用mount –a挂载文件系统

[root@pe03 Server]# mount –a

4、用df查看文件系统已经挂载成功

[root@pe03 /]# df -Th

Filesystem Type Size Used Avail Use% Mounted on

/dev/mapper/VolGroup00-LogVol00

ext3 65G 2.4G 59G 4% /

/dev/sda1 ext3 99M 12M 82M 13% /boot

tmpfs tmpfs 471M 0 471M 0% /dev/shm

/dev/sdb1 ext3 99G 188M 94G 1% /data

5、条件允许的话,重启一下操作系统,使用df命令确认系统重启后文件系统能够自动挂载上来。

删除:linux iscsi

Open-iSCSI是通过以下iSCSI数据库文件来实现永久配置的:

Discovery (/var/lib/iscsi/send_targets):在/var/lib/iscsi/send_targets目录下包含iSCSI portals的配置信息,每个portal对应一个文件,文件名为“iSCSI portal IP,端口号”(例如“200.200.10.200,3260”)。

Node (/var/lib/iscsi/nodes):在/var/lib/iscsi/nodes目录下,生成一个或多个以iSCSI存储服务器上的Target名命名的文件夹,在该文件夹下有一个文件名为“iSCSI portal IP,端口号” (例如“200.200.10.200,3260”)的配置参数文件,该文件中是initiator登录target时要使用的参数,这些参数的设置是从/etc/iscsi/iscsi.conf中的参数设置继承而来的,可以通过iscsiadm对某一个参数文件进行更改(需要先注销到target的登录)。

iscsiadm是用来管理(更新、删除、插入、查询)iSCSI配置数据库文件的命令行工具,用户能够用它对iSCSI nodes、sessions、connections和discovery records进行一系列的操作。

/var/lib/iscsi/send_targets目录下  和  /var/lib/iscsi/nodes目录下  对应内容删除即可。

有关iscsiadm的指令:

寻找主机上的targetiscsiadm -m discovery --type sendtargets --portal HOST_IP
登入targetiscsiadm –m node --targetname THE_TARGET_IQN --login
注销targetiscsiadm –m node --targetname THE_TARGET_IQN --logout
删除target

iscsiadm –m node -o delete --targetnameTHE_TARGET_IQN

 

How to Configure ISCSI Client on RHEL5 / EL5

Submitted by Maclean on Mon, 10/25/2010 - 06:09

Applies to:

Linux Kernel - Version: 5.0 to 5.1

Linux x86-64

hecked for relevance on 09-Jul-2009

Goal

How to configure iSCSI Client on Red Hat / Enterprise Linux 5.x

Solution

Installation

The iscsi-initiator rpm package is shipped with the standard RHEL5 / EL5 distribution. 

If not installed when the Linux install was done, it can be installed from the distribution using "rpm" or up2date utilities, e.g.

up2date -i iscsi-initiator-utils

Configuration



On RHEL5 / EL5, the tool "iscsiadm" is provided to configure the iscsi initiator.

The iscsiadm initiator tool runs in one of three modes:

- discovery 

- node 

- session

The iscsi initiator has it's own database to save the target/node informaiton and configration. This is located in "/var/lib/iscsi". 



After installing the iscsi initiator, the configuration consists of four simple steps:

1. Setup authentication:

Edit /etc/iscsi/iscsid.conf and set the userid/passwords appropriate to the iscsi server

node.session.auth.username,

node.session.auth.password

 and

discovery.sendtargets.auth.username 

discovery.sendtargets.auth.password

2. Start the iscsi demaon:



#service iscsi start 



Subsequently, the command 'ps aux | grep iscsid' will show two iscsid processes: one for communication, the other acting as a master.

Check dmesg and /var/log/messages for eventual errors
3. Put the target_ip_address to local database 



#iscsiadm -m discovery -t st -p <target_ip_address> 

4. login to target and attach all exported luns:

#iscsiadm -m node --loginall all 





After the steps above, the command 'fdisk -l' can be used to check the attached scsi disks. 


Trouble Shooting

 

To get target list, run:

#iscsiadm -m discovery

To get the node list, run:

#iscsiadm -m node


The iscsid daemon opens a TCP session with the target . To check the open session, run:

#iscsiadm -m session 

or 

#netstat -tpan | grep iscsid 



or check /sys/class/iscsi_session 


 

Find which session a disk belongs to:

#iscsiadm -m session -i 



The output will include active sessions and attached scsi disks.

Remove Target

To logut from a target:

iscsiadm -m node -u <ip address>


To delete a target::

iscsiadm -m node -o delete <ip address>
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值