Proxmox 簡易安裝與設定

proxmox

Proxmox 是一套操作上非常簡單的虛擬化系統,提供了 KVM 等級的虛擬機器建置管理以及 OpenVZ 兩種使用環境。KVM 是 Linux kernel 從底層提供的虛擬化環境,可以支援大部分 x86 架構的硬體(但 CPU 需要支援虛擬化指令集),至於 OpenVZ 則是作業系統等級的虛擬環境,有點類似於 chroot,主要是用同一作業系統提供各種不同的網站服務,基本上效能比較好但是限制稍微多了一點。兩種架構應該都算是 IaaS 的服務。

現在的最新版本是 Proxmox VE3.1,釋出也一段時間了,相信網路上也可以找到不少資源。由於 Proxmox 主要是以 Debian 為基本建立的,因此許多熟悉的指令像是 apt-get 都可以直接套用,熟悉 Ubuntu 的朋友想必操作上絕對沒有問題。

這一次處理 中央網路開源社 的伺服器,由於資源不多因此我們只有一台電腦與一個 IP,要在這種克難的環境下搞出虛擬平台稍微複雜了點。VMWare 之流的軟體硬體支援度不好,Xen 的操作使用又太複雜,再加上沒用過 Proxmox,因此就決定來試試看

安裝

安裝的部份非常簡單,放入光碟一步一步照著教學操作就可以安裝完成。詳細的圖文教學可以參照最底下的連結。 在這邊我們要設定一個主機的 IP 位址方便未來連線。

使用

安裝完之後,變可以透過 https://[your IP]:8006 進入主機的 web 管理介面。這介面真的美觀好用到令人感動 XD

設定網路

基本上 Proxmox 就是一個完整的 Linux,因此需要做的事情也跟在 Linux 上架設 NAT 伺服器很像。 因為我們只有一個外網 IP,因此外網若要進入虛擬機的話,要透過 port-forwarding 才能進行,以下是網路設定檔:

proxy_arp 是告訴 kernel 回應非自己 mac 的 ARP request。

vmbr0 是虛擬機與實體機共用的虛擬網卡,IP 設定為 10.10.10.1。 最後面兩條規則是透過 port-forwarding 將連線到外部 IP 的 port 10122 重導到內網 10.10.10.101 的 port 22,如此一來外網也可以連接到虛擬機的內部網路。這個部份比較麻煩的就是若有更多機器要設定,就要自己來手動編輯檔案。

建立虛擬機

從無到有建立虛擬機非常簡單,照著精靈做相信大家都會,按右上角的 Create VM 即可。虛擬機的 console 是使用 Java 的 vnc,若沒有 Java 請去安裝。

ISO 預設會放在 /var/lib/vz/templates/iso 這個資料夾,若是有 FreeBSD 安裝光碟之類的需要共享可以丟到這裡。

比較需要注意的是,網路要選 bridge mode,並且橋接到外部的 vmbr0 這張網卡上,這樣封包才出的去。

bridge

建立完虛擬機之後,按右上角的 console 可以進入終端機,在這裡可以直接安裝 guest OS。網路設定為固定 IP,本例為 10.10.10.2/255.255.255.0,gateway 為 10.10.10.1 (Proxmox 的 vmbr0 網卡)。

Guest os 安裝好之後,理論上就可以正常連線了 😀

建立 template

一旦安裝好虛擬主機,我們可以把他轉換為樣板,供日後大量複製使用。要做這件事非常簡單,對著虛擬機按右鍵選「Convert to template」即可。要注意的是一旦轉換到 template 將無法還原。

建立 OpenVZ Container

OpenVZ Container 的建立就簡單許多,網路上也有很多樣板可以參考,可以參考官方的 收集。基本上只要設定好網址打開就是一個 web application 可以用了,超級方便的!

References

Proxmox VE 3安裝與建立OpenVZ虛擬機器 Proxmox VE建立虛擬區域網路 (VLAN) 方案 (1) 方案說明