OpenVZ 和 KVM 等等,價錢已經與寄存服務不相伯仲,若果你有超過三、四個寄存網站,總價格幾乎肯定超過一個 VPS,但是一台 VPS 卻可以容納無限個網站,無限個帳號,無限個數據庫,甚至有獨立的 IP 地址,容許你自行安裝網絡服務,例如域名伺服器 (DNS),當然,條件是不超越硬件資源的限制。由此可見,使用 VPS 更合符經濟原則。
選購 VPS 的時候,一個很重要但很多人忽略的因素,是服務供應商使用甚麼虛擬化技術,最常見的技術包括 OpenVZ、KVM、Xen 和 Virtuozzo。
OpenVZ 藉修改 Linux 內核實現虛擬化,每一台虛擬伺服器的操作系統必定與實體主機的相同,所以它只能提供 Linux 虛擬伺服器,使用 OpenVZ 的服務供應商一般不會有很多操作系統的選擇給顧客。這樣的設計也有好處,就是虛擬化所佔用的額外資源比較少,每一台虛擬主機的效能也較高。OpenVZ 另一個特點是記憶體的分配很具彈性,一台虛擬伺服器的記憶體可以與其他虛擬伺服器共享,或者作為其他虛擬伺服器的緩存。很多服務供應商利用 OpenVZ 這種彈性「超賣」實體主機的資源,這是 OpenVZ 的 VPS 通常比較便宜的原因,但是若果某一個虛擬伺服器突然吞噬大量記憶體,其他虛擬伺服器會即時受到影響。
與 OpenVZ 不同,KVM 的虛擬技術容許每一台虛擬伺服器運行不通的操作系統,KVM 給它們虛擬的硬件設備包括顯示卡、音效卡、網絡卡,甚至虛擬的 BIOS。虛擬伺服器之間完全獨立,不像 OpenVZ 那樣一台不爭氣的伺服器會拖垮所有其他伺服器。
Xen 所用技術與 KVM 類似,它有一項特點,就是可以把整台虛擬伺服器從一台實體主機搬到另一台實體主機,期間虛擬伺服器無須停止運作(嚴格來說中途會有大約半秒停頓,但亦足以令人嘆服,不是嗎?),對於需要從一台低階伺服器「搬家」到一台高階伺服器的用戶,這是在非常方便,所以很多雲端伺服器 (cloud server) 服務供應商都使用 Xen,例如 Amazon EC2 和 Rackspace Cloud。
Virtuozzo 跟上述三種方案最大的不同,是它屬於操作系統層次的虛擬技術(而非內核或硬件層次),所以每一台虛擬伺服器都運行相同的操作系統,相同的內核,相同的硬件,它最常用於網站寄存服務供應商。這種層次的虛擬技術容許整台伺服器「搬家」而無需中斷服務,虛擬技術所佔用的額外資源也十分少。Virtuozzo 另一與別不同的是它並非開源免費軟件,而是 Parallel Inc. 的付費產品(也就是編寫 Plesk Control Panel 那間公司)。
VPS 服務分為「自主管理」(unmanaged) 和「專業管理」(managed) 兩種,價錢差別甚大,有必要搞清楚兩者的分別。
自主管理的意思就是服務供應商給你一台虛擬伺服器,一個操控界面,其他的事便不管了。你要自行透過控制界面安裝操作系統,設定初始的超級用戶密碼,然後再自行安裝各式各樣的應用程式,執行各種配置和優化的工作。過程中若遇到甚麼問題,除非是關於虛擬伺服器的,否則服務供應商沒有義務提供協助。部份供應商會提供一個預先安裝好的操作系統,內有一般常見的應用程式,並提供一個系統管理控制台,例如 CPanel 或 Plesk Control Panel 等等,讓初學者比較容易上手,但此後增減軟件、系統升級、維護、監控、備份等等工作,都要自行負責。
專業管理剛好相反,整個系統由專業人員安裝和設定好,並定期進行升級和維護,恆常的監控和管理也有專人負責,你遇到甚麼問題也可以向他們請教。如此五星級的服務當然有代價,所以價錢比自主管理的 VPS 貴很多。
該怎樣選擇呢?我估計閱讀這個網站的人跟我一樣都是 IT 人,而且是優秀的 IT 人,優秀的人有一個特點,就是不喜歡事事被人安排妥當:中午十二時吃午飯,下午三時半吃三文治,黃昏六時半吃晚飯,晚上十時上床睡覺,半分出不得差錯。我們喜歡隨自己的心意,做自己喜歡的事,喜歡嘗試新的事物,喜歡涉獵最先進的技術,喜歡弄清楚事情的來龍去脈,享受無中生有的樂趣,撥弄配置檔案從而控制系統的運作,也滿足我們心靈深處的權力慾。最後,沒有人願意跟錢作對吧。所以,我推薦選擇自主管理的 VPS。
這個問題不好回答,CentOS、Ubuntu、SuSE、Debian、Slackware 等等各有特色,也各有支持者。不過 VPS 一般是作為伺服器,而非桌面電腦或工作站,所以應該考慮那些以伺服器為應用目標的 Linux 版本,包括 Redhat 系列的 Redhat Enterprise Linux (RHEL) 和 CentOS,Ubuntu Server Edition、Debian 和 SuSE Linux Enterprise Server (SLES)。
我推薦 CentOS,RHEL 是 Redhat 的企業級 Linux 系統,不過是收費軟件,鑒於 Linux 的開放源碼政策,Redhat 必須把 RHEL 的源碼公開,於是 CentOS 把 RHEL 的源碼重新包裝,唯一的改動就是把系統內的 RHEL 品牌改為 CentOS,所以兩者功能上可說毫無分別。RHEL 和 CentOS 最為人詬病的是軟件的更新速度不夠快,官方軟件庫的東西往往落後最新的版本一大截,例如現在最新的 PHP 版本是 5.5.11,但是官方軟件庫的 PHP 只是 5.3.3,即使只看 PHP 5.3,這系列最新的版本已到了 5.3.28,可見官方軟件庫如何落後。不過網絡上有很多第三方軟件庫提供較新版本的軟件,所以問題不算很大。不過 RHEL 和 CentOS 的安全性和穩定性卻是任何伺服器最需要的,穩健的防火牆和 SELinux 從安裝完成那一刻便開始保護伺服器。