xenserver下的SR,VDI,VBD
在使用xe命令添加vdisk時,首先需要理解xenserver下的SR,VDI,VBD這三個概念。如下圖
存儲庫 (SR)
虛擬磁盤映像 (VDI)
物理塊設備 (PBD)
虛擬塊設備 (VBD)
下面就以圖形來說明這些術語之間的關系。
1、SR
定義了一個名為存儲庫 (SR) 的容器來描述存儲虛擬磁盤映像 (VDI) 的特定存儲目標。SR 具有對本地連接的 IDE、SATA、SCSI 和 SAS驅動器和遠程連接的 iSCSI、NFS、SAS 和光纖通道的內置支持,因而非常靈活。
利用xe命令看到如下信息,部分顯示內容被省略
[root@xs-10 ~]# xe sr-list
[root@xs-10 ~]# xe sr-list name-label=xenserver ?
uuid ( RO) ? ? ? ?: 0554628e-448d-fbdf-4544-04cc4f390529 ?
? ? name-label ( RW): xenserver ?
?name-description ( RW): iSCSI SR [172.20.10.107 (iqn.2007-10.uit.com:techtest.xenserver)] ?
? ? ? ?host ( RO): xs-10.8 ?
? ? ? ?type ( RO):?lvmoiscsi ??
? ?content-type ( RO):
uuid ( RO) ? ? ? ?: c2b41896-467e-b936-6836-754eb22d36de
? ? name-label ( RW): vmware vsphere
?name-description ( RW): CIFS ISO Library [\\172.20.1.249\software\ISO\vmware vsphere]
? ? ? ?host ( RO): xs-10.8
? ? ? ?type ( RO):?iso
? ?content-type ( RO): iso
uuid ( RO) ? ? ? ?: 4188b1ee-76bc-10ed-dc15-6c7a236ce9aa
? ? name-label ( RW): Ubuntu
?name-description ( RW): CIFS ISO Library [\\172.20.1.249\software\ISO\linux\Ubuntu]
? ? ? ?host ( RO): xs-10.8
? ? ? ?type ( RO):?iso
? ?content-type ( RO): iso
結合圖形,不難理解,所謂的SR就是一個存儲倉庫,里面存儲了很多的ISO文件,你可以利用這些ISO文件來存儲東西,如vmware vsphere、ubuntu這兩個SR。又或者當做存儲虛擬機文件的倉庫,例如xenserver這個SR。下面接著看SR下一層的對象,叫做VDI
2、VDI
虛擬磁盤映像是顯示給 VM 的存儲抽象,VDI 是 XenServer 中的虛擬化存儲的基本單元。
下面我們看一下Ubuntu這個SR存儲庫中有哪些VDI,即VDI是包含在SR中的。
[root@xs-10 ~]# xe vdi-list sr-uuid=4188b1ee-76bc-10ed-dc15-6c7a236ce9aa
uuid ( RO) ? ? ? ?: 5b5bd9b4-b061-4e55-ab8f-a6e685358357
? ? name-label ( RW): ubuntu-11.04-desktop-i386.iso
?name-description ( RW):
? ? ? sr-uuid ( RO): 4188b1ee-76bc-10ed-dc15-6c7a236ce9aa
? ?virtual-size ( RO): 718583808
? ? ?sharable ( RO): false
? ? ?read-only ( RO): true
uuid ( RO) ? ? ? ?: a81d7dcc-27bb-45cc-8c8b-c761cb1f1a04
? ? name-label ( RW): ubuntu-11.10-desktop-amd64.iso
?name-description ( RW):
? ? ? sr-uuid ( RO): 4188b1ee-76bc-10ed-dc15-6c7a236ce9aa
? ?virtual-size ( RO): 731164672
? ? ?sharable ( RO): false
? ? ?read-only ( RO): true
uuid ( RO) ? ? ? ?: 98354aff-f259-4ba4-8617-fb53cc6c08b7
? ? name-label ( RW):?ubuntu-10.04.3-server-i386.iso
?name-description ( RW):
? ? ? sr-uuid ( RO): 4188b1ee-76bc-10ed-dc15-6c7a236ce9aa
? ?virtual-size ( RO): 704217088
? ? ?sharable ( RO): false
? ? ?read-only ( RO): true
部分省略。。。
ubuntu這個SR所包含的VDI截圖如下
而xenserver這個SR下面含有如下的VDI
可以看到VDI。由截圖不難看出,所謂的VDI就是里面的ISO文件或虛擬機的硬盤文件。下面我們繼續vbd
3、VBD
虛擬塊設備是連接器對象(與上述的 PBD 類似),可用于在 VDI 和 VM 之間進行映射。VBD 還可用于微調給定 VDI 的 QoS(服務質量)、統計數據和可引導性等相關參數。
上文中講述的VDI只是一些ISO文件或虛擬機的硬盤文件,這些文件如果單獨放在一起是沒有任何價值的。正如描述中的那樣,VBD是用在VDI和VM之間的映射,如果沒了這層映射,光有VDI也是不行的。
利用xe命令查看“UCA-VM-10.24”這個主機含有哪些VBD,首先查看UCA-VM-10.24的UUID號
[root@xs-10 ~]# xe vm-list name-label=UCA-VM-10.24
uuid ( RO) ? ? ?: 89577946-f487-76a6-387e-86daaca15bef
? name-label ( RW): UCA-VM-10.24
?power-state ( RO): halted
再查看
[root@xs-10 ~]# xe vbd-list vm-uuid=89577946-f487-76a6-387e-86daaca15bef
uuid ( RO) ? ? ? : a798413b-df47-9fb5-4b4d-56539a26eaf2
? ? vm-uuid ( RO): 89577946-f487-76a6-387e-86daaca15bef
?vm-name-label ( RO): UCA-VM-10.24
? ? vdi-uuid ( RO): 34fc2c1c-a3aa-43c7-95e4-b8bf6603e52f
? ? ?empty ( RO): false
? ? ?device ( RO):?hda
uuid ( RO) ? ? ? : 5a702417-e40e-ac62-c282-9b89bf8cb7b6
? ? vm-uuid ( RO): 89577946-f487-76a6-387e-86daaca15bef
?vm-name-label ( RO): UCA-VM-10.24
? ? vdi-uuid ( RO): <not in database>
? ? ?empty ( RO): true
? ? ?device ( RO):?hdd
uuid ( RO) ? ? ? : 07fe6b36-c836-d99e-e3ea-8b8eda2fe134
? ? vm-uuid ( RO): 89577946-f487-76a6-387e-86daaca15bef
?vm-name-label ( RO): UCA-VM-10.24
? ? vdi-uuid ( RO): 56c1b396-4776-4b43-ba8f-42870669055e
? ? ?empty ( RO): false
? ? ?device ( RO):?hdc
uuid ( RO) ? ? ? : 49d4e02d-f7e6-ec4a-235e-16bcddb64a99
? ? vm-uuid ( RO): 89577946-f487-76a6-387e-86daaca15bef
?vm-name-label ( RO): UCA-VM-10.24
? ? vdi-uuid ( RO): 6ee51222-6ae4-4614-b337-1b22bf340098
? ? ?empty ( RO): false
? ? ?device ( RO):?hdb
可以看出上面的VBD其實將第2節中的VDI和UCA-VM-10.24這個虛擬機做了個映射。也就是說如果我將上圖中的disk1這個VDI attach到另一個主機如SQL Server,則VDI不變,而你用xe vbd-list 這個命令查看UCA-VM-10.24這個主機時,會發現少了一個VBD,而SQL Server主機會多了一個VBD。
?知道了如上的原理,接下來添加virtual disk就好辦了,步驟很簡單:
1、在某個SR下面建新的vdi,命名為disk3,其實就是創建虛擬機的硬盤文件
xe vdi-create name-label=disk3 type=user sr-uuid=0554628e-448d-fbdf-4544-04cc4f390529 virtual-size=4GiB ?
5b4dfa6a-17f0-4207-b7f2-9d205f4517a9--新的VDI的UUID
2、利用新得到的vdi號創建新的vbd,其實就是為上一步創建的硬盤文件和虛擬機之間做映射
[root@xs-10 ~]# xe vbd-create vdi-uuid=5b4dfa6a-17f0-4207-b7f2-9d205f4517a9 device=5 vm-uuid=89577946-f487-76a6-387e-86daaca15bef ?
9bcad328-4006-fb95-eea8-87de94bf0ff8
3、將創建的vbd plug即可。
[root@xs-10 ~]# xe vbd-plug uuid=9bcad328-4006-fb95-eea8-87de94bf0ff8 ?
You attempted an operation on a VM which requires PV drivers to be installed but the drivers were not detected. ?
vm: 89577946-f487-76a6-387e-86daaca15bef (UCA-VM-10.24)
本文轉自不要超過24個字符博客51CTO博客,原文鏈接http://blog.51cto.com/cstsncv/1929082如需轉載請自行聯系原作者
cstsncv
總結
以上是生活随笔為你收集整理的xenserver下的SR,VDI,VBD的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Error:Cannot set the
- 下一篇: CloudStack4.1.1升级Clo