iSCSI磁盤陣列用作Proxmox VE的LVM共享存儲

iSCSI磁盤陣列用作Proxmox VE的LVM共享存儲


  proxmox作爲開源的虛擬化管理平臺,支持集羣管理和HA。在一般的中小規模虛擬化應用,完全可以替代VMware。VM熱遷移、HA高可用等作爲虛擬化應用的重要功能,必須用到共享存儲。從其官方資料和一些網上資料稱,proxmox除了支持常用的lvm,nfs,iscsi,還支持集羣存儲glusterfs和ceph等。

  筆者用Proxmox VE 4.4在兩臺DELL R730服務器建立了兩個節點(pve-01和pve-02)的羣集。擬在一臺iSCSI的DELL PS6000E磁盤陣列上劃出一個2T的卷作爲共享存儲。

  之前在VMware的vCenter中作過類似的應用,vCenter的存儲可直接掛上iSCSI的卷,用VMFS文件系統可直接作爲共享存儲,其各項性能(如精簡磁盤、快照等)與本地存儲完全一樣。

  所以,首先試驗Proxmox VE直接掛iSCSI卷,發現VM也可創建在該捲上,但VM的磁盤將佔用整個卷的空間。查詢Proxmox VE的幫助文件Proxmox VE Storage中Open-iSCSI initiator一節中提到:

  If you want to use LVM on top of iSCSI, it make sense to setcontent none. That way it is not possible to create VMs using iSCSI LUNs directly.

  即不可能直接使用iSCSI LUN創建VM,需要用LVM on top of iSCSI。即要在iSCSI LUN上建立LVM。按此提示,筆者作了以下實驗,成功地創建了共享存儲,實現了VM的熱遷移、HA等。

  

一、在PS6000E磁盤陣列創建用於PVE共享存儲的卷(Volume):

 

卷名:pve-storage

wKioL1iF6haQTaLJAAD_iLrnupE129.png


大小:2000G,精簡模式:

wKioL1iF6hfyvhOyAAFxKmQxBC4898.png


開啓共享(允許不同的發起端同時連接該目標):

wKiom1iF6heipJxyAAFZfrcgpbA765.png

 

 

二、掛載磁盤陣列iSCSI卷(pve-storage)。

1、查找pve-01pve-02等節點的iSCSI initiator

在節點1(pve-01)上查看/etc/iscsi/initiatorname.iscsi文件內容,找到pve-01iSCSI發起名:iqn.1993-08.org.debian:01:c8a15d1fa8b

 

root@pve-01:# cat /etc/iscsi/initiatorname.iscsi

## DO NOT EDIT OR REMOVE THIS FILE!

## If you remove this file, theiSCSI daemon will not start.

## If you change the InitiatorName,existing access control lists

## may reject this initiator.  The InitiatorName must be unique

## for each iSCSI initiator.  Do NOT duplicate iSCSI InitiatorNames.

InitiatorName=iqn.1993-08.org.debian:01:c8a15d1fa8b

 

同樣方式在1(pve-02)上查看/etc/iscsi/initiatorname.iscsi文件內容,可找到pve-02iSCSI發起名:iqn.1993-08.org.debian:01:d9fe19a3091

將兩個發起名填入在PS6000S磁盤陣列創建的pve-storage卷訪問設置頁面,僅允許該卷被pve-01pve-02訪問:

wKiom1iF6hiChyhQAAAzwzzj-rs566.png

2、獲取iSCSItarget

  執行命令iscsiadm -m discovery -t sendtargets –p < target IP>獲取iSCSItarget


root@pve-01:~# iscsiadm -m discovery -t sendtargets -p 192.168.1.254

192.168.1.254:3260,1 iqn.2001-05.com.equallogic:0-8a0906-a05065a08-f053c73a5da5881d-pve-storage

  也可在PS6000E pve-storageConnections頁中直接複製iSCSI target

wKioL1iF6hjTcUiuAAAaPoSw140457.png


3、登錄iSCSI目標

在各節點上分別執行以下操作登錄iSCSI目標

a.執行命令iscsiadm -m node -T <iSCSI-target> -p <target-IP> -l登錄iSCSI目標:

iscsiadm -m node -Tiqn.2001-05.com.equallogic:0-8a0906-a05065a08-f053c73a5da5881d-pve-storage -p192.168.1.254 –l

b.爲了重啓系統能自動登錄目標,執行以下命令:

iscsiadm -m node -p 192.168.1.254 --opupdate -n node.startup -v automatic

現在,在該節點上增加了新的磁盤/dev/sdb(本地磁盤只有/dev/sda一個)

依次在其它節點(pve-02)執行上述登錄操作(a.b.),將PS6000E上的pve-strage卷掛到各節點。

 

三、在iSCSI磁盤 /dev/sdb上創建LVM分區、創建物理卷、創建卷組(只在某一個節點如pve-01進行如下操作即可。不能在其它節點上再次操作)

 

a.執行磁盤分區命令:

root@pve-01:/#fdisk /dev/sdb

 

Welcome to fdisk(util-linux 2.25.2).

Changes will remainin memory only, until you decide to write them.

Be careful beforeusing the write command.

 

Command (m forhelp):g      (建立GPT分區表)

…………

Command (m forhelp):n      (建立一個新的分區,輸入分區號、起始結束扇區等)

…………

Command (m forhelp):t      (改變分區類型)

 

Selected partition1

Partition type(type L to list all types):23  (分區1的類型改變爲Linux LVM)

 

Command(m for help): p      (查看分區表)

Disk/dev/sdb: 2 TiB, 2147494133760 bytes, 4194324480 sectors

Units:sectors of 1 * 512 = 512 bytes

Sectorsize (logical/physical): 512 bytes / 512 bytes

I/Osize (minimum/optimal): 512 bytes / 512 bytes

Disklabeltype: gpt           (分區表類型爲GPT)

Diskidentifier: 97D04321-DE97-4001-A68B-84585F6EAC93

 

Device               Start                  End                     Sectors              Size  Type

/dev/sdb1         34              4194324446     4194324413     2T     Linux LVM (分區類型爲Linux LVM)

 

Command(m for help): w      (寫入磁盤並退出fdisk)

 

b.在分區/dev/sdb1上創建物理卷physical volume (PV)

pvcreate /dev/sdb1

      c.創建卷組volume group (VG)VG名爲“vg-pve

vgcreate vg-pve/dev/sdb1

 

至此,iSCSI共享存儲已準備就緒。可供proxmoxVE使用了。


四、在proxmox VEGUI中增加共享存儲

  用鼠標依次選:數據中心-存儲-添加-LVM

wKiom1iF6hnCDwfwAAC0K6YijYo999.png

  出現添加LVM的對話框:

wKioL1iF6hngvz0jAAAwrZ_BQOY223.png

依次命名ID(iSCSI-lvm)、選擇卷組(剛纔創建的卷組vg-pve會出現在下拉菜單中,選擇它即可)、節點(選所有)、選啓用、選共享,然後點添加。

現在共享存儲iSCSI-lvm就會出現在proxmoxVE各節點。共享存儲iSCSI-lvmLVM存儲,可將VM的硬盤創建或移動到上面運行以實現HA或經過它熱遷移VM。但LVM不支持精簡(Thin)磁盤和快照。

參考文獻http://benpiper.com/2014/12/creating-linux-lvm-logical-volume-iscsi-san/


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