虛擬機器做ISCSI共享儲存

longqidong發表於2012-01-18
準備公用卷:iscsi
rpm -ivh compat-db-4.2.52-5.1.i386.rpm
rpm -ivh libXp-1.0.0-8.1.el5.i386.rpm
rpm -ivh openmotif22-2.2.3-18.i386.rpm
劃分磁碟空間12G作為共享磁碟
fdisk /dev/sda 此處省略 我的劃分出為sda5

iscsi服務檔案配置:ClusterStorage目錄
rpm -ivh perl-Config-General-2.40-1.el5.noarch.rpm
rpm -ivh scsi-target-utils-0.0-5.20080917snap.el5.x86_64.rpm
Server目錄下
rpm -ivh iscsi-initiator-utils-6.2.0.871-0.16.el5.i386.rpm

上面這幾個包在做儲存的主機上必須安裝,在客戶端只要安裝 rpm -ivh iscsi-initiator-utils-6.2.0.871-0.16.el5.i386.rpm就可以


起名為linux5-1.

節點一dragon1的共享配置
vi /etc/tgt/targets.conf
----------------------------------------
 
        backing-store /dev/sda5
       initiator-address 192.168.44.0/24   (public ip網段)
 
vi /etc/udev/scripts/iscsidev.sh
----------------------------------------
#!/bin/bash
 BUS=${1}
 HOST=${BUS%%:*}
 [ -e /sys/class/iscsi_host ] || exit 1
 file="/sys/class/iscsi_host/host${HOST}/device/session*/iscsi_session*/targetname"
 target_name=$(cat ${file})
 if [ -z "${target_name}" ] ; then
        exit 1
 fi
 echo "${target_name##*:}"
----------------------------------------

chmod +x /etc/udev/scripts/iscsidev.sh

chkconfig iscsi on
chkconfig iscsid on
chkconfig tgtd on

service iscsi start
service iscsid start
service tgtd start

tgtadm --lld iscsi --op bind --mode target --tid 1 -I ALL
iscsiadm -m discovery -t sendtargets -p 192.168.44.138 (提供儲存的伺服器ip)
service iscsi start
fdisk –l
看見最低下有sdb標籤

vi /etc/rc.local
tgtadm --lld iscsi --op bind --mode target --tid 1 -I ALL
service iscsi start

fdisk /dev/sdb, e, 1 
fdisk /dev/sdb, L
sdb5 1G ;sdb6 1G ;sdb7 6G ;sdb8 6G


三:節點二的配置
啟動linux5-1:立即修改,主機名 hostname dragon2 ,vim /etc/sysconfig/network,vim .bash_prfile oracle_sid=racdb2並按linux5的hosts檔案配置,設定IP。
service iscsi start
iscsiadm -m discovery -t sendtargets -p 192.168.44.138 -l
service iscsi start
start_udev;  ll /dev/raw;因該跟44.138dragon1效果一樣



注意:
如果要在儲存伺服器上即本實驗的iscsi-storage 上,如果有外部節點連線著此儲存,要想停止tgtd(service tgtd stop)服務, 有如下提示:
Stopping SCSI target daemon: Stopping target framework daemon
Some initiators are still connected - could not stop tgtd

表示無法停止,而採取殺掉tgtd的pid的方法來停止時,在此用service tgtd start來啟動tgtd服務的時候,提示已經確定起來了。
但是事實上沒有起來,實際上tgtd並沒有啟動成功,用ps檢視是檢視不到tgtd服務程式的,要想解決此問題,是因為有個/var/lock/subsys/tgtd檔案存在,只需刪除掉即可。



來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/22418990/viewspace-715045/,如需轉載,請註明出處,否則將追究法律責任。

相關文章