您好,登錄后才能下訂單哦!
這篇文章跟大家分析一下“Linux系統搭建ISCSI存儲服務器具體步驟是什么”。內容詳細易懂,對“Linux系統搭建ISCSI存儲服務器具體步驟是什么”感興趣的朋友可以跟著小編的思路慢慢深入來閱讀一下,希望閱讀后能夠對大家有所幫助。下面跟著小編一起深入學習“Linux系統搭建ISCSI存儲服務器具體步驟是什么”的知識吧。
是由LETF提出來的基于及協議下的存儲技術,下面是在Linux系統中搭建ISCSI存儲服務器的具體步驟。
ISCSI存儲服務器簡介:
iSCSI是由IBM發明的基于以太網的存儲協議,該協議與SUN的NFS協議都是為了解決存儲資源共享問題的解決方案。
兩者意圖一致,只不過兩者是不同的實現方式,前者在客戶機上呈現的是一個塊設備,而后者則是一個目錄樹。
iSCSI是一種存儲設備遠程映射技術,它可以將一個遠程服務器上的存儲設備映射到本地,并呈現為一個塊設備(大白話就是磁盤)。從普通用戶的角度,映射過來的磁盤與本地安裝的磁盤毫無差異。
這里將Target主機第二塊硬盤的第一個主分區(硬盤分區標識為/dev/sdb1)作為iSCSI共享磁盤,硬盤大小為20G,共享給一臺linux主機使用。
1、在ISCSI存儲服務器上安裝iscsi target軟件包,如下圖所示:
2、iscsi target配置文件是/etc/tgt/targets.conf,此文件中的配置項默認全被注示掉了。編輯該文件,實現簡單的ISCSI存儲服務器配置。在文件尾部添加如下內容:
注:Target的命名在同一子網內應該是唯一的,標準命名方式為:iqn.yyyy-mm.
iqn:表示“iSCSI Qualified Name”,簡稱iqn。yyyy-mm:表示年份-月份。這里是2011-08。reversed domain name:表示倒過來的域名,這里是com.example。identifier:表示識別代碼,這里是disk
backing-store用于指定存儲設備,一般指非實際的物理磁盤,如LVM卷、某個分區、raid磁盤陣列。
然后啟動tgtd服務,并設置系統啟動時自動啟動,iscsi通信的端口:3260/tcp,以明文傳輸數據
#service tgtd start
#chkconfig tgtd on
運行tgtadm –lld iscsi –op show –mode target查看target信息
至此,iscsi target存儲服務器配置完成,使用iSCSI Initiator就可以連接iscsi target服務器了。
二. 安裝和配置iscsi客戶端
1、安裝iscsi發起端軟件:iscsi-initiator-utils軟件包
#service iscsi start
#chkconfig iscsi on
2、查找iscsi服務器上的iscsi目標,即iscsi發現。
執行iscsiadm -m discovery –t st –p iscsi服務器的IP
或
iscsiadm -m discovery -t sendtargets -p targetIP地址:端口號
若是默認端口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符號鏈接所指向的位置或fdisk -l查看磁盤情況或檢查iscsi的狀態:service iscsi status或dmesg |tail
此時,可以使用iscsi磁盤,就好像它是本地連接硬盤驅動器。
5、對連接的iscsi磁盤分區并實現自動掛載
未分區前顯示sdb信息如下,通過下圖可以看出sdb還未建立分區
執行fdisk /dev/sdb分區并在創建好的分區上創建文件系統(執行mkfs –t ext4 /dev/sdb命令創建文件系統)
執行完分區和創建文件系統的命令后顯示sdb信息如下:創建了一個主分區/dev/sdb1
修改/etc/fstab文件實現自動掛載
執行blkid /dev/sdb1獲得sdb1分區的UUID
修改/etc/fstab文件自動掛載sdb1分區,如下圖所示:
測試自動掛載:mount –a或重啟系統后執行df –hT查看掛載情況
注意:
使用blkid確定文件系統UUID并使用UUID掛載,而不是/dev/sd*設備名稱。(每次引導時顯示的設備名稱都不同,具體取決于iscsi設備通過網絡進行響應的順序,如果按設備名稱掛載,這會導致使用錯誤的設備)
在/etc/fstab中使用_netdev作為掛載選項。(這將確保客戶端不會嘗試掛載文件系統,直至啟用聯網,否則,在引導時系統將出錯)
確保iscsi和iscsid服務在引導時將啟動
#chkconfig iscsi on
#chkconfig iscsid on
6、刪除iscsi
卸載新文件系統并刪除/etc/fstab中的行或對其添加批注,退出并刪除iscsi目標的條目
7、加密iscsi (與加密一個普通LINUX分區一樣)
三. 配置iscsi的發現和注冊
1、#cryptsetup luksFormat /dev/sdb1 對iscsi的上新分區進行加密并設置解密密碼
Are you sure? (Type uppercase yes): YES (輸入大寫的YES來確定創建加密分區)
Enter LUKS passphrase: (輸入創建密碼,你將用密碼來保護你的加密分區。如果你把密 碼弄丟了,那就太不幸了,你就無法取回這些數據了)
Verify passphrase: (確認密碼)
2、這樣一個加密分區就建立好了.接下來我們需要創建一個可以掛載的分區并給它取個名字(這里我給取名為sdb1, 你也可以叫它test、fred、我的秘密分區或者任何你喜歡的名字)
#cryptsetup luksOpen /dev/sdb1 sdb1
Enter LUKS passphrase: (這里輸入的是創建加密分區時設置的密碼)
它將會被創建在/dev/mapper/下面.這里就是/dev/mapper/sdb1,可以用ls命令查看
3、現在將該分區格式化為ext4文件系統。mkfs.ext4 /dev/mapper/sdb1
4、接下來我們創建一個用于掛載的掛載點并掛載. 記住,你必須從/dev/mapper/路徑下使用該設備
5、現在將該分區格式化為ext4文件系統。mkfs.ext4 /dev/mapper/sdb1
6、接下來我們創建一個用于掛載的掛載點并掛載. 記住,你必須從/dev/mapper/路徑下使用該設備
# mkdir /bak
#mount /dev/mapper/sdb1 /bak
好了,現在你可以使用你的加密分區了,如向其內創建或存儲一些文件。
使用完畢后為了保護數據的隱密,我們需要取消掛載并關閉加密分區.
# umount /bak
# cryptsetup luksClose sdb1
只有在打開加密設備的時候,你才需要輸入LUKS密碼。記住,如果丟了密碼,你就完蛋了。你可以刪除分區重新再來,但是數據是無法恢復的。打開加密設備并加載以后,你就可以像使用其它分區一樣使用它了。
#cryptsetup luksOpen /dev/sdb1 sdb1
Enter LUKS passphrase: (這里輸入的是創建加密分區時設置的密碼)
附加資料:
系統每次啟動自動掛載加密分區:
/etc/crypttab包含要在系統啟動期間解鎖的設備列表,每一行列出一個設備,使用空格分隔字段。其格式如下:
name /dev/sdaN /path/to/password/file
每個字段的含義:
name字段是給加密分區取的一個名字
/dev/sdaN字段用于加密的分區設備
/path/to/password/file字段是用于解鎖設備的密碼文件,如果該字段為空或設置為none,在系統啟動時,系統會提示用戶輸入解密密碼
具體操作如下:
修改/etc/crypttab并添加如下內容,這個文件的作用是每次系統啟動時掛載加密分區時要詢問的的密碼
sdb1 /dev/sdb1 /path/file
具體操作如下:
1、修改/etc/crypttab并添加如下內容,這個文件的作用是每次系統啟動時掛載加密分區時要詢問的的密碼
sdb1 /dev/sdb1 /path/file
若/path/file省略或不設置,則系統在啟動時將要求用戶輸入密碼
2、修改/etc/fstab文件:添加如下內容
/dev/mapper/sdb1 /掛載點 ext4 defaults 0 0
注:sdb1是給加密分區取的名字即執行cryptsetup luksOpen /dev/sdb1 sdb1命令后給分區起的名稱
3、echo “密碼” > /path/file “密碼”創建加密分區時設的密碼
4、chown root /path/file
5、chmod 600 /path/file
6、執行下列命令:cryptsetup luksAddKey /dev/sdb1 /path/file
四、修改內核啟動參數
識別運行內核:
cat /etc/redhat-release //安裝Red Hat Enterprise Linux版本。
uname -r //當前運行的內核版本
uname -m 或arch //當前運行所在處理器體系結構
yum list installed kernel* 安裝的內核版本
Grub 的配置文件位于 “/boot/grub/grub.conf”, 更改后將對以后的每次啟動有效。 此配置文件可分為兩個大的部分:全局配置和菜單項配置:A. 全局配置命令全局配置命令從配置文件最上方到第一個 “title” 命令之前結束。default 0timeout 10splashimage (hd0,2)/boot/grub/splash.xpm.gzpassword –md5 tBWhgwVY$sIzNYKY/iV9rZ4keYAkaQ/ #設置了密碼的才有此項default 菜單號: 指定 Grub 默認啟動項(默認引導的系統), 菜單號從0 開始, 0 表示下面的第一個菜單項timeout seconds: 從 Grub 啟動界面出現到以默認啟動項引導系統之間等待用戶選擇的時間。splashimage full_path_of_xpm_or_xpm.gz: 指定啟動菜單的背景文件(xpm 圖像或其gzip 壓縮文件)。B. 菜單項配置從”title”開始到下一個 “title” 之前為一個啟動菜單項, 即引導一個操作系統所需的參數
title: 定義啟動菜單項的名稱root: 設置 Grub 的根設備 (root)為 Linux 內核所在分區kernel: 后跟 Linux 內核文件為參數, 加載 Linux 內核文件initrd: 加載鏡像文件
1、臨時修改內核啟動參數
系統啟動到GRUB階段時,中斷啟動,選擇要引導的系統。如圖所示:
按“a”鍵進入修改內核引導參數界面,輸入系統啟動時要引導的內核參數。如下圖所示:
按回車鍵繼續啟動系統。
與內核引導相關的引導參數可以查看如下文件:
/usr/share/doc/kernel-doc-*/Documentation/kernel-parameters.txt文件。要確保安裝kernel-doc包。
如:enforcing參數:selinux控制;enforcing=1可設置強制模式,enforcing=0可設置許可模式。
Selinux參數:selinux控制;selinux=0可完全禁用selinux,selinux=1可啟用selinux
vga參數:改變字符終端的分辨率,vga=788
vga參數值的意義,這里的值給出的是十進制的,也可以使用十六進制,如vga=0x317。
# VGA Mode Args# Color 640×480 800×600 1024×768 1280×1024# 256 769 771 773 775# 32K 784 787 790 793# 64K 785 788 791 794# 16M 786 789 792 795
2、永久修改內核啟動參數:使用grub.conf文件
在/boot/grub/grub.conf或/etc/grub.conf文件中將內核參數添加到kernel一行中的rhgb quiet前面,注意這一聲明前后與其他部分間有空格,如圖所示:
你的修改應該在/proc/cmdline文件中可以查看到。
環回設備用于像掛載設備一樣掛載文件。例如,對于訪問ISO映像來說這種設備非常方便。默認情況下,內核支持8個環回設備。修改服務器的內核命令行,使其支持32個環回設備。
列出/dev目錄中的環回設備(環回設備的名稱都是loop):ls /dev/loop
將參數max_loop=32添加到/boot/grub/grub.conf中的內核命令行,重啟服務器,再次查看環回設備的數量。
3、給GRUB設密碼:(務必將password行置于第一個title行的上方,這樣才可全局應用)
明文存儲密碼:在grub.conf文件的全局配置中添加password 密碼
密文存儲密碼:先執行grup-md5-crypt命令生成密碼加密字串,然后修改grub.conf文件在全局配置中添加password –md5 加密密碼字串
4、通過/etc/sysctl.conf文件或sysctl命令查看或調整內核網絡參數
如:啟動內核路由net.ipv4.ip_forward可調整內核參數啟動路由
修改/etc/sysctl.conf文件以永久更改,然后運行sysctl p以重新加載
關于Linux系統搭建ISCSI存儲服務器具體步驟是什么就分享到這里啦,希望上述內容能夠讓大家有所提升。如果想要學習更多知識,請大家多多留意小編的更新。謝謝大家關注一下億速云網站!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。