網絡驅動器裝置:iSCSI服務器

網絡驅動器裝置:iSCSI服務器
NAS(Network Attached Storage,網絡附加儲存服務器):提供可儲存的網絡文件系統給用戶,只能立即使用,不可進行格式化
SAN(Storage Area Networks,儲存局域網絡):來自區網內的其他存儲設備提供磁盤給用戶

iSCSI target/initiator的設定:Centos使用的是tgt這個軟件,下面以這個軟件來接受iSCSI的設定
tgt軟件名稱:scsi-target-utils用來將Linux系統仿真成爲iSCSI target的功能使用yum去安裝
initiator軟件名稱:iscsi-initiator-utils 掛載來自target的磁盤到Linux本機上

scsi-target-utils 提供的檔案:
/etc/tgt/targets.conf :主要配置文件,設定要分享的磁盤格式是哪幾顆;
/usr/sbin/tgt-admin :在線查詢、刪除target等功能的設定工具;
/usr/sbin/tgt-setup-lun :建立target 以及設定分享的磁盤與可使用的客戶端等工具軟件
/usr/sbin/tgtadm :手動直接管理的管理員工具(可使用配置文件取代)
/usr/sbin/tgtd :主要提供iscsi target 服務的主程序;
/usr/sbin/tgtimg :建置預計分享的映像文件裝置的工具(以映像文件仿真磁盤)

target的實際設定:可分享的磁盤類型
使用dd指令所建立的大型檔案可供仿真爲磁盤(無須預先格式化);
使用單一分隔槽(partition)分享爲磁盤;
使用單一完整的磁盤(無須預先分隔);
使用磁盤陣列分享(其實與單一磁盤相同方式);
使用軟件磁盤陣列(software raid)分享成單一磁盤;
使用LVM的LV裝置分享爲磁盤;
要分享出去的數據,最好不要被使用,也最好不要開機就被掛載

規劃分享的iSCSI target 檔名:
藉由iSCSI分享出來的target都是以 iqn 爲開頭,意思是:
iSCSI Qualified Name(iSCSI 合格名稱)
在iqn 後面接的檔名,通常是:
iqn.yyyy-mm.<reversed domain name>:identifier
iqn.年年-月.單位網域名的反轉寫法 :這個分享的target名稱
target能夠擁有數個磁盤裝置,每個在同一個target上頭的磁盤可以定義爲邏輯單位編號(Logical Unit Number)LUN
iSCSI initiator 就是跟target協調後才取得LUN的存取權

設定tgt的配置文件 /etc/tgt/tatgets.conf
該配置文件的語法如下:
<target iqn.相關裝置的target 名稱>
backing-store /你的/虛擬設備/完整檔名-1
backing-store /你的/虛擬設備/完整檔名-2
</target>
例如:
<target iqn.2011-08.vbird.centos:vbirddisk>
backing-store /srv/iscsi/disk1.img <== LUN 1
backing-store /dev/sda10 <== LUN 2
backing-store /dev/server/iscsi01 <== LUN 3 LUN的編號通常照順序
<target>

配置文件中,除了參數backing-store之外,還有其他參數(man tgt-admin可查看):
backing-store(虛擬的裝置),direct-store(實際的裝置);建議使用backing-store即可
initiator-address(用戶端地址):如果要限制使用這個target的客戶端來源,才需要填寫這個設定值;基本上,不用設定它(代表所有人都能使用的意思)
incominguser(用戶賬號密碼設定):使用賬號密碼才能使用iSCSI target
write-cache [off|on] (是否使用快取):預設會使用快取來增加速度;數據比較重要時加建議不要使用快取

啓動 iSCSI target : systemctl start tgtd
觀察target相關信息:tgt-admin --show

iSCSI target是使用TCP/IP傳輸數據的,在防火牆設定可以聯機的客戶端:
iSCSI僅開啓3260端口
iptables -A INPUT -p tcp -s 192.168.100.0/24 --dport 3260 -j ACCEPT

iSCSI initiator 的設定:
ISCSI initiator 的主要文件:
/etc/iscsi/iscsid.conf :主要的配置文件,用來連接到iSCSI target 的設定;
/sbin/iscsid :啓動iSCSI initiator 的主要服務程序;
/sbin/iscsiadm :用來管理 iSCSI initiator 的主要設定程序;
/etc/init.d/iscsid :讓本機模擬成爲iSCSI initiator 的主要服務;
/etc/init.d/iscsi : 在本機成爲 iSCSI initiator 之後,啓動此腳本,讓我們可以登入iSCSI target

target 搜尋、設定、取得的方法直接使用指令:iscsiadm
iscsiadm偵測到的結果會直接寫入 /var/lib/iscsi/nodes 中

initiator 的實際設定:
1、修改/etc/iscsi/iscsid.conf內容,並啓動iscsi
在discovery 偵測; node 聯機 項下添加target裏設置的賬號和密碼
2、使用iscsiadm偵測target與寫入系統信息
iscsiadm -m discovery -t sendtargets -p IP:port
選項與參數:
-m discovery : 使用偵測的方式進行 iscsiadm 指令功能;
-t sendtargets : 透過iscsi 的協議,偵測後面的設備所擁有的target數據
-p IP:port :就是那部iscsi設備的IP與端口,不寫端口預設是3260
-m node : 找出目前本機上面所有偵測到的target信息,有可能並未登入
-T target名稱:僅使用後面接的那部target,target名稱可用上個指令查到
--login : 就是登入

例如:iscsiadm -m discovery -t sendtargets -p 偵測192.168.100.254這部iscsi設備的相關數據
偵測到的信息會寫入 /var/lib/iscsi/nodes/iqn.年-月.網域名反寫:分享資源名/監測的IP,端口,targe端口號碼 目錄內的default檔案中;若信息有修改過的話,可以到這個檔案內修改,
也可以透過iscsiadm的update 功能處理相關參數

開始進行聯機iscsi target :
systemctl restart iscsi
iSCSI target 每次都要比 iSCSI initiator 這部主機還要早開機,否則 initiator 就會出問題

更新/刪除/新增 target 數據的方法:
取消不要的target的指令 :
iscsiadm -m node -T targetname --logout
iscsiadm -m node -o [delete|new|update] -T targetname
選項與參數:
--logout :就是註銷target ,但是並沒有刪除 /var/lib/iscsi/nodes/內的數據
-o delete :刪除後面接的那部target 鏈接信息(/var/lib/iscsi/nodes/*)
-o update :更新相關的信息
-o new : 增加一個新的target 信息
先登出,再刪除,先使用 --logout 參數登出,再使用 -o delete 參數刪除

/etc/fstab 開機啓動配置文件裏的 :defaults後的參數 _netdev 表示開機啓動完成後才掛載
例如: /dev/iscsi/disk /data/iscsi ext4 defaults,_netdev 1 2

修改tat-admin --show 指令顯示的連接上target的客戶端的名字:
修改 /etc/iscsi/initiatorname.iscsi 文件
例如: initiatorName=iqn.2011-08.vbird.centos:initiator 加粗的字體就是修改後的名字
修改後需要重啓 iscsi 服務

總結:iSCSi協議主要分爲iSCSI target (提供磁盤裝置者) 及 iSCSI initiator(存取target磁盤)
iscsi target 主要使用scsi-target-utils 軟件達成主要利用tgt-admin及tgtadm指令完成;
一般定義target名稱爲:iqn.yyyy-mm.<reversed domain name>:identifier
一部target裏面可分享多個磁盤,每個磁盤都是一個LUN;
iscsi initiator主要透過iscsi-initiator-utils 軟件達成鏈接到target的任務;
iscsi-initiator-utils 主要提供 iscsiadm 指令來完成所有的動作

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