1. 程式人生 > >Redhat 7環境下ISCSI-target伺服器的搭建與配置

Redhat 7環境下ISCSI-target伺服器的搭建與配置

實驗環境:

        iscsi-server:

                Redhat 7主機,IP地址:192.168.32.144,主機名:iscsi-server.com

        iscsi-client:

                Redhat 7主機, IP地址:192.168.32.145,  主機名:iscsi-client.com


            

實驗一:使用targetcli配置單個啟動器作為iscsi客戶端的儲存裝置


iscsi-Server配置過程

實驗環境全部準備完畢後,首先在伺服器端安裝targetcli工具,並設定target服務開機自啟

yum install  -y targetcli

systemctl restart target

systemctl enable target

我們將新新增的一塊大小為20G的虛擬磁碟/dev/sdb作為iscis卷組來使用

將/dev/sdb建立成一個分割槽,設定磁碟格式為邏輯卷格式。

備註:我們這裡也可以不用分割槽直接使用整塊磁碟來,這裡分割槽是為了將磁碟建立成邏輯卷讓它支援動態擴充套件

image.png

將新的分割槽建立成LVM格式

image.png

使用targetcli配置命令進行配置

targetcli

image.png

此時初始狀態沒有任何卷組及其它配置資訊

接下來我們進行ISCSI服務端的配置

建立一個塊儲存

>/backstore/block create  iscsi_vol  /dev/ISCSI/test_iscsi

為ISCSI-Target命名

備註:命名格式為:iqn.yyyy-mm.<主機名反寫>:自定義主機名

>/iscsi create iqn.2018-12.com.server-iscsi:server

image.png

建立ACL允許ISCSI客戶機連線

>cd iscsi/iqn.2018-12.com.server-iscsi:server/tpg

>ls

image.png

>acls/ create iqn.2018-12.com.server-iscsi:server:xx

建立lun(target塊裝置的邏輯單元)

>luns/ create /backstores/block/iscsi_vol

建立ip與埠

>portals 192.168.32.144 3260

檢視配置資訊

image.png

當設定完畢後,檢視配置資訊會出現上圖所示資訊。

設定防火牆規則放行IP及埠號

firewall-cmd --add-rich-rule ' rule family="ipv4" sorurce address="192.168.32.0/24" port port="3260" protocol="tcp" accept'

firewall-cmd --add-rich-rule ' rule family="ipv4" sorurce address="192.168.32.0/24" port port="3260" protocol="tcp" accept' --permanent

image.png

配置ISCSI  Initiator(客戶端)

在iscis-client主機上安裝ISCSIInitiator,並設定開機自啟

yum install iscsi-initiator-utils

systemctl restart iscsid

systemctl enable  iscisd

配置ISCSIInitiator名稱

備註:此時InitiatorName必須與伺服器的ACL允許ISCSI客戶機連線的名稱一致。

vim /etc/iscsi/initiatorname.iscis

image.png

重啟一下iscsi服務

systemctl restart iscsid

查詢ISCIS裝置

在查詢之前先看一下系統的磁碟裝置

lsblk

image.png

發現只有sda以及sr0兩個儲存裝置

iscsiadm -m discovery -t st -p iscsi-server.com -l

注意要將IP與對應的主機名寫到/etc/hosts中

當執行完命令後繼續檢視lsblk發現多了一塊20G的sdb磁碟

image.png

設定開機自動掛載ISCSI裝置

iscsiadm -m node   T iqn.2018-12.com.server-iscis  -p 192.168.32.144:3260 -o update -n node.startup -v automatic

給新新增的網路裝置sdb建立檔案系統,設定開機自動掛載

fdisk /dev/sdb

image.png

建立檔案系統,設定開機自動掛載到/mnt/data目錄下

mkfs.ext4  /dev/sdb1

mkdir /mnt/data

vim /etc/fstab

image.png

mount -a

df -Th

image.png

到此配置單個啟動器作為iscsi客戶端的儲存裝置配置完畢

實驗二:使用targetcli為多個啟動器配置ISCSI訪問控制

我們在上一個實驗中繼續擴充套件

再建立一個LUN卷組,讓已經掛載了sdb裝置的iscsi-client作為擴充套件使用,

在iscsi-server主機上再新增一塊10G的磁碟,並建立成邏輯卷格式

fdisk  /dev/sdc

fdisk  /dev/sdd

將/dev/sdc1設定成邏輯卷

pvcreate /dev/sdc1

vgcreate ISCSI-2 /dev/sdc1

lvcreate  -l 100%VG -n test_iscsi-2 ISCSI-2

image.png

同樣進行ISCSI服務端的配置

targetcli

建立一個塊儲存

>/backstore/block create  iscsi_vol-2  /dev/ISCSI-2/test_iscsi-2

為ISCSI-Target命名

>/iscsi create iqn.2018-12.com.server-iscsi:server-2

image.png

當我們建立完成後會發祥有兩塊塊裝置以及兩個iscsi-tpg1

建立ACL允許ISCSI客戶機連線

>cd iscsi/iqn.2018-12.com.server-iscsi:server-2

>acls/ create iqn.2018-12.com.server-iscsi:server:xx

備註:這裡一定要注意第二個iscsi-tpg1在建立acls的時候一定要跟第一個acls建立的名稱一致,然後將這個名稱寫到iscsi-client的客戶端的/etc/iscsi/initiatorname.iscsi檔案中

建立lun(target塊裝置的邏輯單元)

>luns/ create /backstores/block/iscsi_vol-2

建立ip與埠

>portals 192.168.32.144 3260

image.png

此時我們檢視一下target總體的配置資訊

image.png配置ISCSI  Initiator(客戶端)配置

檢視一下/etc/iscsi/initiatorname.iscsi檔案

image.png

伺服器雖然有兩個ISCSI-Target名稱但是下面的acls建立的wwn號是一樣的同時用同一個IP及埠共享出去,所以這裡不做任何改動

檢索伺服器端共享的裝置檔案

iscsiadm -m discovery -t st -p  iscsi-server.com -l

image.png

檢視一下客戶端本地儲存磁碟發現多個一塊/dev/sdc的10G硬碟

image.png

分割槽格式化掛載後即可正常使用,這就是為一個ISCSI客戶端配置多個卷組的步驟

這裡因為我們使用一塊網絡卡配置所以不需要再客戶端配置多路徑對映