CIO
|
PCDIY!
|
旗標圖書
|
旗景數位影像
|
讀者服務
首 頁
即時新聞
業界動態
最新活動
企業採購
精選文章
線上教學
品牌活動
程式碼下載
雲端運算智庫
最近新增的
精選文章
AP內建AI引擎 Mist Cloud平台分析能力強 Juniper Mist AI領先全球 改善WiFi穩定、效能首選
解決IT供應鏈攻擊
內部威脅的七個警訊
遠百以專案辦公室推動數位體驗
多廠牌與多重電信業者網路架構的挑戰與機會
德明科大啟用電貿暨AI實習基地 ViewSonic ViewBoard 智慧互動電子白板 扮要角
淺談計算誤差
秀傳醫療體系統 以Lenovo HyperConverged HX 超融合架構扎穩智慧醫療發展基礎
模組化設計 偵測率達99.99% 全面防杜惡意郵件入侵 首選Cellopoint Email UTM
滿足網路管理與檔案安全傳輸需求,Ipswitch的MOVEit及WhatsUp Gold一次完整提供
來自學界的資料分析利器 - Weka 與 R
北醫建置肺癌資料庫,透過深度標註訓練AI,協助醫師早期發現癌症
北榮AI門診上路!人工智慧判讀腦瘤,有效縮短醫師確診時間
台灣智慧機器人玩具聯盟攜手英閱音躍研創 推廣T. Robot程式教育,協助國中小學扎根培養運算思維
一場與時間賽跑的戰役 ,人工智慧加速心血管疾病診斷
最多人點閱的
精選文章
免費IT建置--Linux系統操作與管理
免費IT建置--網頁伺服器的完美組合LAMP(下)
初探Hadoop開放原始碼平台環境
Linux下的防火牆(基礎篇)
免費IT建置--檔案共享與檔案伺服器
Linux下的防火牆(進階篇)
N.Y.BAGELS CAFE善用SAP Business One
手機程式設計入門與應用 Android、iPhone、Windows Mobile─ 影片播放器範例
手機程式設計入門與應用 Android、iPhone、Windows Mobile─ 線上查詢匯率
手機程式設計入門與應用 Android、iPhone、Windows Mobile─ 擲骰子遊戲
手機程式設計入門與應用 Android、iPhone、Windows Mobile─ 音樂播放器範例
手機程式設計入門與應用 Android、iPhone、Windows Mobile─ 來電黑名單
免費IT建置--網頁伺服器的完美組合LAMP(上)
手機程式設計入門與應用 Android、iPhone、Windows Mobile─ 繪圖板範例
手機程式設計入門與應用 Android、iPhone、Windows Mobile─ Matrix應用範例
精選文章 - 網管資安
分享到Plurk
分享到FaceBook
開放源碼Convirt 2.0的安裝
文/柳百郁
2010/12/9 下午 06:08:49
本文將以「原始程式碼」安裝Convirt 2.0,此種方式對新手而言當然比已編譯好的套件要困難得多,其實對已使用Linux一段時日的人來說也不算簡單,但在Convirt 2.0的rpm與deb未完成的此時,想體驗Convirt 2.0的新功能,這似乎是唯一方式;且透過安裝過程顯示的訊息──無論是正常或錯誤訊息,都能讓管理者更瞭解這套應用程式。
前期介紹了Convirt簡便的安裝、建置與使用,透過針對分支套件預先編譯的套件檔rpm(或deb),將Convirt安裝在Fedora或CentOS等Linux分支套件系統下,以一套獨立的、可管理其它雲端資源的應用程式執行。在網路無所不在的今日,透過萬能的瀏覽器完成任務需求已經不是太困難的事了,因此以瀏覽器為介面,監控與管理IT資源已是趨勢,概念一如瀏覽器即桌面的WebOS──打開瀏覽器就是進入桌面環境,所有電腦裡應用程式能作的,瀏覽器應該也能作到,Convir 2.0就是這樣能夠以瀏覽器為介面管理底層虛擬機器(包含Xen或KVM-based)與雲端資源(儲存裝置與網路)的管理工具。
從Convirt 1.1到2.0
ConVirt 2.0可以用來管理一台工作站上的數個Xen或KVM-based虛擬機器,也能夠掌控上千台分散在百台伺服器上的虛擬機器。ConVirt 1.1支援的範本管理、線上遷移、儲存裝置與網路管理與多平台支援,在Convirt 2.0都有,而且還另外多了Ajax的Web使用者介面、多管理者、虛擬機器與伺服器的歷史紀錄學習功能,以及子系統Task-用來執行背景操作或其它非同步功能的任務。
從2.0版開始,會用到TurboGears2的技術、使用MySQL資料庫儲存資訊,因此你最好對MySQL的基本用法與管理有所瞭解,且CentOS 5.5原生yum軟體倉儲並未提供Turbogears2的支援,在安裝過程中也可能會遇上無法透過convirt安裝程式下載的狀況,管理者必須有能力解決相依性問題,順利安裝Turbogears2,才得以進入Convirt 2.0的原始碼安裝程序。
簡單來說,建立Convirt管理伺服器的流程──「首先是取得安裝套件(Open Source與Enterprise版本的取得方式不同),然後將ConVirt管理伺服器(CMS, Convirt Management Server)安裝在控管主機上,接下來決定要被管理的伺服器與虛擬機器有哪些,也就是底層執行Xen或KVM的那些虛擬主機,Convirt安裝完成後就能透過瀏覽器(官方網站建議使用Firefox)開始管理你的雲端基礎架構了」。
Convirt Opens Source 2.0
Convirt提供Enterprise(企業版)與Open Source(開放源碼)兩種版本,開放源碼版不同於企業版的便是可以自由下載(下載網址 http://www.convirture.com/downloads/latest_tarballs/ )。
筆者以CentOS 5.5作業系統作為測試環境,自官方網站下載Convirt 2.0 Open Source的原始程式碼(.tar打包檔):包括convirt-2.0.tar.gz、convirt-install-2.0.tar.gz與convirture-tools-2.0.tar.gz。在檔案所在的目錄下,將檔案解壓縮並解打包檔。
-----box指令-----
# tar xvzf convirt-install-2.0.tar.gz
-----end-----
系統下的打包程式tar提供了一併解壓縮的選項:
‧x - 解打包
‧v - 螢幕顯示完整的執行過程
‧z - 解壓縮
‧f - 指定檔案
打包檔解開後,會出現目錄convirt-install,也就是要先著手的安裝部份:
-----box指令-----
# cd convirt-install/install/cms/scripts
# ./install_dependencies
-----end-----
切入後第一步是先解決相依性問題。Linux系統下,在執行檔(該檔案需具有可執行的屬性與權限)之前加入「./」,即可執行該檔,這個程式會自動找到你的套件處理程式,連結網路,處理相依性問題。
相依性問題的解決過程中會詢問MySQL管理者密碼,如果MySQL剛裝還沒有root密碼,可留空白,並在「Enter current password for root」處按下Enter鍵即可。在已有MySQL密碼的設定下,Convirt會接著詢問你是否變更等問題。為測試方便,MySQL建立了anonymous(匿名)使用者,無須密碼即可登入,此處會詢問你是否刪除這個可能會造成安全性漏洞的使用者;此外,另一個安全性問題是:root應只允許在localhost登入MySQL,因此筆者在「Disallow root login remotely?」選擇Y,以防有心人從網路上猜測root的密碼嘗試登入。接下來移除test資料庫同樣也是為了安全性的理由,管理者可自行決定是否刪除。最後重新載入privilege表單,讓方才的設定即時生效,相依性及MySQL的相關設定即完成。
問題與障礙
安裝過程中筆者遇上幾個問題,造成convirt啟動後process出現三秒即遭砍除,透過log的瞭解追蹤下,問題整理如下:
1.development.ini的設定:包括MySQL密碼、Web伺服器主機的指定等,如實際運作的設定與此檔內的設定不符,程式執行時不會出現Error,但執行數秒後其process將遭砍從,令服務中止。
2.資料庫不存在的問題:筆者以手動方式建立convirt資料庫,此部份應在相依性問題的程序中完成,但由於相關資料未設定正確,資料並未如常建立。
3.安裝完成後應依網頁指示完成patch安裝的動作,雖然官方網站說明文件中將該patch列為recommaned(建議安裝),但在筆者測試下,安裝時遇上的諸多問題在patch安裝完成,並匯入update_resposity.sql後,得到解決。
在服務執行中遇上問題時,查詢log是最正規的方式。就convirt而言,paster.log詳列了convirt啟動、停用等程序時的執行細節,但若是安裝時的錯誤,就沒有log可查詢,這是美中不足的部份。就此次試作而言,最常遇上的問題是服務成功啟動,執行後未出現error message,但執行後五秒會發現process消失,paster.log最後一行說明:「Removing PID file ./paster.pid」,原因可能有:無法登入mysql、找不到資料庫與raise DistributionNotFound(req)等等。安裝完成後建議將所有patch上過一遍,再啟動convirt,可省去許多troubleshooting的心力。
安裝完成
接著才執行安裝動作:
-----box指令-----
# ./install_convirt
-----end-----
安裝順利完成,會見到Convirt提醒你iptables的設定、瀏覽器使用與啟動convirt的方式。
因為要透過瀏覽器進入Convirt管理伺服器平台,所以必須在防火牆(iptables)裡將指定通訊埠打開,假定預設使用8081埠來管理,應在防火牆加入:
-----box指令-----
iptables -I INPUT -p tcp --dport 8081 -j ACCEPT
-----end-----
接受外部的8081通訊埠要求。如此一來才能透過瀏覽器,進入http://
:8081/ - ConVirt管理介面。
安裝完成後,切換至/root/convirt目錄下,便能透過命令列程式啟動Convirt管理伺服器:
-----box指令-----
# ./convirt-ctl start
-----end-----
▲ 圖1 登入畫面,安裝完成後首度登入的Username與Password皆為admin。
▲ 圖2 Convirt 2.0的管理畫面。
偵測被管理的虛擬機器
管理介面安裝完成後,接下來便是決定管理的機器。在本機上,你可以透過convirture-tools裡的script,測試它是否能被Convirt認出來:
-----box指令-----
# ./convirt-tool --detect_only setup
# ./convirt-tool setup
-----end-----
在設定前先偵測(detect_only),檢查你使用的虛擬化平台,成功找到後script會列出相關訊息,接下來依script開始設定即可。
Convirt Enterprise 2.0.1
需付費的Convirt 2.0 Enterprise提供試用版,以線上申請(須使用公司行號的Email帳號)等候通知的方式。意料之外地,試用申請與核准似乎並非以自動化的方式,筆者在申請兩天之後才收到回函,並另詢問了一些使用的相關資訊,在此之後數天才收到核准試用的電子郵件:
▲ 圖3 提供各平台下載網址的確認信。
使用確認信中的帳號密碼與鏈結,可取得三合一的打包檔,內含的檔案包括:
.convirt-enterprise-install-2.0.1.tar.gz - ConVirt Management Server(CMS)安裝程式。
.convirt-enterprise-2.0.1.tar.gz - ConVirt Management Server。
.convirture-enterprise-tools-2.0.1.tar.gz - 用於被ConVirt管理之伺服器的一些小工具。
Convirt Enterprise 2.0.1新功能
申請試用的當下,Enterprise已升級至2.0.1版,提供LDAP支援、客製化搜尋功能、動態工作負載管理(DWM, Dynamic Workload Management)與VLAN的支援。動態工作負載管理的功能讓Convirt的Enterprise版更名符其實,管理者依企業服務與資源的佈署狀況,設定一個合理的CPU臨界值,當負載重於設定值時,Convirt自其它伺服器取一個虛擬機器過來支援;相對來說,當CPU的使用量在某個設定值以下、超過某個設定時間時,Convirt也可以試著將執行中的虛擬機器移到另一個伺服器上,甚至伺服器上的虛擬機器都移走之後,還可以依設定自動停機,進入省電模式。
▲ 圖4 Convirt 2.0.1的動態工作負載管理(圖片取自Convirt官網)。
問題與考驗
依前文Convirt Open Source安裝說明所述,利用tar程式解壓縮並解打包,得到convirt-enterprise-install、convirt-enterprise與convirture-enterprise-tools三個目錄,首先到convirt-enterprise-install下,執行./install_dependencies解決相依性問題(一樣需要作一些MySQL設定)。
在執行./install_convirt之前,筆者建議先處理一些套件與設定問題。convirt的安裝過程中會需要設定python與TurboGears的執行環境,Fedora環境下使用的python 2.6有可能造成安裝上出現錯誤,而CentOS則可能出現找不到TurboGears2套件的問題:
-----box指令-----
ERROR: installing TG2 (2.0.3).
ERROR: Failed creating Turbogears2 environment.
-----end-----
建議先使用yum程式安裝TurboGeasr2,該程式將自動安裝TurboGears2與執行環境所需的相關python套件。
此外,安裝過程中會執行上網抓取打包檔的動作,如無法順利下載則會出現安裝中斷的狀況,由於所需檔案已透過郵件鏈結下載,筆者的作法是變更install_config的設定,讓抓取的url指向本機裡已解打包的位置,必要時還需要手動將該檔複製至/root下,可順利騙過安裝程式中下載打包檔並解打包的程序。
準備好上述動作,應算是大致解決安裝過程式有的問題,此時再執行./install_convirt應能順利完成。只是由於各分支套件(例如:Fedora、CentOS或Ubuntu)所提供的軟體版本不同、管理者的更新頻率也不同,安裝過程中會遇上的問題無法逐一列出。然而,透過log的說明、strace程式的運用以及Convirture所提供的討論區,應能提供管理者一個解決問題的方向。
Convirt 2.0的patch更新
Convirt 1.0/1.1皆已提供編譯完成的檔案,在yum體系下已可作到自動更新的動作。不過Convirt 2.0現仍在提供原始碼的階段,程式的修補與功能的調整需用到patch來作。在Convirt 2.0安裝完成後,建議在執行與使用前先作patch更新的動作,避免無法預期的問題。
在Convirt的安裝目錄(預設為/root)下,執行下列動作:
-----box指令-----
# mkdir before_patch_bundle_1 ; cp -r convirt-enterprise before_patch_bundle_1
分號將兩個指令的執行分開但依序執行。首先建立目錄 before_patch_bundle_1,之後將固有的convirt-enterprise目錄內容複制至新目錄before_patch_bundle_1下。
# cd convirt-enterprise
# ./convirt-ctl stop
切換至convirt-enterprise目錄下,停止convirt服務。
#rm convirt.log* paster.log
移除舊log檔。
# wget http://www.convirture.com/downloads/convirt/2.0/convirt-2.0.patch_bundle_1.tar.gz
把patch bundle抓回來
# tar xvzf convirt-2.0.patch_bundle_1.tar.gz
解打包與壓縮。解開後會在該目錄下產生storage, install,src三個目錄與檔案update_repository.sql
# vi src/convirt/web/convirt/development.ini
編輯development.ini的設定,讓它符合你系統環境的內容。例如主機設定與sqlalchemy.url的MySQL登入設定。
# mysql -u root -p convirt < ./update_repository.sql
更新資料庫的相關設定。
# ./convirt-ctl start
啟動convirt。開啟瀏覽器可登入管理介面。
-----end-----
結論
Convirt號稱支援眾多Linux分支套件:CentOS、RedHat Enterprise Linux、SUSE Linux Enterprise Server、Ubuntu與Debian等,使用編譯後的RPM或DEB套件安裝幾乎都能順利完成。但透過原始碼(Source Code)的方式編譯與安裝,相依性問題仍嫌解決得不夠完整、過程中錯誤訊息不足、說明文件太簡化,加上討論區的回應仍嫌不足(會出現需寫信詢問的回應),這樣的狀況在Enterprise版本上更甚於Open Source版,雖然很可能是由於2.0加入了許多新功能,加上Enterprise本身提供的功能又比Open Source的還多又複雜,此次試作的更是加了一些新支援的更新版本。
無論如何,若能克服使用原始碼編譯、安裝時的重重阻礙,Convirt 2.0.1新加入的LDAP支援與動態工作負責管理功能,對追求整合、一致化與集中管理的IT人員來說,會是決定是否使用此軟體的重要考量之一。
回首頁...
關於RUN!PC
|
廣告刊登
|
聯絡我們
|
讀者服務
|
雜誌訂閱
|
出刊&補寄時間
-- Copyright© FLAG INFORMATION CO., LTD. 旗訊科技(股)公司. All rights reserved. 本站圖文著作權所有 未經授權 不得任意轉載使用 --
-- 請使用1024*768螢幕解析度,IE 7.0或firefox 3.0以上瀏覽器,以達到最佳閱讀效果--