2,295 瀏覽數

XenServer – 新增儲存裝置 – HBA

當系統硬碟空間不符合使用時最快的方式是透過 NFS 直接增加空間,但是使用 NFS 當作硬碟空間有其缺點就是 VDI(Virtual disk Image) 硬碟無法放大縮小其使用空間,XenServer 列出下面幾種是可以放大縮小VDI(Virtual disk Image) 硬碟的空間.

  1. lvm
  2. lvmohba
  3. lvmoiscsi
  4. netapp
  5. Dell EqualLogic

下面幾種是不行的 :

  1. ext 
  2. nfs

所以比較好的方式是加入一塊 HBA 卡,但是其缺點是系統必須關機,加上不是每一塊 HBA XenServer 都會認得出來.所以在添購前最好先到 Xen Server 的官方網站查詢 HCL(Hardware Compatibilty List) – http://hcl.xensource.com/ 查詢哪一個 HBA Storage Controllers  是有經過 XenServer 的驗證.下面列出是 XenServer 有支援的 HBA Storage Controllers

  1. Fibre Channel Host Bus Adapter
    QLogic Corp
    Emulex Corporation
  2. SCSI / SATA / SAS / RAID Host Bus Adapter
    3ware Inc:
    7xxx/8xxx-series PATA/SATA-RAID
    9550SX 4-port RAID
    9650SE SATA-II RAID

    Adaptec:
    AAC-RAID (Rocket)
    AIC-7902(B) U320 w/HostRAID

    LSI Logic / Symbios Logic:
    2032 SCSI non-RAID Adapter
    MegaRAID SAS

更詳細的資料請自行上官方管站查詢 http://hcl.xensource.com/BrowsableStorageControllerList.aspx

基本上市面常用的 HBA Storage Controllers 都有支援.先來看看怎麼透過 XenCenter 去新增 Hardware HBA.目前我的系統有一張 Qlogic 2342 的 Fiber Channel HBA 剛好它也是在 XenServer 支援硬體列表中.只要點選 XenCenter 中你的 XenServer 並選擇 New Storage 就可以在 Virtual disk storage 中找到 Hardware HBA.
hba00
目前我連接的 JBOD(Just a Bunch of Disks) 有四顆 SAS 硬碟,你可以選擇將他加入到原先我們的系統中,並且會將 HBA 卡所得到的硬碟空間格式化成 lvm 的檔案格式.XenServer 採用 LVM 的方式來管裡系統硬碟空間,所以它可以很簡單的方式把硬碟空間放大縮小,LVM(Logical Volume Manager)是一種可以動態變更 partition 大小的方式,可以讓你能更容易利用管理你的硬碟.有興趣的可以參考 LVM-簡介 – http://benjr.tw/7364
hba01
如果這一顆硬碟是未曾加入到 XenServer 它會給我們警告,系統會重新格式化這一顆硬碟所以有的資料都會消失.如果沒有其他的 Server 在存取這一顆硬碟就可以選擇 "是" 進行格式化.hba02
之後你在新增VDI(Virtual disk Image) 就會多了這一個 Hardware HBA 的選擇.
hba03
不過如果遇到不在 XenServer 支援列表的的裝置那要如何解決這個問題,我們還是可以透過手動命令列的方式來進行,通常會遇到這問題都是一些系統提供的南橋晶片的 I/O 上的 SATA 或是 SAS 的硬碟,如 Intel ICH,而且最後還要重新開機從能完成.不說廢話方法如下:

第一步:
關機後將新的硬碟加入到系統中,並設定好,確定在系統的 BIOS 可以正確無誤的看到你的硬碟.

第二步:
進入到 XenServer 並進入命令列模式 (Configuration / Local Command Shell) 使用 #lspci 確定硬體在 XenServer 下面可以正確偵測到,目前我增加的硬碟是掛載在系統 ICH9 下面.

[root@benjr ~]# lspci
00:1f.2 IDE interface: Intel Corporation 82801IR/IO/IH (ICH9R/DO/DH) 4 port SATA IDE Controller (rev 01)

並使用 Fdisk 確定可以看到你新增的硬碟

[root@benjr ~]# fdisk -l
Disk /dev/sda: 146.8 GB, 146814976000 bytes
255 heads, 63 sectors/track, 17849 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1         499     4008186   83  Linux
/dev/sda2             500         998     4008217+  83  Linux
/dev/sda3             999       17849   135355657+  83  Linux

Disk /dev/sdb: 73.4 GB, 73407488000 bytes
255 heads, 63 sectors/track, 8924 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Disk /dev/sdb doesn't contain a valid partition table

/dev/sdb 將是我要新增的硬碟.

第三步:
接下來的步驟指令都是和 LVM 相關,反正為了不要增加不必要的困惱,我直接將這一顆硬碟加到原先的 VG(Volum Group),第一步先切割 PV(physical volume) .

[root@benhr ~]# pvcreate /dev/sdb

第四步:
將新的硬碟加入到之前已存在的 VG(Volume Group).

[root@benjr ~]# vgextend VG_XenSource /dev/sdb

其中的 VG_XenSource 會不太一樣你可以透過 tab 鍵來直接完成他的全名.你也可以透過 vgscan 的指令來看 VG_XenSource 的全名.pvcreate 和 vgextend 是做什麼用的有興趣請參考. http://benjr.tw/7362

第五步:
重新開機吧!你會在 UI (Configuration / Disks and Storage Repositories / Current Storage Repositories / Local storage)看到硬碟空間變大了.

網友的想法

  1. 自動參照通知: Xen Server Book | Benjr.tw

發表迴響