本文為你詳細介紹在Linux KVM上創建一個ooRexx構建環境 ,為你在學習在Linux KVM上創建一個ooRexx構建環境時起一定的作用。
使用ooRexx開發隨需應變的軟件構建服務,ooRexx使用Linux內核虛擬機(KVM)提升性能。KVM 充當客戶操作系統的主機,為用戶構建目標軟件。Apache Web 服務器控制構建並存儲結果,供用戶在以後檢索結果。通過本文了解如何設置構建服務器和創建客戶機,定制構建請求,以及組織和訪問構建結果。
最近,Open Object Rexx 項目將其舊的隨需應變軟件構建系統從由 VMware 托管的客戶操作系統轉移到由 Linux Kernel Virtual Machine (KVM) 托管的客戶機上。這一改變提供了一個更加高效的構建環境,並且為用戶減少了構建時間。
ooRexx 軟件構建系統允許開發人員針對多個基於 x86 的平台和操作系統構建 ooRexx 軟件包。目前,受支持的客戶操作系統包括 Windows? XP (i386)、Fedora 10(i386 和 x86_64)和 Ubuntu 8.04(i386)。這些客戶操作系統為 Windows (EXE)、Fedora 和 openSUSE (RPM) 以及 Ubuntu (DEB) 生成 ooRexx 安裝和文檔包。其他基於 x86 的操作系統也將根據 ooRexx 開發人員和用戶的需求得到支持。
本文將展示如何創建自己的軟件構建系統,使用 ooRexx 開發團隊的設置作為例子,並為 ooRexx、Apache 和 Linux 開發人員提供了技巧和指導。您可以在本文結束部分 下載服務器和客戶機腳本。該系統專門用於構建 ooRexx 軟件,但是其中的概念可以應用於通用的軟件構建系統。
本系統包括以下需求:
◆需要一個 Web 接口來生成構建請求。
◆需要一個 Web 接口來檢索構建結果。
◆需要支持多客戶操作系統。
◆客戶操作系統必須執行完全自動化的構建。
◆在構建結束時,應當生成電子郵件並發送給請求用戶。
要滿足這些需求,開發團隊和我使用了一個四核的基於 Xeon 的服務器。該服務器包含 4GB 內存和 250GB 磁盤。我們選擇 Fedora 10 x86_64 發行版作為主操作系統,主要是考慮到該發行版使用的 KVM 具有良好的穩定性,並且是最新版本。選擇的硬件和軟件可能有所不同,但是主要的硬件標准是您的處理器應當具有硬件虛擬化特性 — 這是使用 KVM 的必要條件。
設置服務器
設置構建服務器的第一步是確定分區模式。我們決定將客戶操作系統的 Web 存儲和映像分離到單獨的分區中。我們為 Web 存儲分配 50GB 的硬盤,為客戶操作系統映像所在的 /var 分區分配 150GB 硬盤。其余硬盤空間被分配給 /home 分區和 /root 分區。
接下來,我們將使用 Fedora 10 x86_64 發行版安裝主操作系統。如果您要設置自己的系統,那麼執行下面的操作可以避免很多麻煩:
◆在啟動安裝之前通過機器的 BIOS 啟用硬件虛擬化功能,這樣 Fedora 將發現 KVM 是可用的。
◆執行軟件組件的定制安裝,這樣就可以選擇 Fedora 虛擬化選項。
安裝好服務器操作系統後,我們將它配置為可由客戶操作系統訪問。這包括對 Windows 客戶機啟用 Samba,以及對 Linux 客戶機啟用 NFS。這可以支持客戶機訪問構建結果分區,從而可以存儲構建文件以供用戶訪問。主要 Samba 共享和主要 NFS 導出針對所有客戶機都指向同一位置。
接下來,我們將配置 Apache Web 服務器以提供對構建請求系統(我將在 構建請求 中加以解釋)和構建結果庫的訪問。
需要確定的一項配置決策與客戶機的網絡選項有關。默認安裝被配置為對所有客戶機應用一個私有的內部網。C 類網和 DHCP 服務器一起提供,來為客戶機提供 IP 地址。另一個選擇是設置系統,以將其中一個網絡設備作為通向服務器外部網的網橋。這需要進行手動配置。您可以在 libvirt Wiki 中找到如何為服務器配置這一選項的示例。
這樣你就能在Linux KVM上創建一個ooRexx構建環境了。