天天看點

iSCSI網絡存儲(SAN)

iSCSI技術是一種由IBM公司研究開發的,是一個供硬體裝置使用的可以在IP協定的上層運作的SCSI指令集,這種指令集合可以實作在IP網絡上運作SCSI協定,使其能夠在諸如高速千兆以太網上進行路由選擇。iSCSI的最大好處是能提供快速的網絡環境,雖然其性能和帶寬跟光纖網絡還有一些差距,但能節省企業約30-40%的成本

下面我們來看一下在RHEL6.3上如何搭建iscsi-target伺服器和用戶端如何挂載.

一、服務端操作

服務端版本:

[root@racscsihome]# cat /etc/redhat-release

RedHat Enterprise Linux Server release 6.3 (Santiago)

一、建構iscsi伺服器(SAN)

[root@racscsihome]# yum -y install scsi-target-utils

啟動服務并且添加到開機自啟動

[root@racscsihome9]# /etc/init.d/tgtd start

[root@racscsihome]# chkconfig tgtd on

1、準備儲存設備

下面将建立一個邏輯卷、一個軟RAID,分别給不同主機使用。準備給iscsi的伺服器的儲存設備部需要格式化,因為不是在伺服器上使用,格式化、挂載等操作可以由客戶機來完成。

1)建立卷組、邏輯卷

将硬碟轉換成實體卷

[root@racscsi home] pvcreate /dev/sdb

Physical volume “/dev/sdb/”successfully created

建立卷組

[root@racscsi home] vgcreate 卷組名稱 /dev/sdb

Volumegroup “vo10” successfully created

建立邏輯卷

[root@racscsihome] lvcreate –L 容量大小 -n 邏輯卷名卷組名

Logical volume “lv-host21”created

确認建立的邏輯卷

[root@racscsi home] lvdisplay /dev/卷組/邏輯卷名

iSCSI網絡存儲(SAN)

2)建立軟RAID磁盤陣列

為伺服器添加三塊磁盤,每塊的容量均為10G,然後使用mdadm管理工具來建立RAID裝置。使用 /dev/sdc /dev/sdd / /dev/sde三塊磁盤建構R

[root@racscsi home] mdadm -Cv /dev/RAID名稱 -a yes–n3 –l5 /dev/sd[cde]

iSCSI網絡存儲(SAN)

[root@racscsi home] mdadm –Q /dev/RAID名稱

iSCSI網絡存儲(SAN)

上述指令操作中,指令選項-C表示建立RAID裝置,-v輸出詳細資訊,-a=yes表示若對應的裝置檔案不存在則自動建立,-n3表示由三塊磁盤組成,-l5表示使用RAID級别為5,-Q用來查詢裝置資訊。

為了重建或恢複軟RAID裝置友善,建議将此陣列配置儲存為/etc/mdadm.conf。

[root@racscsi home] mdadm –D /dev/RAID名稱 | grep UUID

iSCSI網絡存儲(SAN)

[root@racscsi home] vim /etc/mdadm.conf

添加

iSCSI網絡存儲(SAN)

2、建立iscsi對象(Target)

使用tgtadm工具建立iscsi對象,主要指令選項如下。

-L、--lld: 指定驅動類型,如“-L iscsi”表示iscsi存儲。

-o、--op:指定操作類型,如“-onew” 表示建立、“-o delete”删除

-m、--mode:指定管理目标,如“-m target”表示iscsi對象

-t、--tid:指定對象ID号,如“-t 1”表示第一個對象

-T、--targetname:指定iscsi對象的名稱,主意應符合“iqn.”規範

以下操作将依次建立兩個iscsi存儲對象,ID号分别為1、2,識别标記分别為lvm、raid。

[root@racscsi home]# service tgtd start

[root@racscsi home]# netstat –natp | grep tgt

[root@racscsi home]# tgtadm –L iscsi –o new –m target –t1 –T ian.2013-09.com.benet:lvm

[root@racscsi home]# tgtadm –L iscsi –o new –m target –t2 –T ian.2013-09.com.benet:raid

檢視建立的iscsi對象

[root@racscsi home]# tgtadm –L iscsi –o show –m target |more

3、為客戶機配置設定存儲空間(LUN)釋出

-l、--lun:指定LUN的ID号,如“-l 1”表示第一個LUN

-b、--backing-store:指定塊裝置位置,如“-b /dev/vo10/lv-host21”

-I、--initiator-address:指定客戶機位址,如“-I 192.168.1.2”

-m、logicalunit: (可簡寫為 –m lu)

以前面準備的邏輯卷lv-host21和raid5陣列/dev/md0為例,分别挂到tid為1、2的target,指派給客戶機192.168.1.2和192.168.1.3使用

[root@racscsi home]# tgtadm –L iscsi –o mew –m lu –t 1 –l1 –b /dev/vo10/lv-host21

[root@racscsi home] tgtadm –L iscsi –o bind –m target –t1 I 192.168.1.2

[root@racscsi home] tgtadm –L iscsi –o mew –m lu –t 2 –l1 –b /dev/md0

[root@racscsi home]# tgtadm –L iscsi –o bind –m target –t2 - I 192.168.1.3

[root@racscsi home]# tgtadm –L iscsi –o show –m target

iSCSI網絡存儲(SAN)

4、儲存tatget和LUN配置

修改檔案/etc/tgt/targets.conf,将traget、LUN資訊儲存為靜态配置,以便在重新開機tgtd服務後仍然有效。

[root@racscsi home]# vim /etc/tgt/targets.conf

在檔案末尾添加如下内容

<targetiqn.20013-09.com.benet:lvm>

backing-store/dev/vo10/lv-host21

initiator-address192.168.1.0/24 #限定允許通路的用戶端位址

</target>

<targetiqn.20013-09.com.benet:raid>

backing-store/dev/md0

initiator-address192.168.1.3

[root@racscsi home]# chkconfig –level 35 tgtd on

重新開機服務,使修改後的配置生效

[root@racscsi home]# service tgtd restart

二、客戶機挂載

[root@rac2home]#yum -y install iscsi-initiator-utils lsscsi

1.發現并連接配接iscsi裝置

[root@rac2home]# service iscsi start

[root@rac2home]# iscsiadm -m discovery –tsendtargets –p 192.168

.1.1 //iscsi伺服器ip

iSCSI網絡存儲(SAN)

連接配接iscsi裝置(連接配接--login) (關閉—logout)

[root@rac2home]# iscsiadm –m node –T iqn.2013-09.com.benet:lvm

--login

iSCSI網絡存儲(SAN)

檢視scsi裝置清單

iSCSI網絡存儲(SAN)

2、使用iscsi儲存設備

1)為磁盤規劃分區

隻有當iscsi伺服器配置設定給客戶機的LUN是一整塊實體磁盤。而且此硬

盤中已經包含有分區表、檔案系統的時候,客戶機才可以直接通路其中的文

件系統,否則應對新連接配接的iscsi裝置進行分區。

檢視新磁盤分區資訊

[root@rac2Desktop]# fdisk –l /dev/sdb

iSCSI網絡存儲(SAN)

劃分分區

[root@rac2Desktop]# fdisk /dev/sdb

(P-檢視分區) (n-建立分區)(P-主分區) (e-擴充分區)(l-邏輯分區)

(d-删除分區)(t-更改分區類型) (w-儲存分區操作)(q-不儲存)

更新分區表

[root@rac2Desktop]# partprobe /dev/sdb

2)建立檔案系統(格式化)

[root@rac2Desktop]# mkfs –t ext3 /dev/sdb

3)挂載檔案系統

[root@rac2Desktop]# mkdir /opt/data

[root@rac2Desktop]# mount /dev/sdcl /opt/data

2、儲存iscsi連接配接配置

開機自動挂載

[root@rac2Desktop]# chkconfig --level 35 iscsi on

[root@rac2Desktop]# vim/etc/fstab

/dev/sdb1 /opt/data ext3 defaults,_netdev 0 0 //添加

或者把/dev/sdb1換成唯一的UUID号

iSCSI網絡存儲(SAN)

擷取UUID号

[root@rac2Desktop]# blkid /dev/sdb1

iSCSI網絡存儲(SAN)

客戶機在已挂載基于iscsi裝置的檔案系統情況下,第一次關機或重新開機時

主意先斷開iscsi連接配接(--logout),或停止iscsi服務否則可能出現短時

的系統假死現象。

補充:

如果在服務端/etc/tgt/targets.conf檔案配置了使用者名密碼,比如

<target iqn.20013-09.com.benet:server.target3>

backing-store /dev/sdb

initiator-address192.168.10.0/24

incoming grid 123@passwd

write-cacheoff

則在用戶端/etc/iscsi/iscsid.conf配置檔案

需要添加相應的賬号和密碼

node.session.auth.username = grid

node.session.auth.password =123@passwd

discovery.sendtargets.auth.username = grid

discovery.sendtargets.auth.password =123@passwd