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建立成一個分割槽,設定磁碟格式為邏輯卷格式。
備註:我們這裡也可以不用分割槽直接使用整塊磁碟來,這裡分割槽是為了將磁碟建立成邏輯卷讓它支援動態擴充套件
將新的分割槽建立成LVM格式
使用targetcli配置命令進行配置
targetcli
此時初始狀態沒有任何卷組及其它配置資訊
接下來我們進行ISCSI服務端的配置
建立一個塊儲存
>/backstore/block create iscsi_vol /dev/ISCSI/test_iscsi
為ISCSI-Target命名
備註:命名格式為:iqn.yyyy-mm.<主機名反寫>:自定義主機名
>/iscsi create iqn.2018-12.com.server-iscsi:server
建立ACL允許ISCSI客戶機連線
>cd iscsi/iqn.2018-12.com.server-iscsi:server/tpg
>ls
>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
檢視配置資訊
當設定完畢後,檢視配置資訊會出現上圖所示資訊。
設定防火牆規則放行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
配置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
重啟一下iscsi服務
systemctl restart iscsid
查詢ISCIS裝置
在查詢之前先看一下系統的磁碟裝置
lsblk
發現只有sda以及sr0兩個儲存裝置
iscsiadm -m discovery -t st -p iscsi-server.com -l
注意要將IP與對應的主機名寫到/etc/hosts中
當執行完命令後繼續檢視lsblk發現多了一塊20G的sdb磁碟
設定開機自動掛載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
建立檔案系統,設定開機自動掛載到/mnt/data目錄下
mkfs.ext4 /dev/sdb1
mkdir /mnt/data
vim /etc/fstab
mount -a
df -Th
到此配置單個啟動器作為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
同樣進行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
當我們建立完成後會發祥有兩塊塊裝置以及兩個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
此時我們檢視一下target總體的配置資訊
配置ISCSI Initiator(客戶端)配置
檢視一下/etc/iscsi/initiatorname.iscsi檔案
伺服器雖然有兩個ISCSI-Target名稱但是下面的acls建立的wwn號是一樣的同時用同一個IP及埠共享出去,所以這裡不做任何改動
檢索伺服器端共享的裝置檔案
iscsiadm -m discovery -t st -p iscsi-server.com -l
檢視一下客戶端本地儲存磁碟發現多個一塊/dev/sdc的10G硬碟
分割槽格式化掛載後即可正常使用,這就是為一個ISCSI客戶端配置多個卷組的步驟
這裡因為我們使用一塊網絡卡配置所以不需要再客戶端配置多路徑對映