国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費(fèi)電子書(shū)等14項(xiàng)超值服

開(kāi)通VIP
eucalyptus的開(kāi)源實(shí)現(xiàn)

1.1       EucalyptusEC2的開(kāi)源實(shí)現(xiàn)

Eucalyptus[22]是加利福尼亞大學(xué)的Daniel Nurmi等人實(shí)現(xiàn)的,是一個(gè)用于實(shí)現(xiàn)云計(jì)算的開(kāi)源軟件基礎(chǔ)設(shè)施。EucalyptusAmazon EC2的一個(gè)開(kāi)源實(shí)現(xiàn),它與EC2的商業(yè)服務(wù)接口兼容。Eucalyptus是一個(gè)面向研究社區(qū)的軟件框架,它不同于其他的IaaS云計(jì)算系統(tǒng),能夠在已有的常用資源上進(jìn)行部署,Eucalyptus采用模塊化的設(shè)計(jì),它的組件可以進(jìn)行替換和升級(jí),為研究人員提供了一個(gè)進(jìn)行云計(jì)算研究的很好的平臺(tái)。Eucalyptus的設(shè)計(jì)目標(biāo)是容易擴(kuò)展、安裝和維護(hù)。和EC2一樣,Eucalyptus 依賴于LinuxXen進(jìn)行操作系統(tǒng)虛擬化。本節(jié)介紹Eucalyptus的設(shè)計(jì)、體系結(jié)構(gòu)和組件功能等。目前Eucalyptus系統(tǒng)已經(jīng)提供下載,并且可以在集群和各種個(gè)人計(jì)算環(huán)境中進(jìn)行安裝使用。相信隨著研究的深入,Eucalyptus將引起更多人的關(guān)注。

1. 開(kāi)發(fā)目的

用戶可以通過(guò)多種方式來(lái)使用各種計(jì)算資源和存儲(chǔ)資源,這些資源包括單個(gè)筆記本電腦到分布在世界各地的數(shù)以千計(jì)的計(jì)算節(jié)點(diǎn)。用戶一般基于各種特征如硬件體系結(jié)構(gòu)、內(nèi)存和磁盤(pán)存儲(chǔ)能力、網(wǎng)絡(luò)連接或地理位置來(lái)定位這些資源。一般地,這種資源定位涉及到資源的可用性、應(yīng)用程序的性能分析、軟件服務(wù)要求及行政關(guān)系等復(fù)雜的問(wèn)題。而高性能計(jì)算和網(wǎng)格計(jì)算在資源配置標(biāo)準(zhǔn)方面邁出了一大步[23][25],但是對(duì)于有復(fù)雜資源需求的用戶來(lái)說(shuō)這些標(biāo)準(zhǔn)還是有些累贅。例如,一個(gè)需要大量計(jì)算資源的用戶必須聯(lián)系多個(gè)不同的資源提供者以滿足自己的需求,而這些資源構(gòu)成的資源池中的資源大部分都是異構(gòu)的,使得任務(wù)的性能分析和資源的有效利用變得十分困難。雖然具有專(zhuān)業(yè)知識(shí)的用戶可以接受資源的異構(gòu)性,但是許多用戶喜歡一個(gè)硬件資源、軟件堆棧及編程環(huán)境一致的開(kāi)發(fā)運(yùn)行環(huán)境,這種一致性使得大規(guī)模的應(yīng)用開(kāi)發(fā)和部署變得更容易。

云計(jì)算的基本功能是通過(guò)各種接口提供對(duì)大規(guī)模數(shù)據(jù)和計(jì)算資源的訪問(wèn)。目前的云計(jì)算系統(tǒng)基本遵循相同的原則,即對(duì)資源的獲取和釋放是按需進(jìn)行的,且用戶接口應(yīng)該非常簡(jiǎn)單。此外,云計(jì)算系統(tǒng)所提供的資源的通過(guò)虛擬化技術(shù)向用戶隱藏了大量的信息如資源的物理位置、計(jì)算資源體系結(jié)構(gòu)方面的細(xì)節(jié)等。這種應(yīng)用模式得到了廣泛的認(rèn)同,并為開(kāi)發(fā)者開(kāi)發(fā)可擴(kuò)展的應(yīng)用程序提供了全新的編程目標(biāo)。隨著云計(jì)算系統(tǒng)的數(shù)量和規(guī)模的增長(zhǎng),需要對(duì)云計(jì)算的一些重要問(wèn)題進(jìn)行研究,以使云計(jì)算平臺(tái)朝著預(yù)期的目標(biāo)發(fā)展并取得成功。但是目前大多云計(jì)算產(chǎn)品要么是專(zhuān)有的,要么它們所依靠的大規(guī)模基礎(chǔ)設(shè)施和軟件對(duì)于研究社區(qū)的研究人員是不開(kāi)放的,云計(jì)算研究人員不能夠?qū)ζ溥M(jìn)行任意修改和實(shí)驗(yàn)研究[22]。缺乏研究工具使得許多基本問(wèn)題不能夠解決。

Eucalyptus專(zhuān)門(mén)用于支持云計(jì)算研究和基礎(chǔ)設(shè)施的開(kāi)發(fā)。它基于“基礎(chǔ)設(shè)施即服務(wù)(IaaS)”的思想,不同于Google、Amazon、Salesforce、3Tera等云計(jì)算提供商,它所使用的計(jì)算和存儲(chǔ)基礎(chǔ)設(shè)施如集群和工作站可為學(xué)術(shù)研究組織所用,為他們提供了一個(gè)模塊化的開(kāi)放的研究和試驗(yàn)平臺(tái),該平臺(tái)為用戶提供了運(yùn)行和控制部署在各種虛擬物理資源上的整個(gè)虛擬機(jī)實(shí)例的能力。Eucalyptus的設(shè)計(jì)強(qiáng)調(diào)模塊化,以允許研究者對(duì)云計(jì)算的安全性、可擴(kuò)展性、資源調(diào)度及接口實(shí)現(xiàn)進(jìn)行測(cè)試,有利于廣大研究社區(qū)對(duì)云計(jì)算的研究探索。

2. 設(shè)計(jì)原則

雖然云計(jì)算系統(tǒng)已經(jīng)為用戶提供了一些可用的服務(wù),但是其軟件的封閉性使得云計(jì)算愛(ài)好者很難找到一個(gè)公開(kāi)的靈活框架來(lái)定制自己的實(shí)驗(yàn)。Eucalyptus是一個(gè)面向研究的開(kāi)源云計(jì)算系統(tǒng),為了滿足眾多研究者的上述需求,采用了獨(dú)特的設(shè)計(jì)[22][30]

(1)     Eucalyptus必須能夠在不受其設(shè)計(jì)者操控的軟硬件環(huán)境中進(jìn)行部署和執(zhí)行。

(2)     Eucalyptus 必須是模塊化的,以便不同的研究者進(jìn)行升級(jí)、改造和替換,同時(shí)能夠?qū)崿F(xiàn)最大程度的可擴(kuò)展性。

Eucalyptus的系統(tǒng)架構(gòu)設(shè)計(jì)同時(shí)考慮了上述兩個(gè)原則,并在它們之間做出了權(quán)衡。

3. Eucalyptus與IaaS

雖然大多數(shù)現(xiàn)有的云計(jì)算實(shí)現(xiàn)都遵循靈活性、可擴(kuò)展性和提供動(dòng)態(tài)計(jì)算能力等原則,但是在如何把這種計(jì)算能力提供給用戶上卻存在著很多差異。如亞馬遜的彈性計(jì)算云EC2[23][27]允許用戶根據(jù)需要分配整個(gè)虛擬機(jī),從而提供“基礎(chǔ)設(shè)施即服務(wù)(IaaS)”式的服務(wù)。它允許用戶自行提供操作系統(tǒng)內(nèi)核、基本操作系統(tǒng)軟件、任何用戶級(jí)別的軟件和他們希望運(yùn)行的應(yīng)用程序,IaaS系統(tǒng)只負(fù)責(zé)提供物理資源和實(shí)例化用戶的虛擬機(jī)。Eucalyptus實(shí)現(xiàn)的IaaS的特別之處在于它被設(shè)計(jì)便于在研究環(huán)境中進(jìn)行安裝和維護(hù),以便于修改、實(shí)驗(yàn)和擴(kuò)展。商業(yè)云計(jì)算基礎(chǔ)設(shè)施使用這些能力來(lái)控制本地資源的配置(如硬件版本、操作系統(tǒng)版本、組網(wǎng)和存儲(chǔ)策略等)及訪問(wèn)潛在的昂貴的資源集。在研究環(huán)境下,云計(jì)算基礎(chǔ)設(shè)施不能夠?yàn)槠渌械能浻布?qiáng)加一個(gè)指定的配置,也不能斷言有大量的可用資源集來(lái)保證系統(tǒng)的性能。典型的IaaS系統(tǒng)都有著特定的基礎(chǔ)設(shè)施,并不把可擴(kuò)展性和可移植性作為設(shè)計(jì)目標(biāo),也不把方便管理作為設(shè)計(jì)的首要目標(biāo)。將多種計(jì)算資源聚集到一個(gè)單一的資源池加大了云計(jì)算系統(tǒng)的設(shè)計(jì)難度,很少有開(kāi)源的軟件包能夠安裝和部署在多個(gè)計(jì)算集群上并使它們相互協(xié)作和配合執(zhí)行任務(wù)。因此,EucalyptusIaaS中一個(gè)比較獨(dú)特的例子,也是未來(lái)的多集群開(kāi)源設(shè)計(jì)的先驅(qū)。

IaaS并不是目前商業(yè)部門(mén)實(shí)現(xiàn)云計(jì)算的唯一途徑[22],如AmazonGoogle還分別通過(guò)S3(Simple Storage Service,簡(jiǎn)單存儲(chǔ)服務(wù))App Engine來(lái)實(shí)現(xiàn)DaaS(Data as a Service,數(shù)據(jù)即服務(wù))能力,用戶可以從所提供的計(jì)算資源上訪問(wèn)和存儲(chǔ)大量的數(shù)據(jù)。同樣GoogleApp Engine還進(jìn)行了語(yǔ)言層的抽象,以提供PaaSPlatform as a Service,平臺(tái)即服務(wù))。另外,像Salesforce等公司還提供了SaaSSoftware as a Service,軟件即服務(wù))等。Eucalyptus選擇IaaS作為設(shè)計(jì)思想是因?yàn)閮蓚€(gè)原因。首先,AmazonEC2也許是目前商業(yè)上最成功的云計(jì)算系統(tǒng),而EC2就是實(shí)現(xiàn)了IaaS。Eucalyptus采用了和EC2兼容的接口,這使得測(cè)試相對(duì)成熟的商業(yè)云計(jì)算系統(tǒng)性能成為可能,采用IaaS使Eucalyptus在設(shè)計(jì)和測(cè)試過(guò)程中可以參考EC2。其次,抽象的高層云計(jì)算至少在概念上都依靠相似的IaaS功能,為了進(jìn)一步的研究和部署開(kāi)源軟件,云計(jì)算系統(tǒng)包括IaaS將是必要和有益的。

1.1.2     體系結(jié)構(gòu)

Eucalyptus的設(shè)計(jì)主要考慮兩個(gè)工程目標(biāo):可擴(kuò)展性和非侵入性。Eucalyptus具有簡(jiǎn)單的組織結(jié)構(gòu)和模塊化的設(shè)計(jì),所以擴(kuò)展起來(lái)很方便,且Eucalyptus使用開(kāi)源的Web服務(wù)技術(shù),其內(nèi)部結(jié)構(gòu)一目了然。Eucalyptus的每個(gè)組件由若干個(gè)Web服務(wù)組成,具有定義良好的由WSDL文檔描述的接口,且通過(guò)使用WS-Security策略支持安全通信。Eucalyptus依靠符合行業(yè)標(biāo)準(zhǔn)的軟件包如Axis2、ApacheRampart等。這些實(shí)現(xiàn)技術(shù)的選擇還支持設(shè)計(jì)的第二個(gè)目標(biāo):非侵入(non-intrusive)或覆蓋部署。Eucalyptus并不要求其使用者將他所有的機(jī)器都用于Eucalyptus,也不要求以一種潛在的破壞性的方式來(lái)修改本地軟件配置。它只要求使用Eucalyptus的節(jié)點(diǎn)通過(guò)Xen支持虛擬化執(zhí)行和部署Web服務(wù),只要滿足了上述要求,Eucalyptus就可在不修改基本基礎(chǔ)設(shè)施的情況下進(jìn)行安裝和執(zhí)行。

學(xué)術(shù)研究組織可以訪問(wèn)多種資源如小的集群、工作站池和各種服務(wù)器及臺(tái)式機(jī)。由于IP地址的匱乏和對(duì)完全的通過(guò)因特網(wǎng)訪問(wèn)資源引起的安全方面的擔(dān)憂,系統(tǒng)管理員通常將集群部署在一個(gè)私有的不可路由的網(wǎng)絡(luò)上,該網(wǎng)絡(luò)只有一個(gè)頭結(jié)點(diǎn)負(fù)責(zé)在計(jì)算池和公共英特網(wǎng)之間進(jìn)行路由流量。雖然這種配置通過(guò)使用最少的公共可路由的IP地址來(lái)提供安全保障,但這意味著大部分機(jī)器可以和外部主機(jī)連接的同時(shí)外部機(jī)器卻不能直接和集群內(nèi)部的機(jī)器進(jìn)行通信。比如以下的情形,有兩個(gè)小的Linux集群,一個(gè)小的服務(wù)器池及一個(gè)工作站集合,每集群有一個(gè)具有可公開(kāi)訪問(wèn)的IP地址的前端機(jī)器,而其節(jié)點(diǎn)之間、節(jié)點(diǎn)與集群頭節(jié)點(diǎn)之間通過(guò)專(zhuān)用網(wǎng)絡(luò)相連。服務(wù)器和工作站具有公開(kāi)的IP地址,但是這些工作站都位于防火墻的后面,不能夠從外部連接它們。這種情形下,很顯然安裝一個(gè)完全互聯(lián)的系統(tǒng)是不可能的,因?yàn)樵S多機(jī)器只能夠向外部主機(jī)發(fā)起連接,或者完全的與外界網(wǎng)絡(luò)是隔離的。此外,兩個(gè)集群中的節(jié)點(diǎn)由于位于不同專(zhuān)用網(wǎng)絡(luò)或許還有重疊的IP地址。為了在單一的云計(jì)算系統(tǒng)中使用所有的這些資源,Eucalyptus采用了分層的體系結(jié)構(gòu),如圖 6?13所示[22]。其中,CLC代表云控制器(Cloud Controller),CC代表集群控制器(Cluster Controller),NC代表節(jié)點(diǎn)控制器(Node Controller)。


6?13  Eucalyptus的分層拓?fù)浣Y(jié)構(gòu)

這些分層的組件能夠容易地在常見(jiàn)的網(wǎng)絡(luò)分層結(jié)構(gòu)上進(jìn)行安裝。一個(gè)Eucalyptus部署的典型例子如圖 6?14所示[22]:


6?14  Eucalyptus部署的典型例子

1.1.3     主要構(gòu)件

Eucalyptus的主要構(gòu)件包括節(jié)點(diǎn)控制器、集群控制器和云控制器。

1. 節(jié)點(diǎn)控制器

節(jié)點(diǎn)控制器負(fù)責(zé)管理一個(gè)物理節(jié)點(diǎn)。節(jié)點(diǎn)控制器是運(yùn)行在虛擬機(jī)寄宿的物理資源上的一個(gè)組件,它負(fù)責(zé)啟動(dòng)、檢查、關(guān)閉和清除虛擬機(jī)實(shí)例等工作。一個(gè)典型的Eucalyptus安裝有多個(gè)節(jié)點(diǎn)控制器,但一臺(tái)機(jī)器上只需運(yùn)行一個(gè)節(jié)點(diǎn)控制器,因?yàn)橐粋€(gè)節(jié)點(diǎn)控制器可以管理該節(jié)點(diǎn)上運(yùn)行的多個(gè)虛擬機(jī)實(shí)例。節(jié)點(diǎn)控制器接口由WSDL文檔來(lái)描述,該文檔定義了節(jié)點(diǎn)控制器所支持的實(shí)例數(shù)據(jù)結(jié)構(gòu)和實(shí)例控制操作。這些操作包括runInstance、describeInstance、terminateInatance、describeResourcestartNetwork。對(duì)于實(shí)例的運(yùn)行、描述和終止操作執(zhí)行系統(tǒng)的最小配置,并調(diào)用當(dāng)前的管理程序來(lái)控制和監(jiān)測(cè)運(yùn)行的實(shí)例。describeRescource操作為調(diào)用者返回當(dāng)前物理資源的特性,包括處理器資源、內(nèi)存和磁盤(pán)容量等信息。startNetwork操作用于設(shè)置和配置虛擬以太網(wǎng),有關(guān)內(nèi)容將在下面討論。

2. 集群控制器

典型的集群控制器運(yùn)行在集群的頭結(jié)點(diǎn)或服務(wù)器上,它們都可以訪問(wèn)私有或公共網(wǎng)絡(luò)。一個(gè)集群控制器可以管理多個(gè)節(jié)點(diǎn)控制器。集群控制器負(fù)責(zé)從其所屬的節(jié)點(diǎn)控制器收集節(jié)點(diǎn)的狀態(tài)信息,根據(jù)這些節(jié)點(diǎn)的資源狀態(tài)信息調(diào)度進(jìn)入的虛擬機(jī)實(shí)例執(zhí)行請(qǐng)求到各個(gè)節(jié)點(diǎn)控制器上,并負(fù)責(zé)管理公共和私有實(shí)例網(wǎng)絡(luò)的配置。和節(jié)點(diǎn)控制器一樣,集群控制器接口也是通過(guò)WSDL文檔來(lái)描述的,這些操作包括runInstances、describeInstances、terminateInatancesdescribeResources。描述和終止實(shí)例的操作會(huì)直接傳給相關(guān)節(jié)點(diǎn)控制器。當(dāng)集群控制器接收到一個(gè)runInstances請(qǐng)求后,它執(zhí)行一個(gè)簡(jiǎn)單的調(diào)度任務(wù),該任務(wù)通過(guò)調(diào)用describeResource來(lái)查詢每一個(gè)節(jié)點(diǎn)控制器,選擇第一個(gè)具有足夠空閑資源的節(jié)點(diǎn)控制器來(lái)執(zhí)行實(shí)例運(yùn)行請(qǐng)求。集群控制器還實(shí)現(xiàn)了describeResources操作,該操作將一個(gè)實(shí)例需要占據(jù)的資源作為輸入,并返回可以同時(shí)在其所屬的節(jié)點(diǎn)控制器上執(zhí)行的實(shí)例的個(gè)數(shù)。

3. 云控制器

每一個(gè)Eucalyptus安裝都包括單一的云控制器。云控制器相當(dāng)于系統(tǒng)的中樞神經(jīng),它是用戶的可見(jiàn)入口點(diǎn)和做出全局決定的組件。它負(fù)責(zé)處理進(jìn)入的由用戶發(fā)起的請(qǐng)求或系統(tǒng)管理員發(fā)出的管理請(qǐng)求,做出高層的虛擬機(jī)實(shí)例調(diào)度決定。并且處理服務(wù)等級(jí)協(xié)議和維護(hù)系統(tǒng)和用戶相關(guān)的元數(shù)據(jù)。云控制器由一組服務(wù)組成,這些服務(wù)用于處理用戶請(qǐng)求、驗(yàn)證和維護(hù)系統(tǒng)、用戶元數(shù)據(jù)(虛擬機(jī)映像和SSH密鑰對(duì)等),并可管理和監(jiān)視虛擬機(jī)實(shí)例的運(yùn)行。這些服務(wù)由企業(yè)服務(wù)總線來(lái)配置和管理,通過(guò)企業(yè)服務(wù)總線可以進(jìn)行服務(wù)發(fā)布等操作。Eucalyptus的設(shè)計(jì)強(qiáng)調(diào)透明度和簡(jiǎn)單以便促進(jìn)Eucalyptus的實(shí)驗(yàn)和擴(kuò)展。

為了達(dá)到這一粒度級(jí)別的擴(kuò)展,云控制器的組件包括虛擬機(jī)調(diào)度器、SLA引擎、用戶接口和管理接口等。它們是模塊化的彼此獨(dú)立的組件,對(duì)外提供定義良好的接口,企業(yè)服務(wù)總線ESB負(fù)責(zé)控制和管理它們之間的交互和有機(jī)配合。通過(guò)使用Web服務(wù)和AmazonEC2查詢接口與EC2的客戶端工具互操作,云控制器可以像AmazonEC2一樣進(jìn)行工作。之所以選擇EC2是因?yàn)樗鄬?duì)成熟,有大量的用戶群體且很好的實(shí)現(xiàn)了IaaS。

1.1.4     訪問(wèn)接口

云控制器中的Web服務(wù)接口包有三個(gè)重要的接口:客戶端接口、管理接口和實(shí)例控制接口。

1. 客戶端接口

云控制器的客戶端接口實(shí)質(zhì)上是Eucalyptus內(nèi)部系統(tǒng)接口和外部定義的客戶端接口之間的轉(zhuǎn)換器。例如Amazon提供了一個(gè)描述其服務(wù)的基于Web服務(wù)和SOAP的客戶端接口的WSDL文檔和一個(gè)用于描述基于HTTP查詢的接口的文檔,它們可以通過(guò)云控制器的用戶接口服務(wù)轉(zhuǎn)換成Eucalyptus的內(nèi)部對(duì)象。我們使用JiBX[26]綁定工具來(lái)指定XML元素和Java對(duì)象實(shí)例之間的映射,同理可以使用它來(lái)創(chuàng)建EC2 SOAP消息和Eucalyptus內(nèi)部對(duì)象之間的映射。但查詢接口卻不適合這種模型,主要有以下三個(gè)原因:

(1) 沒(méi)有XML文檔可用。

(2) 認(rèn)證機(jī)制不同,且與采用的WS-Security安全策略相沖突。

(3) 在同種請(qǐng)求的相同域的SOAP請(qǐng)求和查詢請(qǐng)求結(jié)構(gòu)之間存在沖突。

但是由于EC2的查詢接口是SOAP接口的嚴(yán)格子集,Eucalyptus開(kāi)發(fā)了一個(gè)簡(jiǎn)單的綁定框架在有關(guān)注釋的引導(dǎo)下將HTTP參數(shù)名字映射到對(duì)象字段,然后依靠目標(biāo)對(duì)象的注釋來(lái)澄清和修改映射的不一致性,最后JiBX使用命名空間為EC2 SOAP接口的邊界對(duì)象分組。結(jié)果包括兩個(gè)方面:

(1) JiBX驗(yàn)證該對(duì)象,它實(shí)際上是一個(gè)合法的SOAP接口請(qǐng)求,也是一個(gè)合法的EC2客戶端請(qǐng)求。

(2) 分組后的XML文檔可以用來(lái)當(dāng)做SOAP的一部分來(lái)進(jìn)行進(jìn)一步的處理。

2. 管理接口

除了支持主要的任務(wù)如啟動(dòng)和停止一個(gè)實(shí)例外,云計(jì)算基礎(chǔ)設(shè)施還應(yīng)該支持基本的管理任務(wù),如添加和移除用戶及管理磁盤(pán)映像等。Eucalyptus通過(guò)一個(gè)基于Web的接口進(jìn)行管理操作。它由云控制器通過(guò)一個(gè)基于Web的接口或通過(guò)命令行的方式實(shí)現(xiàn),管理接口只有系統(tǒng)管理人員可以看見(jiàn),且管理接口具有唯一性。向Eucalyptus添加用戶可以通過(guò)管理員手動(dòng)的添加或以在線申請(qǐng)驗(yàn)證的方式加入。在線驗(yàn)證方式往往要求用戶提供自己的郵件地址,并點(diǎn)擊系統(tǒng)發(fā)送到郵件中的驗(yàn)證鏈接來(lái)獲取驗(yàn)證,因?yàn)?font face="Times New Roman">Eucalyptus將用戶身份和其郵件地址進(jìn)行了綁定。用戶添加成功后,管理員可以暫時(shí)或永久性的移除該用戶,且管理員可以管理用戶正在運(yùn)行的實(shí)例并可終止這些實(shí)例。

通過(guò)管理入口,還可以將磁盤(pán)映像添加系統(tǒng)中。一個(gè)映像包括與Xen兼容的客戶操作系統(tǒng)內(nèi)核,一個(gè)根文件系統(tǒng)映像及一個(gè)可選的RAM硬盤(pán)映像。添加一個(gè)映像的過(guò)程包括加載這三個(gè)映像文件并給它們命名。管理員可以暫時(shí)或永久性的刪除一個(gè)映像,另外管理員還可以通過(guò)控制器配置文件添加和刪除集群中的節(jié)點(diǎn)。

3. 實(shí)例控制接口

云控制器提供了虛擬機(jī)控制服務(wù)(VmControl Service)來(lái)管理虛擬機(jī)實(shí)例元數(shù)據(jù)的創(chuàng)建。虛擬機(jī)控制器不間斷的維護(hù)一個(gè)基本資源狀態(tài)的簡(jiǎn)單本地描述,如一個(gè)集群控制器潛在的能夠創(chuàng)建的實(shí)例的個(gè)數(shù)。當(dāng)發(fā)起一個(gè)實(shí)例創(chuàng)建請(qǐng)求時(shí),虛擬機(jī)控制器將和云控制器的其他服務(wù)進(jìn)行協(xié)作,將用戶的請(qǐng)求分解成映像、密鑰對(duì)、網(wǎng)絡(luò)和安全組等,并根據(jù)相應(yīng)的元數(shù)據(jù)和資源應(yīng)用配置策略預(yù)先生成一個(gè)解決方案,然后將消息散播至涉及到的集群控制器,集群控制器將調(diào)度這些請(qǐng)求到其所轄節(jié)點(diǎn)控制器,最后由節(jié)點(diǎn)控制器創(chuàng)建虛擬機(jī)實(shí)例來(lái)運(yùn)行用戶作業(yè)和應(yīng)用程序。

1.1.5     服務(wù)等級(jí)協(xié)議

服務(wù)等級(jí)協(xié)議(Service-level agreementSLA)是作為消息處理服務(wù)的擴(kuò)展來(lái)實(shí)現(xiàn)的。消息處理服務(wù)可以檢查、修改、丟棄消息及虛擬機(jī)控制器(VmControl)保存的狀態(tài)。虛擬機(jī)控制器決定要訪問(wèn)的資源并執(zhí)行系統(tǒng)級(jí)或用戶指定的服務(wù)等級(jí)協(xié)議。虛擬機(jī)控制器依靠一個(gè)本地狀態(tài)模型來(lái)做出這些決定,該模型通過(guò)集群控制器獲取其實(shí)例的可用性、配置、虛擬網(wǎng)絡(luò)和注冊(cè)映像的狀態(tài)信息,虛擬機(jī)控制器依靠這些信息及其更新事件來(lái)做出全局服務(wù)決定。Eucalyptus實(shí)現(xiàn)了一個(gè)可擴(kuò)展的SLA模式,它耦合了狀態(tài)模型和事件處理以支持對(duì)SLA的進(jìn)一步定量研究。

虛擬機(jī)控制器依靠本地模型來(lái)做出決策。為了保持模型更新,每一個(gè)云控制器會(huì)以被動(dòng)輪詢的方式取其實(shí)例的狀態(tài),包括實(shí)例的可用性、分配情況、虛擬網(wǎng)絡(luò)及注冊(cè)的映像等。通過(guò)輪詢獲取的信息被當(dāng)成判斷的基準(zhǔn),用戶請(qǐng)求被提交給事務(wù),當(dāng)資源滿足該事務(wù)時(shí)就提交該事務(wù)進(jìn)行處理。然而,當(dāng)由于網(wǎng)絡(luò)問(wèn)題引起信息丟失或資源狀態(tài)改變時(shí),該模型可能變得不一致,從而導(dǎo)致系統(tǒng)同一個(gè)不能滿足的用戶達(dá)成服務(wù)等級(jí)協(xié)議。然而,由于輪詢是半同步的,丟失信息能夠被確定,且模型處于無(wú)效的時(shí)間點(diǎn)也可以被檢測(cè)到。最終,模型在給定時(shí)間段的哪個(gè)時(shí)間點(diǎn)上無(wú)效可以被計(jì)算出來(lái),從而避免模型不一致的情況導(dǎo)致的問(wèn)題。

Eucalyptus已經(jīng)實(shí)現(xiàn)了一個(gè)簡(jiǎn)單卻強(qiáng)大的初步的SLA,它可以使用戶控制其實(shí)例的高層網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)。Eucalyptus使用Amazon EC2提出的概念“區(qū)域”(zone)來(lái)指代由計(jì)算和存儲(chǔ)資源組成的“池”(Pools)或“集群”(Clusters)。區(qū)域是由多個(gè)節(jié)點(diǎn)控制器和單個(gè)集群控制器從邏輯上構(gòu)成的機(jī)器集合。Eucalyptus允許用戶為一個(gè)實(shí)例的執(zhí)行指定一個(gè)區(qū)域配置,該配置提供不同的管理和網(wǎng)絡(luò)性能參數(shù),根據(jù)該配置,一個(gè)實(shí)例集可以在一個(gè)集群或跨集群運(yùn)行,以獲得所要的性能。

考慮到用戶得到的資源數(shù)量及其拓?fù)浣Y(jié)構(gòu)的相對(duì)動(dòng)態(tài)性,Eucalyptus將對(duì)區(qū)域的概念進(jìn)行擴(kuò)展以支持不同的服務(wù)等級(jí)協(xié)議。目前Eucalyptus所提供的區(qū)域允許用戶在執(zhí)行作業(yè)時(shí),可以具有多種選擇,包括根據(jù)服務(wù)等級(jí)協(xié)議獲取指定的集群、選擇空閑的集群、指定單個(gè)及多個(gè)集群來(lái)為自己服務(wù)。

1.1.6     虛擬組網(wǎng)

虛擬機(jī)實(shí)例的互聯(lián)問(wèn)題是構(gòu)建云計(jì)算基礎(chǔ)設(shè)施最重要的工作之一。不同于物理機(jī)器組成的具有嚴(yán)格和復(fù)雜拓?fù)溥壿嫷奈锢砭W(wǎng)絡(luò),虛擬機(jī)實(shí)例組成的網(wǎng)絡(luò)是一個(gè)虛擬化的網(wǎng)絡(luò),通過(guò)虛擬化處理它具有簡(jiǎn)單和易配置等特點(diǎn)。

某個(gè)域內(nèi)的虛擬機(jī)實(shí)例彼此之間應(yīng)有網(wǎng)絡(luò)連接,且它們中至少有一個(gè)虛擬機(jī)實(shí)例和外部公共網(wǎng)絡(luò)相連,以便于為其所有者提供訪問(wèn)入口及與其它域?qū)嵗M(jìn)行交互。由于用戶對(duì)于自己所監(jiān)管的的虛擬機(jī)具有超級(jí)用戶權(quán)限,其可以訪問(wèn)基本的網(wǎng)絡(luò)接口,因此其具有獲取系統(tǒng)IPMAC地址的能力并對(duì)系統(tǒng)網(wǎng)絡(luò)造成干擾。此外,如果兩個(gè)實(shí)例運(yùn)行在同一臺(tái)物理機(jī)器上,虛擬機(jī)用戶可以影響和窺探另外一個(gè)虛擬機(jī)的網(wǎng)絡(luò)包,這將導(dǎo)致安全問(wèn)題。因此在有不同用戶共享的云計(jì)算平臺(tái)上,協(xié)作完成單一任務(wù)的虛擬機(jī)之間應(yīng)該可以通信,而屬于不同用戶的虛擬機(jī)之間應(yīng)該是通信隔離的。

為了解決上述問(wèn)題,每個(gè)虛擬機(jī)提供兩個(gè)虛擬網(wǎng)絡(luò)接口,一個(gè)作為公共接口,一個(gè)稱(chēng)為私有接口。公共接口的作用是和用戶所管轄虛擬機(jī)的外部進(jìn)行通信,或在由服務(wù)等級(jí)協(xié)議定義的可用區(qū)域的實(shí)例之間進(jìn)行通信。在一個(gè)有可用的IP地址的環(huán)境中,這些地址可以在虛擬機(jī)實(shí)例啟動(dòng)時(shí)分配給它們以允許實(shí)例進(jìn)行通信。而在具有支持外部通信路由器的私有網(wǎng)絡(luò)中,虛擬機(jī)實(shí)例進(jìn)行網(wǎng)絡(luò)地址轉(zhuǎn)換后,其公共網(wǎng)絡(luò)接口可以分配一個(gè)有效的私有地址通過(guò)網(wǎng)絡(luò)地址轉(zhuǎn)換的路由器訪問(wèn)外部網(wǎng)絡(luò)。實(shí)例的私有接口只能在跨域的虛擬機(jī)之間進(jìn)行通信,以解決不同虛擬機(jī)實(shí)例運(yùn)行在獨(dú)立的私有網(wǎng)絡(luò)內(nèi)但需要進(jìn)行通信的問(wèn)題。

集群控制器負(fù)責(zé)創(chuàng)建和銷(xiāo)毀實(shí)例虛擬網(wǎng)絡(luò)接口,節(jié)點(diǎn)控制器通過(guò)配置以如下的三種方式建立公共接口網(wǎng)絡(luò):

(1) 使虛擬機(jī)的公共接口直接連接到與物理機(jī)器網(wǎng)絡(luò)相連的以太網(wǎng)網(wǎng)橋軟件上,管理員可以像處理常規(guī)的DHCP請(qǐng)求那樣處理虛擬機(jī)網(wǎng)絡(luò)的DHCP請(qǐng)求。

(2) 允許管理員定義一個(gè)動(dòng)態(tài)的IP地址池和一個(gè)網(wǎng)絡(luò),集群控制器通過(guò)一個(gè)接口連接到該網(wǎng)絡(luò),運(yùn)行在集群控制器上的DHCP服務(wù)器負(fù)責(zé)在實(shí)例啟動(dòng)時(shí)將地址動(dòng)態(tài)的分配給這些實(shí)例。

(3) 定義靜態(tài)的MAC/IP地址對(duì),每個(gè)實(shí)例啟動(dòng)時(shí)系統(tǒng)給其分配一個(gè)空閑的MAC/IP對(duì),實(shí)例終結(jié)后釋放該MAC/IP對(duì)。

實(shí)例的私有接口通過(guò)橋接器連接到一個(gè)被稱(chēng)為虛擬分布式以太網(wǎng)(Virtual Distrubuted Ethernet,VDE[25]的全虛擬以太網(wǎng)系統(tǒng),VDE是一個(gè)以太網(wǎng)協(xié)議的線程級(jí)實(shí)現(xiàn)。VDE網(wǎng)絡(luò)通過(guò)通用的TUN/TAP接口連接到真正的以太網(wǎng)上,TUN/TAP提供了從Linux內(nèi)核到用戶空間的以太網(wǎng)包通信服務(wù)。

一個(gè)VDE[25]網(wǎng)絡(luò)由VDE交換機(jī)和它們之間的電纜連接構(gòu)成,VDE交換機(jī)位于節(jié)點(diǎn)控制器和集群控制器上,VDE交換機(jī)采用生成樹(shù)協(xié)議(spanning tree protocol),它防止環(huán)路的同時(shí)允許冗余存在于網(wǎng)絡(luò)之中。如果沒(méi)有防火墻,VDE網(wǎng)絡(luò)是完全連接,即VDE交換機(jī)和另外的每一個(gè)VDE交換機(jī)都直接相連,有防火墻的情況下,VDE至少和系統(tǒng)中的一個(gè)VDE交換機(jī)相連。

為了保證系統(tǒng)的安全,需要對(duì)實(shí)例實(shí)行網(wǎng)絡(luò)流量隔絕。這些實(shí)例可以是運(yùn)行在相同主機(jī)上,也可以運(yùn)行在同一物理網(wǎng)絡(luò)中的不同機(jī)器上。系統(tǒng)要求任意兩個(gè)實(shí)例之間不能夠相互檢查和修改彼此的網(wǎng)絡(luò)通信,具體方法是用虛擬局域網(wǎng)(VLAN)給屬于特定用戶的實(shí)例集打上網(wǎng)絡(luò)標(biāo)簽,以此來(lái)隔絕和轉(zhuǎn)發(fā)不同的網(wǎng)絡(luò)流量。

參考文獻(xiàn)

[1]      http://hadoop.apache.org/

[2]      http://www.abiquo.com/

[3]      abicloud technical overview, 2009. http://www.slideshare.net/abiquodocs/abicloud-technical-overview.

[4]      http://www.enomaly.com/

[5]      libvirt. Enomaly Elastic Computing Platform (ECP). http://wiki.libvirt.org/page/Enomaly_Elastic_Computing_Platform_(ECP)#Enomaly_Elastic_Computing_Platform_.28ECP.29

[6]      http://www.mongodb.org/display/DOCS/Home

[7]      http://www.10gen.com

[8]      Mongo Architecture. http://www.mongodb.org/display/DOCS/Mongo+Architecture

[9]      http://www.eucalyptus.com/

[10]  D.Nurmi,R.Wolski, C.Grzegorczyk, G.Obertelli, S.Soman, L.Youseff andD.Zagorodnov. The eucalyptus open-source cloud-computing system. InCloud Computing and Applications 2008(CCA08), 2008.

[11]  http://workspace.globus.org/

[12]  Frequently Asked Questions. http://workspace.globus.org/vm/faq.html

[13]  http://www.ibm.com/developerworks/cn/opensource/os-cn-hadoop1/index.html

[14]  http://www.infoq.com/cn/articles/hadoop-intro

[15]  http://cn.hadoop.org/doc/hdfs_design.html

[16]  http://hadoop.apache.org/core/docs/r0.18.2/api/index.html

[17]  Dean, Jeffrey & Ghemawat, Sanjay (2004). "MapReduce: Simplified Data Processing on Large Clusters". Retrieved Apr. 6, 2005

[18]  http://www.ibm.com/developerworks/cn/opensource/os-cn-hadoop1/

[19]  http://wiki.apache.org/hadoop/HBase/HBaseArchitecture

[20]  http://blog.csdn.net/daidodo/archive/2008/02/24/2116761.aspx

[21]  http://tech.ccidnet.com/art/5833/20090318/1713499_1.html

[22]  Daniel Nurmi, Rich Wolski,ect,Eucalyptus : A TechnicalReport on an Elastic Utility Computing Archietcture,http://open.eucalyptus.com/documents/nurmi_et_al-eucalyptus_tech_report-august_2008.pdf

[23]  Amazon.com home page. http://www.amazon.F.Bellard. QEMU, a Fast and Portable Dynamic Translator.Proceedings ofthe USENIX Annual TechnicalConference, FREENIX Track, pages 41–46,2005.

[24]  Amazon elastic compute cloud – http://aws.amazon.com/ec2/.

[25]  Virtual distributed ethernet (VDE) home page – http://vde.sourceforge.net/.

[26]  JiBX home page. http://jibx.sourceforge.net/.

[27]  Amazon Web Services home page. http://aws.amazon.com/.

[28]  Amazon Elastic Compute Cloud (Amazon EC2). http://aws.amazon.com/ec2/.

[29]  TheEucalyptus Open-source Cloud-computing Systemhttp://open.eucalyptus.com/documents/nurmi_et_al-eucalyptus_open_source_cloud_computing_system-cca_2008.pdf

[30]  An Assessment of Eucalyptus Version1.4.  http://dspace.ucalgary.ca/bitstream/ 1880/47206/1/2009-928-07.pdf

[31]  http://workspace.globus.org/

[32]  http://www.enomalism.com/

[33]  http://sector.sourceforge.net/

[34]YunhongGu, Robert Grossman, Sector and Sphere: The Design and Implementationof a High Performance Data Cloud, Theme Issue of the PhilosophicalTransactions of the Royal Society A: Crossing Boundaries: ComputationalScience, E-Science and Global E-Infrastructure, 28 June  2009 vol. 367 no. 1897 2429-2445.
本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
虛擬化管理軟件比較 — 幻燈片
Amazon虛擬化
亞馬遜云計(jì)算平臺(tái)介紹
深度剖析云計(jì)算背后采用的技術(shù)
OpenNebula的架構(gòu)
輕量級(jí) CMDB,重量級(jí)賦能,聊聊 CMDB 建設(shè)中的痛點(diǎn)與經(jīng)驗(yàn)
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服