http://kbase.redhat.com/faq/docs/DOC-12024
http://storage.it168.com/g/2007-08-29/200708291048097.shtml
安裝準備
首先我們針對企業版Linux (ES或AS) 3 Update 6版本。基本上這個版本的Linux安裝盤片一共4片,我們看到其中第二片上應該會有如下的說明字樣:
iscsi-initiator-utils-3.6.3-3.i386.rpm
linux-iscsi 3.4.x: 版本: 2.4.21
linux-iscsi 3.6.x: 版本: 2.4.21
這裡一定要注意:linux-iscsi Initiator版本高于3.x的不能相容2.4.x及更早的版本。
企業版Linux (ES或AS) 4 Update 2版本的安裝盤也是4片,其中iSCSI Initiator在第四張盤片上。
iscsi-initiator-utils-4.0.3.0-2.i386.rpm
linux-iscsi:
4.0.2 – 版本: 2.6.10
4.0.1 – 版本: 2.6.0
注意:linux-iscsi Initiator版本低于4.x不能相容2.6.x及更高的版本,且linux-iscsi 5.x以及更高版本已經成功通過UIT測試。
安裝Redhat iSCSI發起方
首先我們來安裝iSCSI Initiator,不管你的環境中運作的是企業版Linux 3還是4,你隻要在Red Hat Media中找到RPM,然後用下面的rpm – ivh指令安裝就可以。
# rpm –ivh iscsi-initiator-utils-4.0.3.0-2.i386.rpm
但是需要注意的事,這個指令是針對企業版Linux ES 4 Update 2的,你使用的版本可能有所不同。
此外,在Redhat 企業版Linux(ES或AS)4 Update 2或更高版本下,還有一個手動安裝這個包的方法,那就是使用“系統設定”菜單中的“添加/删除程式”菜單項。在“網絡伺服器”組建的清單中會列出iscsi-initiator-utils選項。這一選項在初次安裝Redhat 的時候也可以進行選擇,是以這項操作在初次安裝時也可以進行。
安裝完成後,我們檢視/etc路徑,應該會出現一個名叫iscsi.conf的檔案。如果這個檔案不存在,那就很有可能是安裝時出了問題。這個時候,我們還可以嘗試通過下面的指令生成這個檔案:
DiscoveryAddress=<IP Address>
這就需要指定到你的UIT陣列的Group IP Address
SendAsyncText=yes
Initiator能從用戶端接收到Vendor Specific的同步事件
Continuous=yes
為了能指定全部依然打開的會話
配置iscsi.conf檔案
在iscsi.conf檔案内有很多其他的參數可以設定,你可以仔細檢視iscsi.conf檔案來獲得那些變量和相關用途的資訊。這些值一旦在新建立的/etc/iscsi.conf 檔案進行了設定,就将啟動iscsi服務,當然也可以在需要的時候使用指令行的方式來設定:
# service iscsi start
為了驗證iscsi服務在啟動時将會生效,可以使用下面給出的chkconfig指令:
# chkconfig –list iscsi
iscsi 0:off 1:off 2:off 3:off 4:off 5:off 6:off
在預設狀态下,新添加的iscsi Initiator在啟動後并不能自動工作,是以需要把每一個管理級别都設定為“關閉”的狀态。要想在啟動後生效,使用下面的chkconfig指令就可以了:
# chkconfig –add iscsi
# chkconfig iscsi on
上面的兩個指令首先檢查是否有必要的腳本來啟動和停止這項服務,然後把服務指定到正确的管理級别上。
然後檢查這些更改是否生效:
# chkconfig –list iscsi
iscsi 0:off 1:off 2:on 3:on 4:on 5:on 6:off
為了證明你能看到你的iscsi裝置,你可以使用如下的指令:
# iscsi-ls
SFNet iSCSI Driver Version … 3.6.3 (27-Jun-2005 )
TARGET NAME : iqn.2001-05.com.UIT:6-8a0900-148270001-987006efd6c43836-pat-rhel3-vol2
TARGET ALIAS : pat-rhel3-vol2
HOST NO : 1
BUS NO : 0
TARGET ID : 5
TARGET ADDRESS : 172.19.50.13:3260
SESSION STATUS : ESTABLISHED AT Thu Dec 1 15:51:50 2005
NO. OF PORTALS : 1
PORTAL ADDRESS 1 : 172.19.50.10:3260,0
SESSION ID : ISID 00023d000001 TSIH 06
要想檢視更加詳細的裝置資訊,你可以在剛才的指令中加入-l參數:
# iscsi-ls –s
SFNet iSCSI Driver Version … 3.6.3 (27-Jun-2005 )
TARGET NAME : iqn.2001-05.com.UIT:6-8a0900-148270001-987006efd6c43836-pat-rhel3-vol2
TARGET ALIAS : pat-rhel3-vol2
HOST NO : 1
BUS NO : 0
TARGET ID : 5
TARGET ADDRESS : 172.19.50.13:3260
SESSION STATUS : ESTABLISHED AT Thu Dec 1 15:51:49 2005
NO. OF PORTALS : 1
PORTAL ADDRESS 1 : 172.19.50.10:3260,0
SESSION ID : ISID 00023d000001 TSIH 06
DEVICE DETAILS :
————–
LUN ID : 0
Vendor: EQLOGIC Model: 100E-00 Rev: 2.1
Type: Direct-Access ANSI SCSI revision: 05
page83 type3: 0690a018007082143638c4d6ef067098
page80: 3036393041303138303037303832313433363338433444364546303637303938
Device: /dev/sdc
************************************************************************
上面是加了-l的iscsi-ls指令輸出的資訊,這時我們可以看出有問題的就是/dev/sdc裝置
固定裝置命名
用Redhat 軟體伺服器端的裝置沒有固定的命名方式,但是有不少辦法可以在不同版本的Redhat 上實作固定命名:
Redhat 企業版Linux (ES或AS) 3可通過Devlabel指令實作固定裝置命名 (看devlabel的man幫助),下面的方法隻能在核心是2.4系列的Redhat 上工作:
用 devlabel 建立名稱的符号連結
簡單的add指令建立連結的方法如下:
# devlabel add –d <device such as /dev/sdb> -s <link to create to this device>
比如:
# devlabel add –d /dev/sdc –s /dev/iscsi/vollink
# ls –l /dev/iscsi/vollink
lrwxrwxrwx 1 root root 8 Dec 1 16:31 newvol -> /dev/sdc
對于Redhat 企業版Linux (ES或AS) 4,可通過如下方法實作固定裝置命名。但需要注意下面的方法隻能在核心是2.6系列的Redhat 上工作:
在裝置節點檔案建立之後,建立裝置到裝置檔案的連結。udev用規則檔案(看 man udev)來确定如何建立不同裝置的裝置名稱和裝置檔案名之間的連結。
這是最好的一種解決方案,沒有比這個更直接的方法了。
關于那些用iSCSI 服務端固定裝置名稱的iSCSI裝置,Redhat 可能會利用udev提供更多的相關資訊。