自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

用Archipel實(shí)現(xiàn)與虛擬機(jī)管理程序?qū)υ?/h1> 原創(chuàng)

云計(jì)算 虛擬化
開源社區(qū)已經(jīng)推出了世界上最出色的一些虛擬化技術(shù),包括Xen和KVM虛擬機(jī)管理程序,各種功能強(qiáng)大的應(yīng)用編程接口(API),以及Libvirt等接口。但是到目前為止,還沒有哪個(gè)開源項(xiàng)目為虛擬化環(huán)境開發(fā)出真正精心設(shè)計(jì)的跨虛擬機(jī)管理程序管理工具。

  【51CTO 11月15日外電】開源社區(qū)已經(jīng)推出了世界上最出色的一些虛擬化技術(shù),包括Xen和KVM虛擬機(jī)管理程序,各種功能強(qiáng)大的應(yīng)用編程接口(API),以及Libvirt等接口。但是到目前為止,還沒有哪個(gè)開源項(xiàng)目為虛擬化環(huán)境開發(fā)出真正精心設(shè)計(jì)的跨虛擬機(jī)管理程序管理工具。只有少數(shù)幾個(gè)項(xiàng)目要么局限于某一種特定的接口,比如Virt-manager X11應(yīng)用軟件;要么是致力于云計(jì)算的工具,比如Xen的Enomalism,對于平常的虛擬機(jī)管理程序管理工作來說它又太過了。

  管理員們?nèi)找鎸で蟮氖且环N直觀的Web圖形用戶界面(GUI),能夠提供這樣的功能:集中又全面地管理來自Xen、KVM和VMware等可用系統(tǒng)的成千上萬個(gè)虛擬機(jī),這時(shí)Archipel應(yīng)運(yùn)而生,它采用了全新的方法:一小隊(duì)法國開發(fā)人員聲稱,希望比Enomalism或Proxmox做得更出色,于是深入鉆研開源工具箱,開發(fā)出了Archipel。

  這個(gè)Web GUI依靠Cappuccino JavaScript框架,提供了類似桌面應(yīng)用程序的體驗(yàn)。究其核心,Archipel依靠Libvirt API,以便能夠支持所有的主流虛擬機(jī)管理程序,比如KVM、Xen、OpenVZ和VMware。就在不久前,Archipel的第二個(gè)測試版已發(fā)布。

  與虛擬機(jī)管理程序?qū)υ?/strong>

  Archipel采取了一種新方法,它選擇擴(kuò)展消息與出席協(xié)議(XMPP)作為與虛擬機(jī)管理程序?qū)υ挼膮f(xié)議。這種即時(shí)消息傳遞協(xié)議因Jabber而廣為人知,它支持內(nèi)部消息實(shí)時(shí)傳遞,以實(shí)現(xiàn)控制和提供信息的目的。這意味著,你甚至可以使用Jabber客戶端來查詢虛擬機(jī)的狀態(tài)信息,或者發(fā)送命令。究其核心,Archipel包括三個(gè)部分(見圖1):

  圖1:Archipel架構(gòu),包括虛擬機(jī)管理程序、虛擬機(jī)、Archipel代理和冗余的XMPP服務(wù)器。

  •Archipel客戶端提供了吸引人的Web GUI,這個(gè)GUI很像iTunes,可以在大多數(shù)瀏覽器中運(yùn)行,這歸功于JavaScript。(測試客戶端可供使用)

  •Archipel代理在服務(wù)器上用來聯(lián)系虛擬機(jī)管理程序?qū)嵗?。代理用Python編寫,采用了模塊化結(jié)構(gòu)。管理員可以使用外殼命令,安裝和更新代理。

  •XMPP服務(wù)器架構(gòu)必不可少,因?yàn)榇硎褂靡訪ibvirt作為基礎(chǔ)的XMPP,與虛擬機(jī)進(jìn)行對話。

  Archipel建議使用Ejabberd Jabber/XMPP服務(wù)器,不過據(jù)說實(shí)施的其他服務(wù)器也行。啟動(dòng)虛擬機(jī)的命令通過Archipel客戶端上的Jabber XMPP,傳送到XMPP服務(wù)器;然后,它傳送到Libvirt(Libvirt-create),***傳送到虛擬機(jī)管理程序(如KVM-create)。

 

#p#

 

  安裝過程

  Archipel的其中一個(gè)***缺點(diǎn)體現(xiàn)在安裝過程:說明文檔內(nèi)容極其匱乏。但至少,描述設(shè)置的部分相當(dāng)清晰,不過你需要留意幾個(gè)錯(cuò)誤。***的辦法就是從安裝Ejabberd入手,它需要版本至少是2.1.6,***使用二進(jìn)制安裝工具。接下來,你需要添加ejabberd_xmlrpc和mod_admin_extra模塊,以擴(kuò)展XMPP服務(wù)器。為此,獲取用Erlang編寫的源代碼,然后將因而獲得的*.beam文件拷貝到Ejabberd后臺駐留程序的ebin目錄(代碼段1和代碼段2)。

  完成了這一步后,你需要修改/opt/ejabberd‑2.1.6/conf/ejabberd.cfg(視發(fā)行版而定,這個(gè)文件可能是/etc/ejabberd/ejabberd.cfg)。為此,啟用你剛剛創(chuàng)建的模塊;最重要的是,輸入完全符合標(biāo)準(zhǔn)的域名(FQDN)。遺憾的是,Archipel項(xiàng)目記載的配置方法在許多方面具有誤導(dǎo)性;為此,你可能應(yīng)該遵循代碼段3。

  代碼段1:ejabberd_xmlrpc

  wget http://www.ejabberd.im/files/contributions/

  xmlrpc‑1.13‑ipr2.tgz

  tar ‑xzvf xmlrpc‑1.13‑ipr2.tgz

  cd xmlrpc‑1.13/src

  make

  cd ../../

  cp ebin/*.beam /opt/ejabberd‑2.1.6/lib/ejabberd‑2.1.6/ebin

  ***,創(chuàng)建管理員帳戶,完成Ejabberd的設(shè)置:

  ejabberdctl register admin FQDN password

  設(shè)置Archipel代理的過程要快一點(diǎn),從依賴性檢查開始,為此你需要Python版本2.5或更新版本、Libvirt版本0.8.7或更新版本、KVM等虛擬機(jī)管理程序,以及Qemu版本0.12.5或更新版本。此外,你應(yīng)該有Qemu-img和Python設(shè)置工具。

  代碼段2:mod_admin_extra

  cd /usr/local/src/ejabberd‑modules/mod_admin_extra/trunk/

  ./build.sh

  cp ebin/mod_admin_extra.beam

  /opt/ejabberd‑2.1.6/lib/ejabberd‑2.1.6/ebin

  代碼段3:ejabberd.cfg

  01 {hosts, ["jabber.deutschewolke.datenwerk‑it.de"]}.

  02 [...]

  03 {listen,

  04 [

  05 {4560, ejabberd_xmlrpc, []},

  06 {5280, ejabberd_http, [

  07 http_bind,

  08 http_poll,

  09 web_admin

  10 ]}

  11 ]}.

  12 [...]

  13 {modules,

  14 [

  15 {mod_adhoc, []},

  16 {mod_http_bind,[]},

  17 [...]

  18 {mod_admin_extra, []}

  19 ]}.

  20 [...] 

  下面序列的命令安裝了Archipel代理:

  easy_install archipel‑agent

  archipel‑initinstall

  現(xiàn)在,你需要把服務(wù)器的FQDN添加到/etc/archipel/archipel.conf,使用提供的init腳本來啟動(dòng)Archipel:

  /etc/init.d/archipel start

  ***,你需要兩個(gè)Ejabberd pubsub節(jié)點(diǎn),確保權(quán)限系統(tǒng)和標(biāo)記管理可以正常工作:

  archipel‑tagnode ‑‑jid=admin@FQDN ‑‑password=Password ‑‑create

  SUCCESS: pubsub node /archipel/tags created!

  archipel‑rolesnode ‑jid=admin@FQDN ‑‑password=Password ‑‑create

  SUCCESS: pubsub node /archipel/roles created!

  你不需要手動(dòng)建立客戶端,在Archipel維基中已有詳細(xì)描述。而是只要選擇***的Archipel客戶端發(fā)行版,將它解壓縮到本地目錄中,在瀏覽器中打開index.html。至于登錄時(shí),輸入完全符合標(biāo)準(zhǔn)的Jabber ID很重要;也就是說,該ID必須包括完整的服務(wù)器名稱(圖2)。

 

  圖2:就客戶端的Archipel登錄而言,你需要在Jabber ID字段中輸入完整的登錄名(包括域)。

  你在這里所需的密碼是你在創(chuàng)建管理員帳戶時(shí)指定的登錄信息。Service BOSH字段的URL遵循h(huán)ttp://FQDN:5280/http‑bind這種模式。

 

#p#

 

  找到你的虛擬機(jī)

  Archipel提供了一種整潔的用戶界面,顯示了需要注意的詳細(xì)信息。但是如果你沒有往自己的環(huán)境填充大批的虛擬機(jī)管理程序主機(jī)和虛擬機(jī),即使再漂亮的界面也不會有太大幫助。在填充環(huán)境的***步當(dāng)中,你得向Archipel注冊虛擬機(jī)管理程序。為此,點(diǎn)擊左下角的+符號,在Archipel XMPP系統(tǒng)上創(chuàng)建一個(gè)新的(Jabber)聯(lián)系人。

  聯(lián)系人的ID在這里是Hypervisor@FQDN;完成后,點(diǎn)擊OK。虛擬機(jī)管理程序及其化身就會出現(xiàn)在左邊的聯(lián)系人列表中。主機(jī)的主視圖是Health(健康)視圖,這為你實(shí)時(shí)提供了一系列完整的關(guān)鍵信息(見圖3)。

 

 

  圖3:在Archipel的健康摘要中檢查虛擬機(jī)管理程序的健康狀況。

  遺憾的是,Archipel還是沒有出現(xiàn)在這個(gè)虛擬機(jī)管理程序的虛擬機(jī)上。你有兩個(gè)選擇:***個(gè)是可以使用Archipel管理工具,添加一個(gè)現(xiàn)有的虛擬機(jī);archipel‑importvirtualmachine腳本在這里大有幫助。該腳本需要兩個(gè)變量,你得事先找到正確的值。其中一個(gè)變量是本地虛擬機(jī)管理程序的SQLite 3數(shù)據(jù)庫描述文件,該文件位于/var/lib/archipel/hypervisor.sqlite3.2;另一個(gè)變量是你想要導(dǎo)入的虛擬機(jī)的UUID。要找出UUID,最容易的辦法就是運(yùn)行virsh Libvirt工具:

  virsh ‑‑connect qemu:///system

  list

  dominfo ID_of_VM

  UUID

  要開始導(dǎo)入過程,UUID必不可少(代碼段4)。虛擬機(jī)現(xiàn)在也會出現(xiàn)在左邊的聯(lián)系人列表中;Archipel管理人員在這里就能查看虛擬機(jī)的狀態(tài),執(zhí)行生命周期命令,比如start(啟動(dòng))、stop(停止)和pause(暫停),甚至可以將虛擬機(jī)遷移到另一個(gè)虛擬機(jī)管理程序主機(jī)上,或者創(chuàng)建快照。

  增加Archipel環(huán)境中虛擬機(jī)數(shù)量的第二個(gè)辦法就是,直接在Archipel GUI中創(chuàng)建虛擬機(jī)。這個(gè)過程只需要幾個(gè)步驟。首先,將所需的安裝ISO映像文件存放到/vm/iso目錄中。然后在GUI中,點(diǎn)擊New VM(新建虛擬機(jī)),進(jìn)入到Definition(定義)選項(xiàng)卡,輸入內(nèi)存、磁盤驅(qū)動(dòng)器和網(wǎng)絡(luò)所需要的設(shè)置(圖4)。

  

 

  圖4:配置虛擬機(jī)的過程不需要加以說明。

  完成這一步后,你需要?jiǎng)?chuàng)建一個(gè)新的(虛擬)光盤驅(qū)動(dòng)器,并設(shè)置虛擬機(jī),以便從光盤啟動(dòng)。點(diǎn)擊Play(播放),即可喚醒虛擬機(jī)、觸發(fā)安裝。VNC Console(VNC控制臺)選項(xiàng)卡中由JavaScript實(shí)現(xiàn)VNC,為管理虛擬機(jī)的圖形界面提供了一種簡潔又吸引人的方法。

 

#p#

 

  與虛擬機(jī)對話

  值得一提的是,集成聊天表明了Archipel如何一貫立足于XMPP協(xié)議上。當(dāng)然,你可以使用Chat與自身環(huán)境中的其他管理員進(jìn)行聯(lián)系,但是讓人好奇的是,有一個(gè)辦法可以直接與虛擬機(jī)管理程序和虛擬機(jī)進(jìn)行口頭上的聯(lián)系(圖5)。  

 

 

  圖***rchipel以***人稱單數(shù)回答問題,非常樂意把虛擬機(jī)管理程序和虛擬機(jī)健康狀況的詳細(xì)信息告訴你。

  Archipel的自然語言詞匯相當(dāng)有限,但是以這種方式進(jìn)行聯(lián)系在生產(chǎn)環(huán)境下既有趣,又異常有效。如果你問虛擬機(jī)how are you(你好),它會以***人稱單數(shù)回答經(jīng)過壓縮的狀態(tài)消息。你可以使用任何Jabber客戶端,以這種方式進(jìn)行聊天。Archipel總是很樂意為你提供信息。

  代碼段4:導(dǎo)入虛擬機(jī)

  /etc/init.d/archipel stop # Archipel Agent stop

  archipel‑importvirtualmachine

  ‑‑file=/var/lib/archipel/hypervisor.sqlite3

  ‑‑uuid=UUID ‑‑xmppserver=FQDN ‑‑name=vm1

  /etc/init.d/archipel start # Archipel Agent start

  管理員可以在GUI中實(shí)時(shí)查看所有系統(tǒng)及相應(yīng)操作的日志;你還可以將有選擇的消息推送到智能手機(jī)上。比如說,為此,你只要將App Notifications應(yīng)用程序裝入到iPhone上,在archipel.conf中輸入私密的API密鑰。

  角色概念、部署和標(biāo)記

  作為一款面向虛擬機(jī)的成熟的管理解決方案,Archipel擁有眾多功能強(qiáng)大的部署工具:集成的VM Casting協(xié)議(原先由Enomalism開發(fā))使用RSS新聞源,為虛擬機(jī)管理程序支持設(shè)備下載件。這意味著,你可以根據(jù)定義的設(shè)備,自動(dòng)部署虛擬機(jī)實(shí)例和更新版本。

  此外,Archipel管理員可以直接從虛擬機(jī)本身來創(chuàng)建設(shè)備,將結(jié)果作為模板來存儲,并將它們用于新的虛擬機(jī)。Archipel支持XVM2模板格式(這種格式同樣由Enomalism首推,由XenServer推廣),將來會支持流行的OVF標(biāo)準(zhǔn)。

  許多管理工具僅限于這種級別的功能,而Archipel提供了另外幾項(xiàng)企業(yè)級功能。這些增強(qiáng)的功能包括:一種復(fù)雜的角色概念,可用于為不同的用戶和角色定義細(xì)粒度權(quán)限。如果你是擁有眾多虛擬機(jī)的超大環(huán)境下的管理員,會喜歡上標(biāo)記系統(tǒng)和相應(yīng)的搜索功能,還會喜歡對聯(lián)系人(也就是虛擬機(jī)管理程序和虛擬機(jī))進(jìn)行邏輯分組的功能。

  通過成批命令(如同時(shí)啟動(dòng)、停止或遷移多個(gè)虛擬機(jī))控制一整組虛擬機(jī)的功能非常有用。Archipel還讓你可以事先安排與虛擬機(jī)有關(guān)的操作,并且使這個(gè)過程實(shí)現(xiàn)自動(dòng)化。

  集群、地理遷移和計(jì)費(fèi)

  為了避免某一臺XMPP服務(wù)器出現(xiàn)單一故障點(diǎn),Archipel支持集群機(jī)制。實(shí)際上,它支持創(chuàng)建多個(gè)站點(diǎn),能夠顯示虛擬機(jī)管理程序主機(jī),還能將駐留在這些主機(jī)上的虛擬機(jī)遷移到其他地方。路線圖還包括針對云計(jì)算功能的模塊擴(kuò)展,包括計(jì)費(fèi)模塊。

  一旦承諾的軟件開發(fā)工具包(SDK)發(fā)布,想必沒有什么阻止得了基于Archipel的管理系統(tǒng)的模塊化、可定制的開發(fā)工作。遺憾的就是,最終版可能要到2011年年底才發(fā)布。如果你喜歡嘗試,又有空余時(shí)間,就可以測試一下,但是你要有耐心,也不能因內(nèi)容寥寥的說明文檔而失去興趣。有人希望,新興的Archipel社區(qū)會迅速壯大起來,借助外部的貢獻(xiàn),擺脫初期困難。

  截至截稿為止,Archipel已經(jīng)絕不僅僅是面向開源虛擬機(jī)管理程序的一款出色的GUI。置身于異構(gòu)虛擬機(jī)環(huán)境的管理員會發(fā)現(xiàn),Archipel是其他基于Web的管理工具之外的一個(gè)非常值得關(guān)注、功能非常強(qiáng)大的選擇。

  如果你喜歡IRC聊天,會發(fā)現(xiàn)社區(qū)、甚至開發(fā)者本身很快就會提供建議和支持——我在撰寫這篇文章時(shí),他們就給予了我大有幫助的一些支持。

      【51CTO.com獨(dú)家譯稿,未經(jīng)授權(quán)謝絕轉(zhuǎn)載!合作媒體轉(zhuǎn)載請注明原文出處及出處!】

  譯文來源: http://www.linux-magazine.com/Issues/2011/130/Archipel?category=13394

 

責(zé)任編輯:何巍 來源: 51CTO
相關(guān)推薦

2011-12-25 15:33:13

ibmdwKVM

2014-09-01 00:00:04

2009-08-03 13:21:33

2019-09-11 08:00:34

開源虛擬機(jī)Type

2012-01-04 00:14:04

ibmdw

2017-01-16 08:53:59

WindowsLinux虛擬化

2012-05-08 14:52:00

2013-07-19 18:09:18

Linux基金會Xen 4.3

2023-02-07 00:24:24

2019-04-03 14:16:25

Type 1Type 2虛擬機(jī)

2012-06-21 09:23:34

虛擬化

2012-05-28 09:30:58

網(wǎng)絡(luò)虛擬化

2009-09-07 21:51:59

2012-05-29 09:29:46

虛擬化網(wǎng)絡(luò)管理員

2024-03-26 07:30:07

Java虛擬機(jī)源文件

2011-04-07 13:40:02

ezjailjail虛擬機(jī)

2014-09-23 12:53:29

開發(fā)技術(shù)周刊

2012-12-14 11:06:11

VDI桌面虛擬化

2013-03-15 14:59:03

VMwarevSphere ESXWorkstation

2010-02-06 17:54:40

Dalvik虛擬機(jī)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號