RHEL 5已开始在内核中加入了对iSCSI的支持,使用的 iSCSIInitiator软件是Open-iSCSI Initiator,支持万兆网卡,其配置方式与RHEL 4及更早的RedHat Linux发行版中的iSCSI Initiator有很大的区别。
一、安装并配置iSCSI Initiator软件
以下以RHEL 5 x86_64版本为例介绍如何安装并配置iSCSI initiator。
1、安装iSCSI Initiator
把RHEL5 x86_64第一张安装光盘挂载到/mnt目录下,之后进入/mnt/Server目录进行安装。
[root@pe03 Server]# cd /mnt/Server/
[root@pe03 Server]# rpm -ivh iscsi-initiator-utils-6.2.0.742-0.5.el5.x86_64.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 所有刚发起的iSCSIsession默认都将使用这个文件中的参数设定。
/etc/iscsi/initiatorname.iscsi 软件iSCSI initiator的intiator名称配置文件。
在iscsi启动的时候,iscsid和iscsiadm会读取这两个配置文件。
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.max:pe03
本例中InitiatorName设置为iqn.2005-03.com.max:pe03
注意:
InitiatorName这个单词必须注意大小写,同时,必须顶格写,xxxx代表要设置的initiator名称,请遵循iqn命名规范。
iqn规范定义的InitiatorName格式为iqn.domaindate.<reverse domain name>[:identifier],例如:iqn.2006-11.com.h3c:dbserver。
iqn表示“iSCSIQualified Name”,简称iqn。
domaindate表示“年份-月份”。这里是2005-03。
reverse domain name表示倒过来的域名,这里是com.max。
identifier表示识别码,这里是pe03。
4、配置iscsi参数
编辑/etc/iscsi/iscsi.conf文件,确认node.startup的值为automatic,如果iSCSI存储服务器的target上启用了CHAP认证,则还需要配置CAHP认证:
#在开机后是否自动登录Target
node.startup = automatic #表示自动登录(默认是automatic),
node.startup = manual #表示需手动登录。
#默认的CHAP认证用户名和密码
node.session.auth.authmethod = CHAP
node.session.auth.username = xxxxxx #CHAP认证用户名
node.session.auth.password = xxxxxx #CHAP认证密码(至少12个字符)
#iSCSI发生错误以后,返回应用程序的超时时间
node.session.timeo.replacement_timeout =120 #表示120秒