:::

Proxmox VE的虛擬應用樣板 (Virtual Appliance Templates)

11月 19, 2011 , 3 Comments Edit Copy Download

image

Proxmox VE的OpenVZ虛擬應用樣板提供了各種可以馬上執行的應用,就像是VMware的虛擬應用程式(Virtual Appliance)一樣,但使用的技術並不相同。這篇文章簡介Proxmox VE 1.8版安裝虛擬應用樣板所使用的OpenVZ技術,然後簡單介紹虛擬應用樣板的用途,最後則是以Joomla跟Moodle為例介紹安裝與使用的方式。


Proxmox VE、OpenVZ與應用樣板

Proxmox VE是一套開放原始碼的虛擬機器運作環境。他的特色在於結合了OpenVZ容器虛擬化技術與KVM全虛擬化技術,可以依照運作環境需求來選擇使用的技術。

OpenVZ容器虛擬化技術是建立一個「容器」(container),將Linux的程序與檔案全部集中在該容器中,成為獨立的一個Linux運作環境,進而模擬出一台Linux的虛擬電腦。容器虛擬化的運作方式彷彿是在Linux中執行一個Linux使用的程序,因此虛擬化的效能損耗相當的低。根據維基百科對OpenVZ的介紹,在一台768MB記憶的硬體中可以同時執行120個提供Apache服務的網站。

然而OpenVZ的容器虛擬化技術也限制於只能使用Linux作業系統。而且安裝時並不是使用一般的Linux安裝光碟,是需要使用經過特殊處理的樣板。在OpenVZ網站中稱之的樣板(template),只是建立了單純的CentOS、Fedora、Debian、SuSE、Ubuntu等Linux作業系統。而Proxmox把這些樣板加上了各種預先安裝好的服務(像是Joomla網站),而成為了虛擬應用樣板(Virtual Appliance Template)。

這些虛擬樣板的資料最後會被壓縮誠一個tar.gz的壓縮檔,使用者只要透過特定指令與步驟,就能快速在OpenVZ的環境(包括Proxmox VE)中從樣板建立一個馬上可以使用的虛擬機器。而Proxmox VE把這套流程做得更簡單、更容易上手,下面文章中將會說明詳細的安裝步驟。

應用樣板來源

目前就我知道的應用樣板來源共有三處:

  • Proxmox VE預先提供的應用樣板:應用樣板數量較少,但都是常用的服務。
  • Proxmox VE Wiki提供的完整應用樣板:完整且詳細的應用樣板,羅列了各式各樣的好用服務。這邊也含括了Promxox VE預先提供的應用樣板。
  • OpenVZ的作業系統樣板:只有純作業系統,但有各種不同版本可供下載。

以下主要介紹的是Proxmox VE Wiki提供的完整應用樣板。

Proxmox VE預先提供的應用樣板

image

Proxmox VE wiki的Get Virtual Appliances網頁中提供了許多虛擬應用樣板可供人免費下載使用。除了作業系統之外,具有特殊應用的樣板就有21種(排除僅是版本不同的樣板,以及不考慮KVM形式)。還有其他Proxmox VE推薦的2種。當然,這些應用本身也大多數都是開放原始碼軟體,請大家安心使用。

為了方便大家了解到底有哪些樣板可以使用,以下我把這26個樣板分成五種類別來介紹:

內容管理平台(Content Management System)
  • Joomla!:簡單易用的內容管理平台,現在台灣十分流行使用Joomla架設網站。
  • Wordpress:世界上最知名的部落格平台。
  • Drupal (Acquia Drupal):非常彈性具有的內容管理平台。
  • MediaWiki (v1.16x):最知名的維基軟體。維基百科就是用MediaWiki架設。
  • SimpleGroupWare:具備知識管理功能的內容管理系統。可以處理文件、e-mail、日曆、聯絡、工作、通訊錄等等多種功能。簡單容易使用。
基礎平台
  • BlueOnyx:作為架設網站的基礎,提供網頁GUI介面,可設定FTP等系統服務。(可惜似乎是不能讓Proxmox VE使用)
  • eyeOS:雲端桌面系統。你可以透過桌面電腦或行動裝置連到eyeOS進行文件管理、處理,或把它當作一個網路硬碟使用。
  • Proxmox Mail Gateway:Proxmox公司出品的郵件伺服器。
  • Zimbra:替代MS Exchange的郵件伺服器。
  • DebPBX (FreePBX, PBX in a Flash):VoIP網路電話。
  • CYAN Secure Web:代理伺服器(Proxy)。
企業管理與電腦資產管理
商務平台
其他應用
  • Moodle:數位學習使用的課程管理平台。
  • Care2x:醫院資訊管理應用。

安裝虛擬裝置樣板

在Proxmox VE安裝虛擬裝置樣板的方式有兩種,一種是在Proxmox VE提供的預設列表中直接下載安裝,另一種是手動從其他地方下載樣板,然後上傳到Proxmox VE中。

從Proxmox VE直接安裝樣板:以Joomla為例

Proxmox VE預設提供了一些常用的樣板,讓我們可以輕易地下載、取用。這個步驟真的很簡單,我非常喜歡他這邊的高度整合化功能。接著我以Joomla為例,介紹直接安裝樣板的操作過程。

image

在Proxmox VE安裝完成之後,你可以從左邊導覽列的VM Manager –> Appliance Templates –> Download中找到Proxmox VE提供的預設列表。該列表中將虛擬應用樣板分成四類:已認證的樣板(Certified Appliances)、管理用途的樣板 (admin)、作業系統樣板(system)、網站用途樣板(www)。

image

點入任一個樣板之後,你可以看到樣板的詳細訊息。上圖是點進Joomla樣板的介紹,裡面包括了對Joomla的簡介、詳細資訊連結、版本、分類、維護者、檔案名稱、MD5查核碼。

確定要使用該樣板的話,點下「start download」就可以開始下載該樣板的檔案。

2011-11-19_150328 download template

網頁中你可以看到Proxmox VE下載樣板的進度。 Joomla的樣檔案網址是http://download.proxmox.com/appliances/www/debian-6.0-joomla_1.6-3_i386.tar.gz,檔案大小為174MB。就算是我這邊學術網路的速度,下載也要等上好一陣子。後面的時間3m35s是剩餘的時間。

image

終於下載完啦。

有時候他這個訊息會跑到停住,這可能就是AJAX沒有寫好,讓他讀取中斷了。不過實際上Proxmox VE還是有在下載的,移到其他網頁再切回Download,就可以看到訊息繼續跑了。

image

下載完成之後,你就可以在Local頁面看到剛剛下載的樣板。稍後在建立新的虛擬機器時,就可以用該樣板來快速建立Joomla網站了。

手動安裝樣板:以Moodle為例

如果你要的虛擬裝置樣板並不在Proxmox VE的預設清單中,那你也可以自行下載樣板檔案,再上傳到Proxmox VE中。以下以Moodle為例說明操作步驟。

image

在上面介紹的虛擬應用樣板網頁中,你都可以找到下載tar.gz樣板檔案的連結。以Moodle來說就是http://www.sacollege.net/files/appliances/debian-5.0-moodle_1.9.9p-1_i386.tar.gz (190MB),請先將該檔案下載到你的電腦吧。雖然tar.gz是打包壓縮檔,不過請不要解壓縮這檔案喔,tar.gz的打包壓縮檔就是虛擬應用樣板本身了。

image

接著再回到Proxmox VE中,進入VM Manager –> Appliance Templates –> Local頁面中,在Upload File欄位裡選擇剛剛下載的樣板檔案,然後按下「upload」上傳。

2011-11-19_153634 please wait

等待樣板檔案上傳。Google Chrome會在左下角顯示上傳的進度。

image

上傳完成囉。

image

在Local頁面的OpenVZ Templates列表中就會看到剛剛上傳的Moodle樣板檔案。接下來新增虛擬機器時,就可以用該樣板快速建立Moodle網站囉。

以SSH上傳樣板到Proxmox VE

有時候網路實在是太不穩,你怎樣都無法用網頁介面上傳資料到Proxmox VE。這時候你可以考慮透過SSH的SFTP上傳樣板檔案。

image

Proxmox VE安裝完成之後,除了網頁管理介面之外,它也提供了SSH的服務。預設連接埠22,以root跟安裝時的密碼登入。我通常會用FileZilla以SFTP連到Proxmox VE管理來大型檔案。

Proxmox VE擺設樣板的路徑為「/var/lib/vz/template/cache/」,你也可以在該路徑底下看到Proxmox VE已經下載的樣板喔。

使用樣板建立虛擬機器

image

當你已經將樣板儲存到Proxmox VE之後,在VM Manager –> Virtual Machines –> Create頁面中,你就可以從Template選擇要使用的樣板。上圖可以看到我剛剛上傳的Joomla跟Moodle都在列表中。然後其他參數設定設定,你就可以建立一台具備Joomla或Moodle網站功能的虛擬機器囉。

2011-11-19_155257 joomla - mask

至於要怎麼使用樣板呢?大部分網站服務為主的樣板,架設完成之後,只要以該虛擬機器的IP為網址,直接用瀏覽器開啟,你就可以看到虛擬應用樣板的服務。但如果不是網站服務的樣板,那你就要從詳細介紹中看看如何使用的說明囉。


結語:虛擬應用是新時代趨勢

對於Proxmox VE在使用OpenVZ必須要使用樣板建立虛擬機器這點,其實很多人不太能習慣這個步驟

大多數安裝電腦的人,幾乎都是先接手一台沒有作業系統的空機器,從光碟開始一步一步慢慢地安裝,然後再安裝網站伺服器、資料庫,配置網站的程式碼,花了許多時間才能夠架設出一台可以用的伺服器。

即使是會使用VirtualBox或VMware等全虛擬化技術的人,也都會習慣先建立一個空的虛擬機器,配置好光碟機、網路卡等虛擬硬體設備,再掛載ISO光碟映像檔。然後就跟一般安裝電腦一樣,從光碟一步一步安裝起。

然而科技演進到現代,不論是Proxmox VE的虛擬應用樣板,或是VMware的虛擬應用,他們都是想要讓架設虛擬機器就像是在電腦上安裝應用程式一樣簡單。仔細看看上述我的介紹,整個架設Joomla的動作也不過是 1. 下載樣板 2. 安裝樣板 3. 建立虛擬機器 4. 開始使用,就這樣簡單。而且不管是Joomla還是Moodle,他們都可以用同樣的方式來架設,你不需要因為使用不同的系統而學習另一種架設手續。

時代的趨勢就是讓人們更容易使用科技。即使是伺服器服務這麼複雜的東西,Proxmox VE也要讓它簡單能夠使用。這也是我喜愛Proxmox VE的地方。

如何建立自己特製的樣板

雖然要在Proxmox VE使用虛擬應用樣板很簡單,但要從頭建立自訂功能的樣板,可就沒這麼容易了。

OpenVZ介紹了如何從實體電腦(physical)轉換到容器(container,也就是此篇文章講的樣板template)。轉換手續非常地多,似乎並不容易使用。

Proxmox VE介紹了以Debian作業系統建立虛擬應用樣板的Debian Appliance Builder,我還沒嘗試過,不過看起來並不複雜。

還有一種方式,就是直接「複製」已經建立好的OpenVZ虛擬機器。這只要使用vzdump匯出與vzrestore還原即可,操作方式可以看OpenVZ的說明。改天有空的時候我再來介紹如何在Proxmox VE中進行這樣的操作。

總共3 則留言 ( 我要發問 , 隱藏留言 顯示留言 )

  1. 你好,最近開始在玩Proxmox ,不過有個問題很困擾,在wiki上的Virtual Appliance 提供的下載連結,幾乎都失效了~
    寫信去官方反應也沒有回應(不知道那個wiki是不是官方建立的)
    不曉得還有其他推薦的templates 下載網址嗎?

    回覆刪除
  2. Proxmox VE預先提供的應用樣板:應用樣板數量較少,但都是常用的作業系統。
    http://download.proxmox.com/appliances/system/

    Proxmox VE Wiki提供的完整應用樣板:完整且詳細的應用樣板,羅列了各式各樣的好用服務。這邊也含括了Promxox VE預先提供的應用樣板。
    http://pve.proxmox.com/wiki/Category:Virtual_Appliances

    OpenVZ的作業系統樣板:只有純作業系統,但有各種不同版本可供下載。
    http://wiki.openvz.org/Download/template/precreated

    TurnkeyLinux,虛擬應用範本的大站
    https://www.turnkeylinux.org/

    回覆刪除