raid5和iscsi網絡存儲的配置

1RAID磁盤陣列

Linux系統中做RAID,磁盤陣列的設備可以是一塊磁盤中的三個以上的分區,也可以是三塊或以上的磁盤。本文主要以幾塊磁盤爲例,來實現在RAID5

實驗說明:

VMware中進行,系統中有一塊磁盤sda,新添加6SCSI磁盤,分別爲sdb,sdc,sdd,sde,sdf,sdg,其中4塊作爲磁盤陣列的設備,1塊作爲預備(spare)磁盤,還有1塊留作備用(用於擴展RAID)

實驗步驟:

1.先查看一下系統中磁盤設備:fdisk -l

顯示結果略

2.接下來開始創建RAID了,主要會應用到mdadm命令,使用此命令需要先安裝RHEL6安裝光盤中自帶的mdadm包,如果沒有安裝,先進行安裝。

[root@svr ~]# mdadm --create --auto=yes/dev/md0 --level=5 --raid-devices=4 --spare-devices=1 /dev/sd[b-f]

參數說明:

--create   //表示要創建raid

--auto=yes /dev/md0   //新建立的軟件磁盤陣列設備爲md0md序號可以爲0-9

--level=5  //磁盤陣列的等級,這裏表示創建是的raid5

--raid-devices     //添加作爲磁盤陣列用的磁盤的塊數

--spare-devices   //添加作爲預備(spare)磁盤的塊數

/dev/sd[b-f]   //磁盤陣列所使用的設備,還可寫成/dev/sdb  /dev/sdc  /dev/sdd /dev/sde  /dev/sdf

另外這條命令也可以簡寫:

mdadm -C /dev/md0 -l5 -n4 -x1 /dev/sd[b-f]

3.查看RAID是否成功創建及是否正常運行,有兩種方法(當磁盤容量越大時,磁盤陣列構建的時間越長,所以可能需要等待很長時間才能看到以下信息):

執行mdadm --detail/dev/md0 命令查看RAID的詳細信息:圖略

查看/proc/mdstat文件,可以比較簡單明瞭的查看RAID創建和運行的情況:

S代表預備(spare)磁盤,4U代表正常,出現_表示不正常

確認新建的RAID設備

執行 mdadm  -Q /dev/md0  //-Q用來查詢設備信息。

4.格式化並且掛載和使用創建的RAID

[root@svr ~]# mkfs.ext4 /dev/md0

[root@svr ~]# mkdir /raid5

[root@svr ~]# mount /dev/md0 /mnt/raid5/查看一下掛載的情況(已經掛載上):略

來查看一下新掛的RAID是否可以使用

5.設置開機自動啓動RAID以及自動掛載

先建立/etc/mdadm.conf這個配置文件:

[root@svr ~]#mdadm --detail /dev/md0 |grep UUID > /etc/mdadm.conf

上面建立的這個文件需要作小小的修改:

[root@svr ~]# vi/etc/mdadm.conf    
ARRAY/dev/md0 UUID=d58ed27d:00ce5cf5:b26ed1e9:879d0805

然後再修改/etc/fstab文件,設置開機自動掛載:

[root@svr ~]# vi/etc/fstab    
/dev/md0        /mnt/raid5      ext4        defaults                00

重啓一下系統,就可以檢查開機自動掛載有沒有設置成功了!

擴容raid磁盤陣列:

顯示磁盤陣列的組成情況,4個塊設備組成,
#
cat /proc/mdstat

/dev/sdg增加進陣列/dev/md0
#
mdadm --add /dev/md0 /dev/sdg

raid5陣列/dev/md0修改爲5個塊設備:
#
mdadm --grow/dev/md0 -n5

再顯示一下磁盤陣列的組成情況,現在/dev/md16個塊設備組成,完成擴容,還需要7.7分鐘。
#
cat /proc/mdstat

等待擴容完成.....

執行下列命令:

驗證:

6.模擬RAID5中一塊磁盤損壞,檢驗spare磁盤的功能(raid5中允許一塊磁盤損壞,我們所設置的那1spare磁盤會立即替代損壞的磁盤,進行RAID的重建,保障數據的安全):

[root@svr ~]#mdadm --manage /dev/md0 --fail /dev/sdd

//使用此命令設置磁盤sdd成爲出錯的狀態

來查看一下:mdadm --detail /dev/md0

可以查看cat /proc/mdstat文件查看RAID5的重建過程

再來看一下重建完後的結果

/mnt/raid5還可以正常使用

7.將出錯的磁盤刪除並加入新的磁盤:

先刪除損壞的磁盤sdd:

[root@svr raid5]#mdadm --manage /dev/md0    --remove/dev/sdd       //將損壞的磁盤sddRAID中刪除

再添加一塊新的磁盤作爲spare磁盤:

[root@svr raid5]#mdadm --manage /dev/md0 --add /dev/sdg       //添加新的磁盤sdg

OK,再來查看一下:

執行以下命令

mdadm  --detail /dev/md0查看結果

8關閉軟件RAID的方法:

當你不再需要已經設置的RAID的時候,可以用以下方法關閉RAID

1)卸載/dev/md0,並且刪除或註釋掉/etc/fstab文件中的配置:

[root@svr ~]#umount /dev/md0    
[root@svr ~]# vi /etc/fstab    
#/dev/md0        /mnt/raid5        ext4        defaults            00

2)註釋掉或刪除/etc/mdadm.conf中的設置:    
[root@svr ~]# vi /etc/mdadm.conf    
#ARRAY /dev/md0 UUID=d58ed27d:00ce5cf5:b26ed1e9:879d0805

3)停止raid設備

# mdadm --stop/dev/md0

4)刪除raid中的所有磁盤

這時候raid中的磁盤就刪除了,重啓後也不會產生md127.

RAID0RAID1實同於RAID5

RAID0:並行讀寫數據

RAID1:鏡像磁盤陣列

2rhel6系統中搭建ISCSI存儲服務器

隨着企業中數據信息的不斷增長,尤其當成百上千TB的數據需要備份、恢復,以及面臨着擴容、災難恢復等需求時,DAS(直接附加存儲,就是通過與計算機主板的I/O接口,如IDESCSI相連接由本機操作系統負責讀寫及管理)方式使得數據的管理與維護日益困難。正因爲如此,網絡存儲技術應運而生,其最常見的就是NASSAN

SANstorage area network,存儲區域網絡)

SAN是通過光纖交換機、光纖路由器等設備將磁盤陣列、磁帶機或獨立的ISCSI設備與服務器連接,構成一個高速存儲子網,存儲的數據以數據塊的形式通過ISCSI協議進行傳輸,從而優於普通的IP包傳輸。

NAS(network p_w_upload storage,網絡附加存儲)

NAS存儲設備相當於一臺獨立的服務器,設備本身帶有操作系統,也擁有網絡接口,因此不依賴於其他服務器,在NAS設備中爲客戶機分配存儲空間時,通常採用共享文件夾的方式進行發佈,存儲的數據以文件的形式進行傳輸,採用CIFS或者NFS等協議

iscsiiscsi= internet Small Computer System Interface )是由IEETF開發的網絡存儲標準,目的是爲了用IP協議將存儲設備連接在一起。通過在IP網上傳送SCSI命令和數據,ISCSI推動了數據在網際之間的傳遞,同時也促進了數據的遠距離管理。由於其出色的數據傳輸能力,ISCSI協議被認爲是促進存儲區域網(SAN)市場快速發展的關鍵因素之一。因爲IP網絡的廣泛應用, ISCSI能夠在LANWAN甚至internet上進行數據傳送,使得數據的存儲不再受地域的限制。

ISCSI技術的核心是在TCP/IP網絡上傳輸SCSI協議,是指用TCP/IP報文、和ISCSI報文封裝SCSI報文,使得SCSI命令和數據可以在普通以太網絡上進行傳輸,如下圖:

iSCSI協議定義了在 TCP/IP 網絡發送、接收 block(數據塊)級的存儲數據的規則和方法。發送端將SCSI命令和數據封裝到 TCP/IP 包中再通過網絡轉發,接收端收到 TCP/IP 包之後,將其還原爲SCSI命令和數據並執行,完成之後將返回的SCSI命令和數據再封裝到 TCP/IP包中再傳送回發送端。而整個過程在用戶看來,使用遠端的存儲設備就像訪問本地的 SCSI設備一樣簡單。

RHEL6中搭建ISCSI存儲服務器:

ISCSI服務器通常也稱爲Target端,負責定義存儲對象、分配邏輯空間LUNLogical Unit,邏輯單元)。在RHEL6服務器中需要安裝scsi-target-utils軟件包,對應的系統服務爲tgtd,命令行管理工具爲tgtadm.

下面依次講解配置ISCSI的主要過程:準備存儲設備、創建ISCSI對象、爲客戶機分配存儲空間,客戶機使用ISCSI

此處所說的存儲設備指將要分配給某一個客戶機使用的設備文件,在RHEL6系統中,硬盤、分區、邏輯卷、軟RAID等都可以用作ISCSI服務的存儲設備,爲了延續磁盤空間的可擴展性,建議以一個邏輯卷爲單位分配給客戶機使用,對於個別有特殊要求的客戶機,也可以將一個軟RAID陣列分配出去。

這裏將Target主機一個邏輯卷作爲iSCSI共享磁盤,共享給一臺linux主機使用。

創建一個邏輯卷,名爲lv00,將來分配給客戶機使用。如下圖所示:

ISCSI服務器配置推薦步驟:

1、在ISCSI存儲服務器上安裝iscsi target軟件包,如下圖所示:

2iscsi target配置文件是/etc/tgt/targets.conf,此文件中的配置項默認全被注示掉了。編輯該文件,實現簡單的ISCSI存儲服務器配置。在文件尾部添加如下內容:

若要將多個存儲設備分配給客戶機可以在targets.conf文件中添加多個

<target ……>

……

</target>

注:Target的命名在同一子網內應該是唯一的,標準命名方式爲:
iqn.yyyy-mm.<reversed domain name>[:identifier]
其中:

iqn:表示“iSCSI Qualified Name”,簡稱iqn
yyyy-mm:表示年份-月份。這裏是2011-08
 reversed domain name:表示倒過來的域名,這裏是com.example
 identifier:表示識別代碼,這裏是disk

backing-store用於指定存儲設備,一般指非實際的物理磁盤,如LVM卷、某個分區、raid磁盤陣列。

initiator-address 地址   用於將target指派給指定的客戶機使用。

然後啓動tgtd服務,並設置系統啓動時自動啓動,iscsi通信的端口:3260/tcp,以明文傳輸數據

#service tgtd start

#chkconfig tgtd on

若是ISCSI服務器上開啓了防火牆可以將iptables關閉或創建允許規則,如下圖所示:

運行tgtadm--lld iscsi --op show --mode target查看target信息

至此,iscsitarget存儲服務器配置完成,使用iSCSIInitiator就可以連接iscsi target服務器了。

使用tgtadm工具創建ISCSI對象時,主要命令選項如下所述:

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

-o--op:指定操作類型,如“-o new”表示創建,“-o delete”表示刪除,“-o show”表示查看信息。

-m--mode:指定管理目標,如“-m target”表示ISCSI對象。

-t--tid:指定對象ID號,如“-t 1表示第一個對象。

-T,--targetname:指定ISCSI對象的名稱。

RHEL6iscsi客戶端配置:

1、安裝iscsi發起端軟件:iscsi-initiator-utilslsscsi軟件

#service iscsi start

#chkconfig iscsi on

2、查找iscsi服務器上的iscsi目標,即iscsi發現。

執行iscsiadm  -m discovery –t  st –p iscsi服務器的IP

iscsiadm -m discovery -t sendtargets -ptargetIP地址:端口號

若是默認端口3260可以省略不寫。

3、登錄服務器上的iscsi目標,即iscsi註冊

執行iscsiadm-m node -T target名稱-p targetIP地址:端口號 --login

退出iscsi盤陣

執行iscsiadm-m node -T target名稱-p targetIP地址:端口號 --logout

4、查看/dev/disk/by-path目錄中iscsi符號鏈接所指向的位置或fdiskl查看磁盤情況或檢查iscsi的狀態:service iscsi statusdmesg |tail

此時,可以使用iscsi磁盤,就好像它是本地連接硬盤驅動器。

5、對連接的iscsi磁盤建立LVM並實現自動掛載

未分區前顯示sdb信息如下,執行fdisk-l /dev/sdb查看

 

ISCSI客戶機上執行fdisk /dev/sdb創建LVM類型分區並查看/dev/sdb新建分區後的信息

爲了實現磁盤擴容,在客戶機上可以將連接的ISCSI磁盤創建爲LVM

在建好的邏輯捲上創建文件系統。

創建掛載點目錄並掛載

修改/etc/fstab文件實現自動掛載

執行blkid  /dev/vg_data/lv_data獲得邏輯卷lv_dataUUID

修改/etc/fstab文件自動掛載邏輯卷lv_data,如下圖所示:

測試自動掛載:mount –a或重啓系統後執行df –hT查看掛載情況

注意:

1、  使用blkid確定文件系統UUID並使用UUID掛載,而不是/dev/sd*設備名稱。(每次引導時顯示的設備名稱都不同,具體取決於iscsi設備通過網絡進行響應的順序,如果按設備名稱掛載,這會導致使用錯誤的設備)

2、  /etc/fstab中使用_netdev作爲掛載選項。(這將確保客戶端不會嘗試掛載文件系統,直至啓用聯網,否則,在引導時系統將出錯)

3、  確保iscsi服務在引導時將啓動

#chkconfig  iscsi  on

 


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章