在 iSCSI Target 伺服器中使用LVM創建和設置LUN(二)
在目標器中使用 LVM 創建 LUN
為什麼使用LUN?
LUN用於存儲,SAN存儲大多數由LUN的集群來組成存儲池,LUN由目標器的幾塊物理驅動器組成。我們可以使用LUN作為系統物理驅動器來安裝操作系統,LUN可以用在集群、虛擬伺服器、SAN中。在虛擬伺服器中使用LUN的主要用途是作為操作系統的存儲。LUN的性能和可靠性根據在創建目標存儲伺服器時所使用的驅動器決定。
前置閱讀
要了解創建iSCSI 目標器,點擊下面的鏈接。
主伺服器設置
系統信息和網路設置部分與前文的iSCSI 目標器相同 - 我們在相同的伺服器上定義LUN。
- 操作系統 – CentOS 6.5 (Final)
- iSCSI 目標器 IP – 192.168.0.200
- 使用的埠 : TCP 860, 3260
- 配置文件 : /etc/tgt/targets.conf
在iSCSI 目標器使用LVM創建LUN
首先,用fdisk -l命令找出驅動器的列表,這會列出系統中所有分區的列表。
# fdisk -l
上面的命令只會給出基本系統的驅動器信息。為了得到存儲設備的信息,使用下面的命令來得到存儲設備的列表。
# fdisk -l /dev/vda && fdisk -l /dev/sda
列出存儲設備
注意:這裡vda是虛擬機硬碟,因為我使用的是虛擬機來用於演示,/dev/sda 是額外加入的存儲。
第一步: 創建用於LUN的LVM驅動器
我們使用/dev/sda驅動器來創建LVM。
# fdisk -l /dev/sda
列出LVM驅動器
現在讓我們使用如下fdisk命令列出驅動器分區。
# fdisk -cu /dev/sda
- 選項 『-c』 關閉DOS兼容模式。
- 選項 『-u』 用於列出分區表時給出扇區而不是柱面的大小。
使用n創建新的分區。
Command (m for help): n
使用p創建主分區。
Command action
e extended
p primary partition (1-4)
給我們創建的分區一個分區號。
Partition number (1-4): 1
到這裡,我們就要設置LVM驅動器了。因此,我們需要使用默認的設置來使用整個驅動器。
First sector (2048-37748735, default 2048):
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-37748735, default 37748735):
Using default value 37748735
選擇分區的類型,這裡我們要設置LVM,因此使用8e。使用l列出所有的類型。
Command (m for help): t
選擇想要改變類型的分區。
Selected partition 1
Hex code (type L to list codes): 8e
Changed system type of partition 1 to 8e (Linux LVM)
在改變完類型之後,通過列印(p)選項來列出分區表。
Command (m for help): p
Disk /dev/sda: 19.3 GB, 19327352832 bytes
255 heads, 63 sectors/track, 2349 cylinders, total 37748736 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x9fae99c8
Device Boot Start End Blocks Id System
/dev/sda1 2048 37748735 18873344 8e Linux LVM
使用w寫入設置並退出fdisk工具,重啟系統使設置生效。
作為參考,我下面附上了截圖來給你在創建LVM驅動器時一個明確的指導。
創建LVM分區
系統重啟後,使用fdisk命令列出分區表。
# fdisk -l /dev/sda
驗證LVM分區
第二步: 為LUN創建邏輯卷
現在我們使用『pvcreate』命令創建物理卷。
# pvcreate /dev/sda1
用iSCSI的名字創建卷組來區分這個卷組。
# vgcreate vg_iscsi /dev/sda1
這裡我定義了4個邏輯卷,因此在我的iSCSI target上就會有4個LUN。
# lvcreate -L 4G -n lv_iscsi vg_iscsi
# lvcreate -L 4G -n lv_iscsi-1 vg_iscsi
# lvcreate -L 4G -n lv_iscsi-2 vg_iscsi
# lvcreate -L 4G -n lv_iscsi-3 vg_iscsi
列出物理卷、卷組和邏輯卷確定。
# pvs && vgs && lvs
# lvs
為了更好地理解上面的命令,我在下面包含了截圖作為參考。
創建LVM邏輯卷
驗證LVM邏輯卷
第三步: 在目標器中定義LUN
我們已經創建了邏輯卷並準備使用LUN,現在我們在目標器配置中定義LUN,只有這樣做它才能用在客戶機中(發起程序)。
用你選擇的編輯器打開位於『/etc/tgt/targets.conf』的目標器配置文件。
# vim /etc/tgt/targets.conf
追加下面的target配置文件中的定義。保存並關閉文件。
<target iqn.2014-07.com.tecmint:tgt1>
backing-store /dev/vg_iscsi/lv_iscsi
</target>
<target iqn.2014-07.com.tecmint:tgt1>
backing-store /dev/vg_iscsi/lv_iscsi-1
</target>
<target iqn.2014-07.com.tecmint:tgt1>
backing-store /dev/vg_iscsi/lv_iscsi-2
</target>
<target iqn.2014-07.com.tecmint:tgt1>
backing-store /dev/vg_iscsi/lv_iscsi-3
</target
在target中配置LUN
上圖的解釋:
- iSCSI 採取限定名 (iqn.2014-07.com.tecmint:tgt1).
- 名稱隨便你
- 用於確定目標名, 這是這台伺服器中的第一個目標
- LVM共享特定的LUN。
接下來使用下面的命令重載tgd服務配置。
# /etc/init.d/tgtd reload
重載配置
接下來使用下面的命令驗證可用的LUN。
# tgtadm --mode target --op show
列出可用LUN
LUN信息
上面的命令會列出可用LUN的下面這些信息
- iSCSI 限定名
- iSCSI 已經準備好
- 默認LUN 0被控制器所保留
- LUN 1是我們定義的目標器
- 這裡我為每個LUN都定義了4GB
- 在線: 是的,這就是可以使用的LUN
現在我們已經使用LVM為目標器定義了LUN,這可擴展並且支持很多特性,如快照。我們將會在第三部分了解如何用目標器授權,並且本地掛載遠程存儲。
via: http://www.tecmint.com/create-luns-using-lvm-in-iscsi-target/
作者:Babin Lonston 譯者:geekpi 校對:wxy
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive