虛擬應用入門

虛擬機正接管着整個世界。就其本身來講,虛擬機只是一個定義了不同資源的一種容器,這些資源包括內存、磁盤空間、處理器以及網卡,並且負責從物理機上分配這些資源。相對於物理機來說,虛擬機需要靠軟件(操作系統和應用程序)的幫助才成爲可用。如果把虛擬機和軟件組在一起,那麼就稱爲虛擬應用(virtual appliance)。有一些完整的並且帶有專門軟件的Linux發行版被做成虛擬應用。虛擬應用的打包很簡單,所以我們絕不缺少虛擬應用,如果你知道從哪裏去找的話。

部署(deploy)一個預安裝並且事先配置好應用要遠簡單于從頭準備系統、安裝應用然後將其配置成功。不過使用簡單也有其缺點,那就是虛擬應用的大小會數倍於應用本身的大小,主要是因爲應用會同時綁定支撐其運行的操作系統。當這種應用流行起來,開發人員有可能會將他們10MB的程序與700MB的發行版綁定起來,然後發佈超過700MB的一個應用。

今天,虛擬應用已經真實的成爲軟件發行的一種方式並且衍生出一種新的商業類型--虛擬應用發行商。與軟件商和虛擬軟件公司一道,虛擬應用發行商努力去實現支撐應用的發行版的效率。例如,流行的bug跟蹤軟件Bugzilla可以從Mozilla的站點下載,作爲tar包只有2.4MB的大小,也可以從虛擬應用發行商Jumpbox那裏得到150MB的虛擬應用。這差不多是軟件本身的62.6倍,但是在這150MB裏,同時包括了操作系統,非常精簡併且優化來只運行特定的程序。

尋找虛擬應用

某些軟件商除了發行可供下載的常規的軟件包之外,還會發行一種即可可用的應用,比如TrixBox, DimDim, 和 Ubuntu。所以,尋找特定虛擬應用的第一個地方就是軟件商本身。

並且,有很多站點提供流行的應用和發行版。一個流行的虛擬應用的地方是VMware's virtual marketplace。那裏列出來的大部分應用是可免費下載的。那些需要付費的應用要麼是綁定了專有軟件,要麼是被VMWare認證了的可供企業使用的。這裏列出的所有應用都是爲VMWare製作的,使用的是VMWare的虛擬技術,所以你需要一個免費的VMware Player來運行這些應用。

由於Vmware是最流行的虛擬軟件,有一些個人網站會爲其發佈一些虛擬應用,通常爲某個特定的發行版或者一類特定的發行版製作。例如VMwhere serves的 Gentoo 和 Slackware 應用, ThoughtPolice 有 CentOS, Debian, Fedora, Ubuntu, 和 FreeBSD 版本的應用, Jcinacio 有所有Ubuntu版本的應用, VMachines 有desktop, server, 和 防火牆/安全相關的發行版的應用。

VMware 可能是最流行的虛擬軟件,但是並不意味着就是唯一的。你也可以找到爲其他虛擬軟件比如 XenVirtualBox、 和 QEMU準備的虛擬應用。

Xen 是一個流行的開源的虛擬機監控器或者說hypervisor。你可以在Jailtime.org找到一些修改後可以運行在Xen的Linux發行版。這個站點有主流發行版的32位版本,包括 Debian、CentOS、Fedora、Gentoo、Slackware 和 Ubuntu,還有其中一些的64位版本。

另一個流行的虛擬軟件是 VirtualBox,由 Innotek 開發,最近被 Sun 收購。 VirtualBox 有一個功能受限的開源版本的客戶端,不過全功能的客戶端也可以免費下載。你需要其中的一個版本來運行VirtualBox的應用。

有一些站點發布不同的Linux發行版的 VirtualBox 應用。在HelpdeskLive你可以一些流行發行版 (Fedora, Ubuntu, 等等)的應用,也可以找到一些定製的發行版的應用,比如Ubuntu Studio with Cinelerra 和 GNOME CentOS 5 with GCC.。veeDee-Eyes 有所有發行版的修改過的和原始的版本,也包含他們的alpha和beta版本。你也可以在SourceForge.net的 VirtualBox Images project 找到很多發行版的應用。

在 VMware, VirtualBox, Xen, 以及其他類似的軟件之前有一個 QEMU, 這是一個開源的處理器仿真器。與它的操縱組件 KQEMU 組合在一起,在那些喜歡100%開源的人當中頗爲流行。如果你打算用QMENU測試Linux或*BSD發行版,可以到 FreeOsZoo。這個站點提供70個即時可用的基於不同發行版的應用,包括新的、老的、全功能的和Live發行版。你需要QMNEU來運行這些應用,得到QMENU的最好的地方就是你的發行版的軟件倉庫。

如果你在學校或者單位使用 Microsoft Windows,卻又想運行Linux,可以看一看Bagvapp 的爲Windows宿主優化過的Linux發行版。這個站點列出了很多的基於大大小小的Linux發行版的應用,這些發行版有 Fedora、Ubuntu、Debian、Slackware、openSUSE、Mandriva、CentOS、Pardus、Vector Linux 和 Xubuntu。所有的 Bagvapp 應用都是免費的,但是隻能在 VMware Player 中運行。

如果你是用的是 Mac,Parallels 有大量的應用可供選擇,這些應用包含不同的Linux發行版,開發套裝,服務器和通信軟件。不過 Parallels 是專有和商業的,有Linux下的Workstation的試用版可供下載。

正如你所看到的,對於給虛擬產品來說,除了基於VMWare的,並沒有其他太多的基於特定應用的虛擬應用。不過有很多應用提供商提供能在不同虛擬軟件上運行的應用。其中一個是 Virtual Appliances,具有4個高效率的 stack,用來部署流行的部署環境,包括 Tomcat、Linux-Apache-MySQL-PHP、Linux-Apache-PostegreSQL-PHP 和 Cacti,以此來創建軟件。這些 stack 基於Ubuntu 的 JeOS (Just enough Operating System) 創建,有 VMware、Xen、Virtual Iron和 Microsoft's Virtual PC 的版本。

還有就是Jumpbox,也很流行,實際上被看做部署開源的內容管理系統的最好的方式。在它的Web站點上有着幾乎所有類型的開源軟件的應用,例如 WordPress、Joomla!、Bugzilla、Mantis、Drupal、Alfresco、SugarCRM、OTRS、Redmine 等等。最棒的地方是同一個應用可以運行在不同的虛擬平臺上。有針對 VMWare、Parallels、Microsoft Virtual PC/Server、Virtual Iron 和 Xen 的版本可供免費下載。

應用的轉換

假設你已經針對你喜好的虛擬軟件下載了上面列出的某一個虛擬應用,並且要用它建立和測試網絡或者部署網絡服務。如果你又要用另一種虛擬軟件,又該怎樣呢?你可能會找到,不過也許找不到對應新的虛擬軟件的應用版本,那麼你針對這個應用所做的配置和定製又該如何呢?

遷移應用是件麻煩事。實際上,除了VMWare,沒有其他虛擬軟件發佈了簡單易用的工具來幫助你將一個虛擬平臺上創建或者部署的應用遷移到另一個平臺上。VMware Converter 是一個免費的工具,可以幫助你將一個基於Windows的物理機轉換成一個虛擬機,也可以遷移其它第三方軟件創建的完整的虛擬機,例如 Microsoft Virtual Server、Microsoft Virtual PC、Symantec Backup Exec System Recovery、Norton Ghost 10 和 Norton Save & Restore。

雖然沒有官方的轉換工具,使用一些命令行的技巧和QMENU,我們也可以把 VMware和 QEMU 應用轉換成 VirtualBox的應用, 轉換VMware應用到Xen, 以及轉換VMware 應用到Parallels

一旦你轉換了若干應用之後,你會發現這個過程充滿痛苦而且沒有保障。不過情況會慢慢變好。由Dell、Hewlett-Packard、IBM、Microsoft、VMware 和 XenSource共同創辦的組織Distributed Management Task Force (DMTF)正在努力發佈最終版本的 開放虛擬機格式(Open Virtual Machine Format)。好處之一就是,創建在OVF裏面的應用可以運行在任何支持OVF的虛擬軟件中。 VMware已經實現了一個工具用來轉換由OVF創建的應用。不過我還沒看到有OVF格式的應用可供下載,除了VMWare的工具之外,我也暫時沒看到其他虛擬軟件商發佈可以將已有的應用與OVF互相轉換的工具。

總結

一旦你打算運行虛擬應用,你會發現幾乎所有開源應用程序都有虛擬應用,並且有不同的Linux或者*BSD發行版可供選擇。應用的範圍和數量取決於你選擇的虛擬軟件。VMWare是目前最流行的,不過 VirtualBox 和 Xen緊跟其後。 QEMU 看上去排在第四,主要在一些開發人員中流行,看上的是它的處理器仿真的特性。

有大量的虛擬軟件無關的源碼,也有可以運行在不同虛擬軟件平臺上的應用,它們要麼是單獨爲每個虛擬軟件平臺發佈,要麼是多合一的可以跨平臺運行的應用。

將虛擬應用從一個平臺轉換到另一個平臺仍然是一個灰色的地帶,雖然一些虛擬軟件商正在最後完成一個開放格式,那有助於創建提供商無關的應用。不過在此之前,你還是不得不在Internet上慢慢尋找適合你的虛擬軟件的應用。Happy hunting!

【原文鏈接】

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