虛擬機器包 OVF和OVA的區別

2021-06-20 07:24:39 字數 3246 閱讀 3548

開源虛擬化格式ovf檔案是一種開源的檔案規範,它描述了乙個開源、安全、有效、可拓展的可攜式虛擬打包以及軟體分布格式,它一般有幾個部分組成,分別是ovf檔案、mf檔案、cert檔案、vmdk檔案和iso檔案。

簡單來說,ovf檔案可以抽象看做乙個由規定的幾個不同型別的檔案所組成的檔案包,這個檔案包可作為以後不同虛擬機器之間乙個標準可靠的虛擬檔案格式,實現不同虛擬機器之間的通用性。每個型別的檔案都有各自的作用,相輔相成。

下面我們逐一做個介紹:

1)ovf 檔案:

a.簡介

ovf檔案在ovf檔案格式中起到了舉足輕重的作用,他的存在是保證了映象檔案vmdk,資源檔案iso與虛擬機器domain配置之間的正確對應,作用就如同vmware中的vmx格式、以及xen、kvm中的xml 配置檔案。

b.內容詳細分析

我們以乙個ovftool生成的ovf為例通過對內容的研究可知。

前兩行是對ovf檔案的一些基本資訊作簡要說明主要內容包括了xml的版本,編碼規範以及建立檔案時的一些基本資訊:

<?xml version=

"1.0"

encoding=

"utf-8"

?>     

在基本資訊之後,會有乙個envelope型別的說明,主要是規定了ovf檔案所用規範的一些基本定義位置以及基本變數內容的宣告。比如這裡xmlns:vmw內容就是對應後面的vmw:

"build-467744"

xmlns=

""xmlns:cim=

""xmlns:ovf=

""xmlns:rasd=

""xmlns:vmw=

""xmlns:vssd=

""xmlns:xsi=

"">   

一般來說,以上的內容只跟我們所用ovf格式的具體版本和提供商有關,在版本相同的情況下(也就是使用工具相同的情況下)以上內容並不會有什麼區別。真正控制ovf檔案工作的內容是後面部分,它和具體虛機配置緊密相關,在vmware中主要是靠vmx檔案進行轉換。

主要內容包括:

1)references型別

"gzip"

ovf:href=

"winxp2-disk1.vmdk.gz"

ovf:id=

"file1"

ovf:size=

"573898140"

/>   

"gzip"

ovf:href=

"winxp2-file1.iso.gz"

ovf:id=

"file2"

ovf:size=

"214903055"

/>   

以上兩句宣告了兩個映象分別對應ovf檔案包中的vmdk映象檔案以及iso資源檔案並用file1,file2予以區別。

2)disksection型別

virtual diskinformation

"40"

ovf:capacityallocationunits=

"byte * 2^30"

ovf:diskid=

"vmdisk1"

ovf:fileref=

"file1"

ovf:format=

""ovf:populatedsize=

"1275461632"

/>   

disksection>  

在宣告了vmdk檔案為file1之後通過對disksection的配置,確定讓vmdk作為虛機的硬碟映象。

3)網路配置模組networksection

thelist of logical networks

"bridged"

>   

the bridgednetwork

4)與虛機機內容相關的配置模組

"vm"

>   

a virtualmachine

windows xpprofessional

"67"

vmw:ostype=

"winxpproguest"

>   

the kind ofinstalled guest operating system

virtual hardwarerequirements

virtual hardware family   

0   

windows xpprofessional   

vmx-

07   

hertz * 10^

6   

number of virtual cpus   

1virtual cpu(s)   

1   

3   

1   

"false"

vmw:key=

"cpuhotaddenabled"

vmw:value=

"false"

/>   

上述文件資訊主要是對各種vmx中的資訊進行歸類,比如說virtualsystem宣告了hypervisor環境為vmware,同時宣告的還有虛擬機器的domain,系統環境、各種cpu配置等。

2)mf檔案

a.簡介

mf檔案主要是一些檔案sha的集合,他主要起到的作用是防止映象檔案被非法使用者篡改,通過對例項的比對我們可以得出,mf檔案中各個檔案的sha值是對該檔案的整個檔案內容進行的內容摘要。

b.例項內容如下:

sha1(winxp_2.ovf)=87a7ef2d0d130d58b96905377ae3637d2de15260   

sha1(winxp_2-disk1.vmdk.gz)=597f3effb12b77898f9dc2e92b836211c30b95b1   

sha1(winxp_2-file1.iso.gz)=d59d519da9663c7245678efe08c21aa86cf96655  

3).cert檔案

a.詳細介紹

從對mf檔案的分析我們知道了,mf檔案主要作用是為了驗證各種虛機相關配置是否被惡意篡改,但是如何保證mf檔案本身的合法性呢?於是我們需要.cert檔案來加以補充。cert檔案主要分為2個部分,一部分是mf檔案的摘要,而另一部分是合法證書的證書內容。通過證書的驗證來實現驗證mf檔案合法性的驗證,進一步證明整個ovf檔案包的合法性。cert證書的生成主要依賴pki,可以通過openssl來實現。

4).vmdk檔案和iso檔案

這兩種檔案屬於同一類,在ovf中都是資源類,主要就是具體的映象資源。不同的區別是vmdk檔案內容主要是使用者作業系統os的內容,而iso是光碟機一類的內容。

vmdk格式換成OVF格式(虛擬機器)

vmware的ovf工具。也可以試試ovftoolkit,具體操作可以網上搜尋一下。如果你安裝vmware workstation的話,它ovftool.exe檔案就在你的安裝程式的ovftool目錄下。如何使用ovftool工具 d program files vmware ovftool ovf...

匯入ova虛擬機器無法聯網的問題

從一台電腦上將ubuntu18.0.4匯出為.ova格式,然後匯入到另外一台電腦的virtualbox上,無法聯網了。etc network inte ces 修改現在對應的ip 閘道器等資訊,重啟電腦還是不能。ping ip是ok的,簡單推測應該是nameserver的問題。nameserver在...

虛擬機器和容器的區別

首先放一張圖,對虛擬機器和容器做乙個整體的對比。隨著伺服器的能力和容量的逐漸增加,而乙個機器上只能一次執行一種作業系統。因此虛擬機器應時而生,在物理伺服器的上層執行軟體模擬特定的硬體系統。hypervisor位於硬體和系統之間,是建立虛擬機器必須的乙個部分。每個虛擬機器中都執行著乙個系統。安裝不同系...