集群實例:配置ISCSI客戶端(LINUX) Open-iSCSI
1.1 連接ISCSI
操作系統:麒麟linux(2.6.18-1.std)
Iscsi包: iscsi-initiator-utils-6.2.0.742-0.5.el5.i386.rpm(Open-iSCS提供http://www.open-iscsi.org/)
注意:以下操作僅針對以上版本內核和iscsi包
並且僅保證可用,不保證最優。
www.ixdba.net
1.1.1 安裝rpm包
將iscsi包cp到本地盤,並在該包所在的目錄下運行命令
# rpm –ivh iscsi-initiator-utils-6.2.0.742-0.5.el5.i386.rpm
運行此命令后,會生成一個目錄/etc/iscsi,該目錄下有兩個文件:
Initiatorname.iscsi和iscsid.conf
1.1.2 啟動ISCSI服務
安裝完iscsi服務默認是關閉的,需要手工啟動
# cd /etc/init.d
# ./iscsi start
1.1.3 搜尋盤陣
運行以下命令搜尋target,即目標端:7612i存儲
#iscsiadm --mode discovery --type sendtargets --portal 192.168.1.221
以上IP即是7612i的iscsi口的IP,其它固定。
1.1.4 顯示盤陣
顯示存儲端target name
# iscsiadm --mode node
顯示結果與在7612i串口 iscsi management→iscsi node名字相同
1.1.5 登陸盤陣
target登陸
#iscsiadm --mode node --targetname targetname --portal 192.168.1.221:3260 --login
其中targetname即是步驟4中結果。(註:橫杆是中杠)
(註:3,4,5實施中是在/etc/iscsi下運行,是否可以在別的路徑執行,可自行測試。以上3個命令格式是從man iscsiadm查出)
1.1.6 設置自動啟動盤陣服務
經過以上幾步,fdisk –l就可以看到所掛接分區了,為確保重啟后也能看到,再修改一下/etc/iscsi/iscsid.conf,將第5步的命令iscsiadm --mode node --targetname targetname --portal 192.168.1.221:3260 --login
# vi /etc/iscsi/iscsid.conf
iscsiadm --mode node --targetname targetname --portal 192.168.1.221:3260 –login
添加到該文件中的開始部分
*****************
# Startup settings
#***************** 這個欄下面即可。
其實這個文件大多數內容處於被註釋狀態,該命令添加位置應該影響不大.然後重啟電腦後直接fdisk –l 依然可以看到所掛接的分區。至此iscsi所有操作完成,但掛載的分區不是linux所識別,必須使用FDISK進行磁碟分區。
1.2 設置分區
1.2.1 使用fdisk命令進行磁碟分區
fdisk是各種Linux發行版本中最常用的分區工具,是被定義為Expert級別的分區工具。我們可以通過fdisk來分區使用iscsi設備。它還包括一個二級選單,首先輸入命令,然後出現問答式界面,用戶通過在這個界面中輸入命令參數來操作fdisk。
# fdisk /dev/hdb
運行后出現fdiak的命令提示符:
Command (m for help):
使用n命令創建一個分區,會出現選擇主分區(p primary partition)還是擴展分區(l logical)的提示,通常選用主分區。然後按照提示輸入分區號(Partion number(1-4):)、新分區起始的磁碟塊數(First Cylinder)和分區的大小,可以是以MB為單位的數字(Last cylindet or +siza or +sizeM or +sizeK:)。例如:
#fdisk /dev/sdb
查看分區,如果是第一次操作時,顯示為無。
Command (m for help):p
Disk /dev/sdb:255 heads, 63 sectors, 4427 cylinders
Units = cylinders of 16065 * 512 bytes
Device Boot Start End Blocks Id System
建立分區
Command (m for help):n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-4427, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-4427, default 4427):
Using default value 4427
保存分區信息
Command (m for help):w
The partition table has been altered!
Calling ioctl() to re-read partition table.
WARNING:If you have created or modified any DOS 6.x
partitions, please see the fdisk manual page for additional
information.
Syncing disks.
1.2.2 現在驗證新分區:
# fdisk /dev/sdb
The number of cylinders for this disk is set to 4427.
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):p
Disk /dev/sdb:255 heads, 63 sectors, 4427 cylinders
Units = cylinders of 16065 * 512 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 4427 35559846 83 Linux
Command (m for help):q
1.2.3 格式化分區
# mkfs -t ext3 /dev/sdb1
mke2fs 1.39 (29-May-2006)
Filesystem label=OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
214761472 inodes, 429495759 blocks
21474787 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=0
13108 block groups
32768 blocks per group, 32768 fragments per group
16384 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968,
102400000, 214990848
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 31 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
1.2.4 設定載入點:
文件系統必須有一個掛載點,它只是一個空的目錄,新文件系統在這裡與系統目錄樹「相連」。經過以上的操作,我的 Linux伺服器已經連接到 iSCSI 儲存設備, 並且如同Linux 本機上面的一個 SCSI 硬碟一樣。 使用的方式幾乎一模一樣。
假設iSCSI 主機掛載到 /cluster/raid 目錄下:
# mkdir /cluster/raid
# mount /dev/sda1 /cluster/raid
# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/hda1 10080488 2950408 6618012 31% /
tmpfs 5036316 81172 4699312 0% /dev/shm
/dev/sda1 1914788196 27040372 1790482212 2% /cluster/raid
1.2.5 設定自動掛載:
在機器重新啟動后自動載入分區,你必須在/etc/fstab中加入相應分區,但分區類型必須市"_netdev".例如載入的分區sdb1:
# vi /etc/fstab
/dev/sdb1 /cluster/raid ext3 _netdev 0 0
/dev/sdc1 /data/sdc1 ext3 _netdev 0 0
/dev/sdd1 /data/sdd1 ext3 _netdev 0 0
1.2.6 查看掛載分區:
# df -h
文件系統 容量 已用 可用 已用% 掛載點
/dev/sda1 64G 5.6G 55G 10% /
tmpfs 1.7G 0 1.7G 0% /dev/shm
/dev/sdb1 1.6T 197M 1.5T 1% /data/sdb1
/dev/sdc1 1.6T 197M 1.5T 1% /data/sdc1
《解決方案》
回復 #1 simstone 的帖子
通過freenas也可以很好的實現
《解決方案》
Red Hat 自己就帶 iscsi-target 的功能, 不需要這麼複雜, 而且至少比麒麟穩定吧....