第三章:以 VMware Server 部署雲端基礎平台
雲端服務系統的類別
讓我們回到最初的標題,架設雲端服務系統,那麼,何謂雲端?而哪些服務,又可以稱作雲端服務呢?簡單來說,雲端,可以看作是一個複雜龐大的網際網路,由無數多台的電腦、路由器,或是其他網路設備所串連而成的網狀組織,就如同雲,是由無數的塵埃與水滴所組成,而所謂的「雲端運算」,就是善用龐大網際網路的電腦資源,來進行高速運算;因此,以雲端計算來提供支各項服務,就可以統稱為「雲端服務」,像是一些 Web-based 的軟體、Web services,如 gmail、google Apps 等,都算是雲端服務的一環。
雲端服務,換句話說,就是利用網路上多台電腦來同時處理一件事情,以大幅增加處理與反應速度。而雲端服務所期望的最終目標,就是所有的資源都來自於網路,也就是所謂的雲端,對使用者來說,只需要可以上網的環境,與連結網路的瀏覽器即可,簡單來說,現在 Google 所提供的各種服務,就有類似雲端服務的雛型。
針對 Tim O’Reilly 大師的說法,可以概括的將雲端服務分為三種類型:
1、Utility Computing:利用虛擬運算技術(如 VMware、Xen、Hyper-V...等)來建置系統,並將系統上的各種資源,如運算能力、儲存空間,甚至是整組系統,將其當作一種商品,並提供租賃的服務,最著名的就是 Amazon 的 EC2、S3 等。
2、Platform as a Service (PaaS):直接提供服務平台,讓使用者可以直接在此平台上進行任何開發與應用,而 Google 近期開放的 Google Apps 就是一個明顯的例子。
3、Cloud-based end-user applications (SaaS):這就是一般大家最常使用的網路服務,如 gmail、Flickr 等,甚至近期流行的 Facebook 都是屬於此類別。
而對於利用 Ubuntu JeOS 所架構的雲端服務系統,則是屬於 Utility Computing 這個類別,不過在這邊,筆者所要強調的「雲端服務統」,是屬於「內部雲」,也就是只針對〝企業內部〞所提供的雲端服務。
也許各位讀者會非常納悶,這與最初雲端服務的定義不是有所不同嗎?雲端服務的定義不是架構在廣域網路之上嗎?的確,雲端服務最基本的條件,就是高速穩定的網路環境,如廣域網路,不過,反觀企業內部的區域網路,不正也提供一個高速的網路環境,而機房,不正也可以算是一塊縮小版的雲端環境,所以在此筆者試圖將雲端服務的概念,濃縮到企業的內部環境,善用企業內部的高速網路,來為員工提供各種服務系統。認識 VMware Server 的虛擬技術
要建置完善 Utility Computing 架構的雲端服務,最重要的就是一套穩定且功能強大的虛擬運算系統,除了與 Linux 系統連結性較強的 Xen 之外,就屬 VMware 最廣為大眾,甚至企業所使用,除其功能性與穩定性較佳之外,也可以算是虛擬化技術的領先者。
VMware(在本文中,以 VMware 泛指這家公司虛擬軟體的統稱)的虛擬技術,可以一虛擬化方式的不同,區分為兩大塊,全虛擬與半虛擬化技術。
全虛擬化技術(Full Virtualization),簡單來說,就是在實體機器的作業系統上面,安裝虛擬技術軟體,且藉由模擬硬體的方式,來架設虛擬機器,並建置虛擬作業系統,實體機器上得作業系統與應用程式,與虛擬系統可以分別獨立運作,也可相互溝通,全虛擬化的好處,在於硬體相容性高(因為虛擬機器上的硬體都是模擬出來的),不過也因為架構在實體作業系統之上,虛擬系統必須藉由實體作業系統來負責控制與分配實體硬體的資源,因此效能上就明顯受到侷限。
相對而言,半虛擬化技術(Para-virtualization),則是利用虛擬層(Hypervisor),讓虛擬系統可以直接利用實體硬體上的資源,不需要再透過虛擬軟體來虛擬出整套的硬體資源,而也因為少了一層作業系統,讓半虛擬化技術整體效能大大提昇。不過,雖然效能明顯提昇,但是虛擬層所支援的硬體規格卻也像對的較高,一般光華牌的電腦(泛指一般組裝或平價電腦),不見得有辦法將虛擬層安裝上去,尤其是 CPU、網路卡與硬碟組的要求更是高,其相關硬體支援資訊可參照 VMware 官方網站(此以 VMware ESXi 硬體支援為例)。
(本圖轉載自 VMware官方網站 )
而針對中小企業而言,怎樣的選擇,能達到虛擬化的最佳效益呢?筆者認為企業主管應有以下的考量:
1、最小的軟體(虛擬軟體)花費,若免費軟體能達到相同效益,更好!
2、整合並善用現有硬體資源,減少額外硬體採購與經費支出。
3、隨裝即用,減少人員訓練與適應時間。
有鑑於以上的考量,對於欲部屬雲端服務的中小企業而言,虛擬技術與虛擬軟體的選擇,就顯得格外重要。在企業內部提供雲端服務,是為了提高工作效率,而不是增加公司的負擔,更不是給資訊人員找麻煩,因此,直覺、簡易上手與最低成本支出,絕對是最優先的考量。
目前提供半虛擬化技術的虛擬軟體,比較知名的如 XenServer (Citrix 公司主導)與 VMware ESX 或是近期提供免費版本的 VMware ESXi 系列,與全虛擬技術的軟體(如 VMware Sever、VMware workstation 等)相比較,除了效能較好,硬體需求較高之外,其本身就是一套 OS ,且只提供虛擬軟體的運作,不過,除了像是微軟近期提供的 Windows Server 2008 內架構 Hyper-V (另一種虛擬軟體)之外,大多半虛擬化技術的虛擬軟體,換個角度來看,就是一套專職專工的 Linux 系統,若對於 Linux 不太熟悉的話,若是比較底層的架構發生任何問題,有時候還真不容易處理,尤其是當上面的虛擬系統提供重要服務的時候,簡直可以說是另一個災難的開始。
除此之外,為了提昇虛擬系統的效能,而採用半虛擬技術的軟體,還得要看看自家機房的伺服器夠不夠力,硬體等級夠不夠高,若以上皆非,那麼請不要輕易嘗試,不然口袋內的小朋友可是會集體出走…,不開玩笑,筆者想表達的是,為了使用半虛擬化技術而大肆採購硬體等級較高的伺服器,若是對外提供服務,那麼或許還值得,但若只是單單針對公司內部提供服務,那麼似乎有些不太合乎經濟效益,記住,我們針對的是一般中小企業的公司而言。
那麼,難道只能屈就效能較低的全虛擬技術的軟體嗎?其實不然,記住,這邊要強調的是在企業內部提供雲端服務,以全虛擬技術的虛擬軟體就足以應付大部分的服務,以筆者親身經歷來說,數年前曾與學長為某大公司架設架設微軟的訊息服務系統(也就是 Exchangr Server),在實際實機架設之前,必須先建構實驗環境,進行各種設定與測試之後,才會實際在實機上作業,當時利用三台 2U 的伺服器,硬體規格只有 2 核心(或是雙 CPU )與 2GB 的記憶體,而採用的虛擬軟體為 VMware Server 1.x 的版本,我們做了怎麼?我們在每台伺服器上面,安裝上 VMware Server ,並分別在其上各建立 4 台虛擬主機,這聽起來似乎還好,不過,在這 12 台虛擬機器上,我們建立了 2 台 Active directory (簡稱 AD ,就是微軟的目錄服務系統),其內還包含 DNS ,另外 8 台則全拿來安裝 Exchange Server ,其內還包含兩組 Cluster (叢集),聽到這邊,各位讀者應該就不會特別質疑利用全虛擬化技術的虛擬軟體的威力了。那為何選擇 VMware Server ,來作為建立雲端服務的基礎平台呢?有以下的考量:
1、只需在 VMware 官方網站註冊下載,並取得授權碼後,即可免費使用。
2、軟硬體相容性高,在 Windows 與 Linux 系統下皆可安裝,一般伺服器或個人電腦皆可安裝。
3、人性化管理介面,單一介面就可輕易設定並管理任一台虛擬主機。
其中,管理介面可以說是 VMware Server 由 1.x 版到 2.x 版最大的改變,而此介面與需付費的 VMware EXS 如出一轍,除了一般管理與設定之外,更可以讓管理者輕易的了解每一台虛擬主機的負載,這是非常重要的一項功能,而這也是在以往版本中所沒有提供的!
部署雲端服務基礎平台
部屬雲端服務基礎平台有兩個步驟,第一,安裝虛擬軟體(此以 VMware Server 為範例),第二,建立虛擬主機,其中建立虛擬主機的部份,在前兩章已經有詳細的說明,在此就不多贅述,這邊的介紹就以安裝 VMware Server 以及如何在其上建立虛擬主機為重點。
VMware Server 2.x 的軟體與授權碼的取得方式,請直接參照 VMware 官方網站的說明,只需要簡單的進行註冊就可以,在這邊就不再說明。
安裝 VMare Server 2.x 就跟安裝一般軟體一樣(在此 VMware Server 是安裝在 Windows XP 之上),基本上只要一直按下一步即可,不過在安裝過程有兩個步驟需要特別注意一下:
※ 虛擬主機資料儲存庫位置與 Web access 的 port number:
虛擬主機資料儲存庫(Stroage Path),不同以往可隨意將虛擬主機建立在任何地方, VMware Server 2.x 開始,將所有虛擬主機整合存放在一固定位置,以方便管理,所以可以指定要當作 VMware Server Data Storage 的位置,而『ServerName』,是安裝系統會自行帶出來,一般為安裝主機的電腦名稱,此外,管理介面也整合在一網頁介面中,連線、操作與設定都需要先登入此網頁,除了資訊整合之外,也可以提更安全性,避免非經授權的人員隨意更動虛擬主機,所以系統預設已經指定網頁連接專用的 HTTP 與 HTTPS 的 Port ,若非必要,保留預設值即可。
※ 輸入授權碼:
安裝完成時,系統會要求輸入授權碼,只要在『Serial Number』欄位內,輸入註冊時, VMware 官方網站所提供的授權碼即可。
安裝完成,可以直接點桌面圖示(安裝預設會建立)開啟 Web access 的介面,不過,各位讀者可能會在瀏覽器看到以下的畫面:
其實這只是瀏覽器認不得 VMware Server Web Access 的憑証,所以小小的叫了一下,只要匯入憑證,或是允許繼續瀏覽即可:
以 Firefox 3.5 為例,按下「我了解此安全風險」之後,還需要將此網址加入例外網站的名單內:
這樣往後連線就不會在出現安全性的警告訊息。
取得安全性憑證之後,馬上就會看到登入畫面,如下圖:
不過各位讀者可能會覺得非常奇怪,安裝過程沒有要求建立使用者帳號與密碼,怎會有登入介面呢?別納悶,預設的登入帳號密碼,也是VMware Server 的管理者,就是目前登入這台〝實體〞機器的使用者(或有管理權限的使用者、管理員,因為一般只有具有管理員權限的使用者才能安裝系統軟體),舉例來說,若是目前這台 Windows XP 的登入者是 Administrator ,則 VMware Server Web Access 的登入者(或管理員),就是 ADministrator 。
登入之後,就可以看到 VMware Server 完整的管理介面,如下圖:
在開始建立虛擬主機,使用 VMware Server 之前,有兩個設定需要特別注意:
1、資料儲存庫(Datastore)的異動(新增、移除)
2、網路介面的設定(vmnet1、vmnet8,若對於兩著差異還有些不了解,請參閱第一章!)
而安裝的過程,已經有進行資料儲存庫的相關設定(或接受預設值),為何還需要特別異動呢?這有兩點原因:
1、修改預設值,將資料儲存庫改設定到較大的硬碟空間
2、新增資料儲存庫,可將虛擬主機分類管理,或納入原本已經存在且內含虛擬主機的資料庫(資料夾)
管理網頁的右方的【Commands】,有需多關於 VMware Server 的相關設定,其中,「Add Datastore」就是用來新增資料儲存庫的選項,不過,看來看去,似乎沒有看到〝Delet Datastore〞的選項,是不能刪除嗎?別擔心,請先在管理介面中央【Datastores】頁框內預設的資料庫點一下,使其反白,「Delet Datastore」的選項就會出現,按下「Delet Datastore」,則系統會跳出警告視窗,以確認是否刪除,如下圖:
而至於新增資料儲存庫,則依照【Commands】→「Add Datastore」,並在『Directory Path:』的地方填入指定資料夾的絕對路徑即可,如下圖:
搞定了資料儲存庫的設定,接下來便是網路介面卡的相關設定;不過,各位讀者可能會發現,在整個管理網頁找了老半天,就是看不到與網路設定有關的任何選項,那這要怎麼設定網路介面卡呢?的確,在這一版的 VMware Server 的介面上,真的是看不到任何網路設定的選項,但這也不代表沒有辦法對網路介面進行設定,只不過,要轉個方向,由【開始】→【所有程式】→【VMware】→【VMware Server】→【Manage Virtual Networks】來啟動網路介面卡相關設定視窗:
視窗開啟之後,直接切換到「Host Virtual Network Mapping」的設定頁面,直接對『VMnet1』與『VMnet8』進行 IP 位置的設定,如下圖:
按下 『VMnet1』與『VMnet8』右方的箭頭圖示(>)→『Subnet』,在「IP Address」內填入適當的 IP 區段,而基本上,「Subnet Mask」則維持預設值,或依照 IP 區段做合適的調整,如下圖:
設定完成,則回到【Summary】的頁面,查看設定值是否已經套用:
若確認無誤,則完成網路介面卡的相關設定,到算是完成 VMware Server 的相關設定,可以進行後續虛擬主機的建置與部屬了。
接下來,部屬雲端服務平台的第二步驟,就是建置虛擬主機,而虛擬主機的安裝過程在第一章已詳細敘述,在此就不再贅述,不過,針對 VMware Server 則特別敘述兩項與虛擬主機有關的設定:
1、新增虛擬主機(也就是新增並設定虛擬主機硬體組態)
2、搬移或使用現有的虛擬主機
在新增虛擬主機的部份,於管理網頁的右方的【Commands】,按下「Create Virtual Machine」,就可進入虛擬主機的設定視窗,如下圖:
左側「Pages」的頁框,顯示的是虛擬主機建置(硬體設定)的流程與其名稱,由右側的頁框,則顯示流程名稱與設定項目,以上圖來說,「Name and Location」是在設定虛擬主機的名稱與所在資料庫,所以『Name:』的欄位,則填入虛擬主機的名稱(或是計畫名稱、服務名稱),以方便區分各個虛擬主機,而在『Datastore』,則可以選擇要存放此虛擬主機的資料庫(若有多個資料庫的話),設定完成,按下【Nest】。
【Guest Opersting System】則是設定此虛擬主機的作業系統類型,由於是用 Ubumtu JeOS 來當作雲端服務的基礎系統平台,在『Operating System:』當然選的是〝Linux operating systems〞,至於『Version:』,則依照要安裝在虛擬主機作業系統的類型做選擇:
而下方的『Product Compatibility』,則主要是設定此虛擬主機針對不同版本 VMware 旗下不同虛擬軟體的〝相容性〞,以方便一旦系統需要移轉,可以直接銜接上現有的虛擬軟體:
接下來在【Memory and Processors】則主要針對此虛擬主機設定記憶體的大小,只需要在『Size:』內設定適當的記憶體大小即可:
而【Hard Disk】當然就是設定虛擬主機的硬碟容量與規格,選擇『Create a New Virtual Disk』,為虛擬主機建立新的硬碟:
進入【Properties】,在『Capacity:』設定所需硬碟的容量大小,而在『Location:』則選擇此虛擬主機所在的資料庫(Database):
不過,在【Properties】的頁面,還有其他的設定選項,在這邊簡單介紹一下:
●『File Options:』,有兩個選項,〝Allocate all disk space now:〞是將定給虛擬主機的硬碟,全部預先分割並分配給虛擬主機使用,這可以提高存取的效能,〝Split disk into 2 GB files:〞則是若虛擬硬碟的空間達到 2GB 的時候,就自動分割檔案,如果資料庫所在的硬碟是 FAT32 的格式時,則需要勾選此選項。
●『Disk Mode:』,當勾選〝Independent〞時,會有兩個選項可以選擇,其中〝Persistent〞指的是當虛擬主機一有資料異動,就馬上將資料寫入硬碟(虛擬硬碟)之中,而〝Nonpersistent〞則有類似還原卡的功用,就是不管使用者怎樣的虐待虛擬主機,只要關機並重新開機之後,虛擬主機內的系統就會恢復到原先的狀態,這針對系統開發或是測試,是一項非常好用的功能。
●『Virtual Device Mode:』,在〝Adapter:〞可以選擇虛擬硬碟的介面類型(SCSI 或 IDE),至於〝Device:〞則是指定虛擬硬碟的編號,如 SCSI0、SCSI1…等。
●『Policies:』,主要是針對硬碟做最佳化處理,其中,〝Optimize for safety〞指的是以資料安全為第一優先,只要資料一有任何異動,就即時將資料寫入虛擬硬碟之內,而〝Optimize for performance〞則是以效能為主要考量,只有在系統提出通知,才將資料一併寫入虛擬硬碟之內,而由於有時暫存的資料異動較大,需要花費叫多的時間來處理。
而在【Network Adapter】,是新增網路卡的部份,由於是要透過網路提供服務,網路卡當然是必備的硬體之一,按下「Add a Network Adapter」:
接著就會跳入【Properties】的頁面,在『Network Connection:』要選擇的事網路卡的〝連線類型〞,有 "Bridged"、"HostOnly"、"NAT" 這三種類型,至於三者差異,這在第一章有明確的敘述,各位讀者可以回顧參可一下;由於本雲端服務系統主要是對內提供服務,所以理論上需要選擇 "HostOnly" 的連線類型,不過為範例後續操作上的方便性,這邊暫時選擇 "NAT" 的連線類型,至於『Connect at power on:』這當然是需要勾選的,不然開機之後還需要手動啟動網卡,這未免就有點不方便了:
至於【CD/DVD Drive】則是選擇光碟機,不過由於一開始 Ubuntu JeOS 的安裝,是透過 ISO 檔案來進行,因此這邊選擇「Use an ISO Image」:
進入【Properties】的頁面,在『Image File:』的選項,要指定 ISO 檔案所在的位置,按下〝Browaw:〞尋找檔案位置:
先說明一下,在 VMware Server 2.x 的設計中,預設所有檔案的存放點都指向資料儲存庫的位置,所以即使是 ISO 安裝檔,也需要預先放到資料儲存庫之中,否則會找不到該檔案:
選擇完之後,會回到【Properties】的頁面,在『Image File:』就會顯示剛剛選擇 ISO 安裝檔,而在『Connect at power on:』將其勾選,以方便在開機時啟動並掛載 ISO 影像檔:
下一步是【Floppy Drive】的設定頁面,不過近年來已經幾乎用不到磁碟機,因此在這邊就直接選擇「Don't Add a Floppy Deive」:
最後一個是【USB Controller】的設定頁面,USB 介面的設備是目前主流的資料溝通傳輸介面,當然要選擇,點選「Add a USB Controller」之後,按下【Nest】:
設定完成,【Ready to Complete】頁面就會顯示所有設定的設定值,確認無誤之後,按下【Finish】就完成了虛擬主機的硬體設定:
回到管理頁面,由左方的【Inventory】就可以看到剛剛新增的虛擬主機,點一下虛擬主機,在「Summary」的頁面就可以看到此虛擬主機的相關資訊:
在虛擬主機的資訊框,按下「Console」的頁面,不過一見的到就是一個警示視窗,這是因為需要利用瀏覽器來呼叫遠端的作業視窗(或是終端機視窗),所以需要安裝一個外掛的套件,直接點一下視窗中央的『Install plug-in』來進行套件的安裝(註1):
不同瀏覽器安裝的模式不盡相同,在此以 Firefox 3.5 為例,Firefox 3.5 會在視窗上方顯示警示列,按下【允許】以開始安裝:
安裝完成,Firefox 3.5 會要求重新啟動瀏覽器,待瀏覽器重新啟動之後,再重新登入 VMware Server 的管理頁面。登入之後,再次點選虛擬主機,然後按下「Console」的頁面,這次就可以看到視窗中間有一個大大的三角形,按下視窗上綠色的啟動按鈕來啟動虛擬主機:
不過,雖然看到〝Powered On〞的訊息,卻沒看到虛擬主機有任何的動靜,別緊張,此時只要在視窗中央(Console)點一下〝Open the console in a new windows〞:
若一切順利,就可以看到跳出一個新的視窗,這就是〝VMware Host Console Window〞,不過,有時 Console Window 出現的時間會比較慢,可不要以為系統當機了喔,可要有點耐心等一下,如下圖:
在虛擬主機的設定中,若設定啟動自動掛載 Ubuntu JeOS 的 ISO 影像檔,就可以看到如下的安裝畫面了:
OK,由標準的方式新增虛擬主機之後,接下來,筆者將試著加入已經存的虛擬主機。為何要這樣做?試想一下,也許在建構雲端服務之前(安裝 VMware Server 2.x ),已經有一些公司內部系統已經上線服務,並且也是利用虛擬軟體所建立的虛擬主機所提供的服務,那麼,基於管理上考量,勢必需要將虛擬主機做統一管理的動作,而 VMware Server 2.x 就可以利用資料儲存庫來將虛擬主機做管理與分類(註2,註3)。
這邊預設的情境是要額外加入已經存在,且內含虛擬主機的資料夾,來當作新的資料儲存庫。首先,按下管理介面右方,依照【Commands】→「Add Datastore」,並在『Directory Path:』的地方填入指定資料夾的絕對路徑,即可新增一個資料儲存庫,而在【Datastores】則可以看到新增的資料儲存庫:
一樣按下管理頁面上的【Commands】,不過這次不是要新增需增虛擬主機,而是要加入虛擬主機,按下「Add Virtual Machine to Inventory」:
之後在剛剛新增的資料儲存庫內,選擇已經存在虛擬主機的檔案(.vmx),而這也是 VMware 虛擬主機的主要執行檔:
選擇完成,按下【OK】鍵之後,會回到管理頁面,這時就可以在【Inventory】欄位上看到新增的虛擬主機:
接著要修正一些虛擬硬體設定值,外加進來的虛擬主機才能正常運作;一般來說,比較會有問題的硬體設定在於網路介面卡與光碟機,比較建議的修正方式是先移除原有硬體,然後再以新增硬體的方式來修正,這樣比較容易與現有的實體環境整合。
首先在【Hardware】的欄位內可以看到外加進來虛擬主機的虛擬硬體設定值(要先在【Inventory】欄位上點選虛擬主機),如下圖(實際狀況請參照加入的虛擬主機):
上圖可以看到有一張網路卡與兩台光碟機,直接按下圖示旁的【▼】→【Remove】來移除硬體設定,過程系統會跳出警示訊息,直接按下【Yes】來移除:
移除完成之後,接著在管理視窗右方【Commands】的欄位,按下「Add Hardware」來新增硬體:
接著在「Hardware Type」的位置,依序加入『Network Adapter』與『CD / DVD Drive』,並依照實際狀況作設定:
設定完成,在管理頁面【Hardware】的欄位內就可以看到新增的虛擬硬體的設定值:
最後就是啟動虛擬主機,並測試新增的虛擬硬體是否能正常執行,若一切 OK,就可以順利開啟 Console Window ,也可以正常執行並登入系統:
而由於在這邊的範例中,筆者加入的是在第一章與第二章所安裝起來的 Ubuntu JeOS ,除了系統之外,也有安裝 X-windows ,那麼,我們有沒有辦法在呼叫系統內圖形化視窗的軟體?這當然可以,只要有啟動〝Xming 〞就可以利用 Putty 來呼叫圖形化視窗的軟體,如下圖:
註1:
若是使用 IE 瀏覽器,按下視窗中央的『Install plug-in』時, VMware Server 2.x 會要求下載一個名稱為「vmware-vmrc-win32-x86.exe」的套件,直接安裝此套件,就可以在瀏覽器下啟動VMware Host Console Window〞了,如下圖:
註2:
各位讀者在安裝完虛擬主機的作業系統之後,每當啟動虛擬主機時,可能都會覺得網頁管理介面之上,有個地方怪怪的,就是在管理介面上右方【Status】欄位內的「DNA Name」與「IP Addresses」卻沒有任何資訊,如下圖:
這是因為虛擬主機上得系統並沒有安裝「VMware Toola」,所以 VMware Server 2.x 無法擷取虛擬主機上的資訊,這只需要將 VMware Tools 安裝上即可。
安裝方式如下:
由 Putty 登入虛擬主機(利用 Console Window 也可以),輸入以下指令,若系統提示需要輸入密碼,請輸入登入系統時的密碼:
jeos@JeOS:~$ sudo apt-get install build-essential linux-headers-$(uname -r)
接著系統會顯示要安裝與升級的套件,輸入〝y〞,並按下 Enter 鍵:
安裝完成之後,繼續輸入以下指令,輸入完成,一樣按下 Enter 鍵,讓系統繼續執行安裝:
jeos@JeOS:~$ sudo apt-get install psmisc
安裝完成就會看到如上圖的系統資訊,回到網頁管理頁面,在右方【Status】的欄位,按下「Install VMware Tools ...」:
接著管理頁面會跳出警示訊息,按下「Install」鍵後繼續執行安裝:
回到 Putty (或 Console Window ),輸入以下指令以掛載光碟機:
jeos@JeOS:~$ mount /media/cdrom0
不過,為何要掛載光碟機呢?這是因為 VMware Server 2.x 會將 VMware Tools 的程式檔案掛載到光碟機之上,所以需要將光碟機掛載到虛擬系統之上,才能安裝 VMware Tools。
光碟機掛載之後,將目錄切換到 /tmp 之下,這是因為安裝過程需要解壓縮一些檔案,在 /tmp 目錄下作業,比較不會影響到系統,安裝完成也可以放心的將檔案刪除。
接著執行以下指令,將光碟機內 VMware Tools 的安裝檔解壓縮到 /tmp 目錄之下(記住,要先轉換目錄到 /tmp 之下喔~):
jeos@JeOS:~$ tar xvzf /media/cdrom0/VMwareTools*.gz
再來執行安裝程序檔:
jeos@JeOS:~$ sudo vmware-tools-distrib/vmware-install.pl
當看到以下畫面,表示已經啟動 VMware Tools 的安裝程序:
接下來的安裝過程,系統會詢問需多問題,大多是確認路徑與安裝套件的應答詢問,基本上都採用預設值即可,不過,可不要一直狂按 Enter 鍵,當看到「vmhgfs module」這個模組時,請不要安裝,先在提示符號輸入〝no〞之後,再按 Enter 鍵執行下一步:
再來,看到「VMware FileSystem Sync Driver」時,也確認一下系統預設是不是〝no〞, 確認無誤之後,直接按下Enter 鍵執行下一步:
若一切順利安裝完成,最後會看到以下畫面:
看到以上畫面,可不要急著清理畫面或是登出系統,注意一下紅框上的區域,這是最後,也是最重要的設定指令,執行以上五個指令之後,系統啟動之後才會一併啟動 VMware Tools ,而這要也才算順利安裝完成。
不過,注意注意!以上五個指令請不要在 Putty 視窗操作,因為,由第一個指令就可以看到,系統會先關閉網路連線,若用 Putty 藉由 SSH 連線的方式來做設定,那麼,可能執行到一半,你就準備跟你主機說掰掰了~喔,不是系統掛掉啦,而是與主機的連線被中斷了。
回到 Console Window 之上,依序執行以上五個指令即可:
最後,只要重新啟動虛擬主機, VMware Tools 就會套用到系統之上了,而虛擬主機重新啟動之後,由以下兩個部份,就可以知道 VMware Tools 是否正確執行了:
在 Console Window 之上的系統訊息,就可以知道 VMware Tools 已經隨系統啟動了,且網頁管理頁面之上,在 右方【Status】的欄位,也可以正確看到虛擬主機的資料了。
註3:
若在設定虛擬主機時,當網路介面卡選擇「Bridged」時,在安裝 Ubuntu JeOS 時,可能會看到以下的錯誤訊息:
英文版:
中文版:
這是因為虛擬系統找不到相對應的實體網路卡,才會導致虛擬主機在安裝時,安裝程序無法啟動網路,這只需要在網路卡的設定頁面中,切換到「Host Virtual Network Mapping」的設定頁面,針對『vmnet0』做一些設定,指定實體主機上的網路卡即可:
雲端技術應用
雲端服務基礎平台以經架構完成,那們,可以拿來做些什麼?筆者就在這邊實做兩個範例。
1、E-learning Lounge
E-learning 是目前在一般公司企業、學術團體或教育研究單位廣為使用的一個「知識教育平台」,而此平台則提供技術文件、教學文件、進修文件,甚至是常見的 FAQ 文件,都會放在上面,以提供員工或是教職員來查詢使用。換句話說,這是一份〝靜態〞的文稿,閱讀者只能接受文件上所提供的資訊,而無法進一步尋求解答,甚至實測,如果這是一份進修或技術文件的話;這類資訊提供的方式,其實大大的降低了學習的效果,也減少了學習的意願,實在是非常可惜的一件事。
與其提供文件,倒不如提供〝教室〞或是〝學習環境〞,而善加利用「雲端服務」的模式,就可以達到這樣的效果,但怎麼做?這需要兩個步驟:
● 學習文件
● 實做環境
所謂的「學習文件」,其實就是傳統 E-learning 所提供的文件,唯一不一樣的,就是加入 X-window 的套件,以提供每一位上線的使用者,一個實際操作驗證的〝環境〞。
要提供線上文件,最基本的,一定要有網頁伺服器,若資料量大,有時還需要加入資料庫來進行文件管理,說真的,在 Ubuntu JeOS 上面安裝 Apache 與 MySQL ,並不是一件難事,但是安裝之後的設定與整合,可就很容易讓人一個頭兩個大,所以這邊筆者善用一個不錯的套件,它整合了 Apache 、 MySQL 、 PHP ,甚至連 FTP 都有,是個非常好用,且也常容易上手,就是 XAMPP 這個整合性的網頁伺服器,而重點是,這個套件完全不需要安裝,只要解壓縮,啟動,就可以使用。
首先,要下載 XAMPP 這一個套件,在終端機輸入以下指令(套件名稱為 xampp-linux-1.7.2.tar.gz ,其中 1.7.2 代表 XAMPP 的版本):
jeos@JeOS:~$ wget http://www.apachefriends.org/download.php?xampp-linux-1.7.2.tar.gz
不過,各位讀者可能會看到以下錯誤訊息:
別擔心,別忘了,因為 Ubuntu JeOS 是最小化系統,所以沒有這個命令,是正常的,只要利用以下指令安裝一下就好,若系統提示需要輸入密碼,請輸入登入系統時的密碼:
jeos@JeOS:~$ sudo apt-get install wget
安裝完成,系統會提示安裝訊息,如下圖:
再重新執行一次下載指令:
jeos@JeOS:~$ wget http://www.apachefriends.org/download.php?xampp-linux-1.7.2.tar.gz
下載執行過程如下圖:
下載完成,檔案預設會存放在目前登入者的家目錄之下,接著利用以下指令將檔案解壓縮到指定目錄:
jeos@JeOS:~$ sudo tar zxf xampp-linux-1.7.2.tar.gz -C /opt
解壓縮的檔案會放在 /opt 目錄之下,檔案名稱為「lampp」,而啟動指令與所有的伺服器、設定檔也都在此檔案之內,其檔案內容如下:
直接進到 /opt/lampp 目錄之下,執行以下指令來啟動此套件:
jeos@JeOS:/opt/lampp$ sudo ./lampp start
這邊我們就可以清楚的看到, XAMPP 共啟動了 Apache 、 MySQL 以及 ProFTPD 這三個服務系統,接著啟動瀏覽器,在網址列輸入虛擬主機的 IP ,按下 Enter 鍵之後,就會看到以下畫面:
在這邊選擇「English」語系,之後,就會進入 XAMPP 的訊息頁面,如下圖:
在這邊簡單說明一下,由於 XAMPP 不同於一般以正規方式安裝的 Apache 、 MySQL ,所有路徑、指令與檔案存放位置都有所不同,以 Apache 而言,其網頁資料放置的位置是在〝/opt/lampp/htdocs 〞 這個路徑之內,所以筆者複製一個 E-learning 的範本網頁資料到此路徑之下,其網頁資料夾名稱為「SCJP15」,如下圖:
接著回到瀏覽器,在網址列中,虛擬主機 IP 後方加上此資料夾名稱與首頁名稱,按下 Enter 鍵之後,就會看到以下畫面:
嗯,各位讀者現在看到的網頁圖示,這份學習文件是由「土芭樂數位學堂」所維護的資料庫,在此借用當成範本來做後續的解說;回到重點,一般的 E-learning 幾乎都大同小異,只是呈現的方式與內容會有所不同,在 E-learning 中,可以看到一些學習內容,如下圖:
OK,問題來了,一般員工看到這樣的學習內容,除了閉上眼睛亂猜答案之外,總是要有一個實做環境,才有可能測試並驗證問題的答案,但除非每一個人都在自己的電腦上安裝編輯器與編譯器,否則還真的只能胡亂猜一通,除此之外,安裝這些編輯器與編譯器可能就會累死一堆人,更別說要做這些題目了。
這時候在雲端服務平台之上,只要使用者有帳號可以登入虛擬主機,只要利用 Xming 搭配 Putty ,並善用虛擬主機的 X-window 系統,就可以解決以上的窘境,若依照第二章 X-window 環境與軟體的設定,利用〝gedit〞 這套編輯軟體,就可以一邊閱讀學習,一邊實做驗證,如下圖:
這種模式已經突破以往靜態 E-learning 的模式,而是有如提供一個「空中教室」或是「線上教室」的平台與環境,而這也是筆者將此應用稱之為「E-learning Lounge」,因為〝Lounge〞有閒逛、休閒室與長沙發的含意,可以隨時學習,隨性應用,而這也是雲端服務平台最大的優勢。
2、程式開發平台
利用雲端服務,搭配 Ubuntu JeOS ,打造程式開發平台,就讓所有的程式開發人員在相同平台上進行程式開發與維護的工作,在這邊筆者介紹「Eclipse」這一套 Free 的編輯器,其為主要是用在 Java 的相關應用程式的開發,而近年來也因為外掛套件的研發,使得 Eclipse 不只可以寫 Java 程式,更可以撰寫 PHP 、 C++ ,甚至 Perl 等程式語言。
OK,在 Ubuntu JeOS 上安裝 Eclipse 可是一件非常簡單的事情,只要輸入以下指令即可,若系統提示需要輸入密碼,請輸入登入系統時的密碼:
jeos@JeOS:~$ sudo apt-get install eclipse
接著系統會提示要安裝哪些檔案與相依性套件,在提示符號下輸入「y」,按下 Enter 鍵後進行安裝:
安裝完成,系統會顯示安裝與設定結果,這邊也可以看到,安裝 Eclipse 時,連 Java 的相關程式與套件也會一併安裝完成如下圖:
安裝完成,接著便測試一下安裝完的 Eclipse 可不可以執行,直接在命令提示符號下輸入「eclipse」,接著按下 Enter 鍵即可啟動程式,若順利安裝 Eclipse ,執行之後便會看到以下的啟動畫面:
第一次啟動 Eclipe ,由於需要初始化程式,所以需要一點時間,接著系統會提示是否要設定工作資料夾,筆者認為這個設定還蠻重要的,若是需要整合管理每一位程式開發人員所撰寫的程式,可以整合在同一個或者依照不同的 Project 區分不同的工作區,而系統預設是將工作區建立在啟動程式人員的家目錄之下,若是希望下此啟動之後不再詢問工作區的目錄位置,將下方「Use this as the default abd do not ask again」的區塊勾選起來即可:
目錄區設定完成,就會直接進到 Eclipse 的主要畫面,而開啟新程式就會進入編輯頁面:
OK,這就是利用雲端作業平台( VMware Server 2.x )搭配 Ubuntu JeOS ,在公司內部所建立的雲端程式開發平台,只要授予適當的權限,就可以利用公司內部的高速網路,隨時登入系統,隨時進行程式編輯與開發,除此之外,還有以下的優點:
1、程式原始碼統一管理,有助於版本控管與分工分區
2、程式原始碼集中儲存與備份,確保公司資產的安全性
3、由於集中管理,也避免公司智慧財產外流
4、減少硬體支出與維護費用
當然,雲端作業平台搭配 Ubuntu JeOS 這套輕量但可塑性大的作業系統,善用公司內部高速的區域網路,可以為一般公司企業提供強大的內部服務,絕對是未來企業管理與資訊發展的最佳利器!