OpenStack(New)方案_第1頁(yè)
OpenStack(New)方案_第2頁(yè)
OpenStack(New)方案_第3頁(yè)
OpenStack(New)方案_第4頁(yè)
OpenStack(New)方案_第5頁(yè)
已閱讀5頁(yè),還剩39頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、天云軟件探究路線一OpenStack發(fā)展沿革二OpenStack基礎(chǔ)技術(shù)三OpenStack架構(gòu)詳解四OpenStack項(xiàng)目分解五OpenStack部署方式六相關(guān)參考?發(fā)展沿革云網(wǎng)絡(luò)速度安全性控制力技術(shù)積累 傳統(tǒng)軟件兼容性 隔離基本的要求 構(gòu)建、部署類型OpenStack起源OpenStack是一個(gè)由美國(guó)國(guó)家航空航天局(NASA)和Rackspace合作研發(fā),并發(fā)起的,以Apache許可證授權(quán)的自由軟件和開(kāi)放源代碼項(xiàng)目。它是一個(gè)開(kāi)源的云計(jì)算管理平臺(tái)項(xiàng)目,由幾個(gè)主要的組件組合起來(lái)完成具體工作。OpenStack支持幾乎所有類型的云環(huán)境,項(xiàng)目目標(biāo)是提供實(shí)施簡(jiǎn)單、可大規(guī)模擴(kuò)展、豐富、標(biāo)準(zhǔn)統(tǒng)一的云計(jì)算

2、管理平臺(tái)。OpenStack通過(guò)各種互補(bǔ)的服務(wù)提供了基礎(chǔ)設(shè)施即服務(wù)(IaaS)的解決方案,每個(gè)服務(wù)提供API以進(jìn)行集成。OpenStack歷程SwiftGlanceNovaCinderKeystoneLINUXLinuxHeatORCHESTRATIONCeilometerMEASUREMENT SERVICEHorizonDASHBOARDTroveDATABASE2010.102011.22015.102015.42011.42011.9AUSTINBEXARCACTUSDIABLOKILOLIBERTYE-J EdtionOpenstack發(fā)展至今已滿5年,從當(dāng)初的“小項(xiàng)目”,現(xiàn)已經(jīng)發(fā)展

3、成為Apache頂級(jí)項(xiàng)目之一。當(dāng)初只有“NOVA”和“SWIFT”兩個(gè)項(xiàng)目,在后續(xù)的發(fā)展中,逐漸把功能擴(kuò)展,形成今天我們看到的每一個(gè)項(xiàng)目。探究路線一OpenStack發(fā)展沿革二OpenStack基礎(chǔ)技術(shù)三OpenStack架構(gòu)詳解四OpenStack項(xiàng)目分解五OpenStack部署方式六相關(guān)參考虛擬化思想應(yīng)用程序函數(shù)庫(kù)操作系統(tǒng)硬件API抽象層硬件抽象層計(jì)算機(jī)系統(tǒng)層次結(jié)構(gòu)每一層只需要考慮本層的設(shè)計(jì)以及相鄰層間的交互接口,從而大大減低系統(tǒng)設(shè)計(jì)的復(fù)雜性,提高了軟件的移植性。依據(jù)上層次的劃分,在不同層次的虛擬化就可以帶來(lái)不同的虛擬化概念。對(duì)于云計(jì)算而言,更關(guān)心硬件抽象層上的虛擬化。虛擬化層應(yīng)用程序操作

4、系統(tǒng)硬件虛擬機(jī)1虛擬硬件抽象層應(yīng)用程序操作系統(tǒng)虛擬機(jī)2虛擬硬件抽象層硬件抽象層系統(tǒng)虛擬化這樣的硬件抽象層上的虛擬化又被稱為系統(tǒng)虛擬化,每個(gè)虛擬出來(lái)的計(jì)算機(jī)系統(tǒng)(簡(jiǎn)稱為虛擬機(jī),也叫客戶機(jī))都擁有自己的虛擬硬件,如CPU、內(nèi)存和設(shè)備等,并提供獨(dú)立的虛擬機(jī)執(zhí)行環(huán)境。通過(guò)虛擬機(jī)控制器(Virtual Machine Monitor,VMM,也可稱為Hypervisor)的模擬。虛擬化是一個(gè)廣義的術(shù)語(yǔ),它既包括將一臺(tái)物理設(shè)備虛擬成多臺(tái)邏輯設(shè)備(一虛多),也包括將多臺(tái)物理設(shè)備虛擬成一臺(tái)邏輯設(shè)備使用(多虛一),目前業(yè)界主流的虛擬化包括服務(wù)器虛擬化、存儲(chǔ)虛擬化與網(wǎng)絡(luò)虛擬化。虛擬化技術(shù)完全虛擬化完全虛擬化:使用

5、hypervisor軟件,在虛擬服務(wù)器和底層硬件之間建立一個(gè)抽象層。VMware和微軟的VirtualPC是代表該方法的兩個(gè)商用產(chǎn)品,而基于核心的虛擬機(jī)(KVM)是面向Linux系統(tǒng)的開(kāi)源產(chǎn)品。hypervisor可以捕獲CPU指令,為指令訪問(wèn)硬件控制器和外設(shè)充當(dāng)中介。因而,完全虛擬化技術(shù)幾乎能讓任何一款操作系統(tǒng)不用改動(dòng)就能安裝到虛擬服務(wù)器上,而它們不知道自己運(yùn)行在虛擬化環(huán)境下。主要缺點(diǎn)是,hypervisor給處理器帶來(lái)開(kāi)銷。準(zhǔn)虛擬化:準(zhǔn)虛擬化:完全虛擬化是處理器密集型技術(shù),因?yàn)樗骽ypervisor管理各個(gè)虛擬服務(wù)器,并讓它們彼此獨(dú)立。減輕這種負(fù)擔(dān)的一種方法就是,改動(dòng)客戶操作系統(tǒng),讓它

6、以為自己運(yùn)行在虛擬環(huán)境下,能夠與hypervisor協(xié)同工作。這種方法就叫準(zhǔn)虛擬化(para-virtualization)。準(zhǔn)虛擬化技術(shù)的優(yōu)點(diǎn)是性能高。經(jīng)過(guò)準(zhǔn)虛擬化處理的服務(wù)器可與hypervisor協(xié)同工作,其響應(yīng)能力幾乎不亞于未經(jīng)過(guò)虛擬化處理的服務(wù)器。系統(tǒng)虛擬化系統(tǒng)虛擬化:操作系統(tǒng)層的虛擬化而言,沒(méi)有獨(dú)立的hypervisor層。主機(jī)操作系統(tǒng)本身就負(fù)責(zé)在多個(gè)虛擬服務(wù)器之間分配硬件資源,并且讓這些服務(wù)器彼此獨(dú)立。一個(gè)明顯的區(qū)別是,如果使用操作系統(tǒng)層虛擬化,所有虛擬服務(wù)器必須運(yùn)行同一操作系統(tǒng)?;A(chǔ)技術(shù)虛擬化實(shí)現(xiàn)硬件虛擬化技術(shù)多用于小型機(jī)分區(qū)中,硬件資源被劃分成若干個(gè)分區(qū),每個(gè)分區(qū)享有獨(dú)立的C

7、PU、內(nèi)存,并安裝獨(dú)立的操作系統(tǒng)。硬件虛擬化技術(shù)與具體硬件服務(wù)器捆綁。虛擬化軟件直接運(yùn)行在裸硬件上充當(dāng)主機(jī)操作系統(tǒng),而由虛擬化軟件管理的虛擬服務(wù)器運(yùn)行客戶端操作系統(tǒng)(guest OS)。虛擬化軟件可以捕獲CPU指令,為指令訪問(wèn)硬件控制器和外設(shè)充當(dāng)中介。因而,完全虛擬化技術(shù)幾乎能讓任何一款操作系統(tǒng)不用改動(dòng)就能安裝到虛擬服務(wù)器上,而它們也并不知道自己運(yùn)行在虛擬化環(huán)境下。探究路線一OpenStack發(fā)展沿革二OpenStack基礎(chǔ)技術(shù)三OpenStack架構(gòu)詳解四OpenStack項(xiàng)目分解五OpenStack部署方式六相關(guān)參考11OpenStack Services OverviewHigher-l

8、evel services Orchestration Heat Orchestrates multiple composite cloud applications by using either the native HOT template format or the AWS CloudFormation template format, through both an OpenStack-native REST API and a CloudFormation-compatible Query API. Database service Trove Provides scalable

9、and reliable Cloud Database-as-a-Service functionality for both relational and non-relational database engines. Data processing service Sahara Provides capabilties to provision and scale Hadoop clusters in OpenStack by specifying parameters like Hadoop version, cluster topology and nodes hardware de

10、tails. Service Project Name Description Dashboard Horizon Provides a web-based self-service portal to interact with underlying OpenStack services, such as launching an instance, assigning IP addresses and configuring access controls. Compute Nova Manages the lifecycle of compute instances in an Open

11、Stack environ- ment. Responsibilities include spawning, scheduling and decommis- sioning of virtual machines on demand. Networking Neutron Enables Network-Connectivity-as-a-Service for other OpenStack services, such as OpenStack Compute. Provides an API for users to define networks and the attachmen

12、ts into them. Has a pluggable architecture that supports many popular networking vendors and technolo- gies. Storage Object Storage Swift Stores and retrieves arbitrary unstructured data objects via a RESTful, HTTP based API. It is highly fault tolerant with its data replication and scale-out archit

13、ecture. Its implementation is not like a file server with mountable directories. In this case, it writes objects and files to multiple drives, ensuring the data is replicated across a server cluster. Block Storage Cinder Provides persistent block storage to running instances. Its pluggable driver ar

14、chitecture facilitates the creation and management of block storage devices. Shared services Identity service Keystone Provides an authentication and authorization service for other OpenStack services. Provides a catalog of endpoints for all OpenStack services. Image service Glance Stores and retrie

15、ves virtual machine disk images. OpenStack Compute makes use of this during instance provisioning. Telemetry Ceilometer Monitors and meters the OpenStack cloud for billing, benchmarking, scalability, and statistical purposes. OpenStack Conceptual Architecture(kilo) VMsNovaGlanceNeutronIronicTroveHea

16、tSaharaSwiftCinderKeystoneCeilomrterHorizonOpenStack通用技術(shù)即Advanced Message Queuing Protocol,一個(gè)提供統(tǒng)一消息服務(wù)的應(yīng)用層標(biāo)準(zhǔn)高級(jí)消息隊(duì)列協(xié)議,是應(yīng)用層協(xié)議的一個(gè)開(kāi)放標(biāo)準(zhǔn),為面向消息的中間件設(shè)計(jì)。基于此協(xié)議的客戶端與消息中間件可傳遞消息,并不受客戶端/中間件不同產(chǎn)品,不同開(kāi)發(fā)語(yǔ)言等條件的限制。Erlang中的實(shí)現(xiàn)有 RabbitMQ等。n消息總線(AMQP)nSQLAlchemy和數(shù)據(jù)庫(kù)(Shane)nRESTful和WSGInEventletnOpenStack通用庫(kù)OsloSQLAlchemy是Pyth

17、on編程語(yǔ)言下的一款開(kāi)源軟件。提供了SQL工具包及對(duì)象關(guān)系映射(ORM)工具,使用MIT許可證發(fā)行。SQLAlchemy“采用簡(jiǎn)單的Python語(yǔ)言,為高效和高性能的數(shù)據(jù)庫(kù)訪問(wèn)設(shè)計(jì),實(shí)現(xiàn)了完整的企業(yè)級(jí)持久模型”。SQLAlchemy的理念是,SQL數(shù)據(jù)庫(kù)的量級(jí)和性能重要于對(duì)象集合;而對(duì)象集合的抽象又重要于表和行。因此,SQLAlchmey采用了類似于Java里Hibernate的數(shù)據(jù)映射模型,而不是其他ORM框架采用的Active Record模型。不過(guò),Elixir和declarative等可選插件可以讓用戶使用聲明語(yǔ)法。REST(英文:Representational State Tran

18、sfer,簡(jiǎn)稱REST)描述了一個(gè)架構(gòu)樣式的網(wǎng)絡(luò)系統(tǒng),在REST中,每一個(gè)對(duì)象都是通過(guò)URL來(lái)表示的,對(duì)象用戶負(fù)責(zé)將狀態(tài)信息打包進(jìn)每一條消息內(nèi),以便對(duì)象的處理總是無(wú)狀態(tài)的。WSGI是Web Server Gateway Interface的縮寫(xiě)。以層的角度來(lái)看,WSGI所在層的位置低于CGI。但與CGI不同的是WSGI具有很強(qiáng)的伸縮性且能運(yùn)行于多線程或多進(jìn)程的環(huán)境下,這是因?yàn)閃SGI只是一份標(biāo)準(zhǔn)并沒(méi)有定義如何去實(shí)現(xiàn)。實(shí)際上WSGI并非CGI,因?yàn)槠湮挥趙eb應(yīng)用程序與web服務(wù)器之間,而web服務(wù)器可以是CGI,mod_python(現(xiàn)通常使用mod_wsgi代替),F(xiàn)astCGI或者是一個(gè)定

19、義了WSGI標(biāo)準(zhǔn)的web服務(wù)器就像python標(biāo)準(zhǔn)庫(kù)提供的獨(dú)立WSGI服務(wù)器稱為wsgiref。Eventlet是一個(gè)用來(lái)處理和網(wǎng)絡(luò)相關(guān)的python庫(kù)函數(shù),而且可以通過(guò)協(xié)程來(lái)實(shí)現(xiàn)并發(fā),在eventlet里,把“協(xié)程”叫做greenthread(綠色線程)。所謂并發(fā),就是開(kāi)啟了多個(gè)greenthread,并且對(duì)這些greenthread進(jìn)行管理,以實(shí)現(xiàn)非阻塞式的I/O。顧名思義,Oslo庫(kù)中包含了許多通用的可復(fù)用的代碼和功能,此部分的內(nèi)容也在不斷增加,某一部分的代碼在OpenStack發(fā)展中,需要重復(fù)的使用,這部分便可以申請(qǐng)?jiān)谏鐓^(qū)里“孵化”,直到審核通過(guò)時(shí)就可以加到這個(gè)通用庫(kù)中。探究路線一Op

20、enStack發(fā)展沿革二OpenStack基礎(chǔ)技術(shù)三OpenStack架構(gòu)詳解四OpenStack項(xiàng)目分解五OpenStack部署方式六相關(guān)參考15OpenStack項(xiàng)目結(jié)構(gòu)OpenStack能幫我們建立自己的IaaS,提供類似AmazonWebService的服務(wù)給客戶。為實(shí)現(xiàn)這一點(diǎn),我們需要提供幾個(gè)高級(jí)特性:允許應(yīng)用擁有者注冊(cè)云服務(wù),查看運(yùn)用和計(jì)費(fèi)情況;允許Developers/DevOpsfolks創(chuàng)建和存儲(chǔ)他們應(yīng)用的自定義鏡像;允許他們啟動(dòng)、監(jiān)控和終止實(shí)例;允許CloudOperator配置和操作基礎(chǔ)架構(gòu)OpenStack Core Services提供云計(jì)算的網(wǎng)絡(luò)虛擬化技術(shù),為Ope

21、nStack其他服務(wù)提供網(wǎng)絡(luò)連接服務(wù)。為用戶提供接口,可以定義Network、Subnet、Router,配置DHCP、DNS、負(fù)載均衡、L3服務(wù),網(wǎng)絡(luò)支持GRE、VLAN。插件架構(gòu)支持許多主流的網(wǎng)絡(luò)廠家和技術(shù)。 自Folsom版本集成到項(xiàng)目中。一套控制器,用于為單個(gè)用戶或使用群組管理虛擬機(jī)實(shí)例的整個(gè)生命周期,根據(jù)用戶需求來(lái)提供虛擬服務(wù)。負(fù)責(zé)虛擬機(jī)創(chuàng)建、開(kāi)機(jī)、關(guān)機(jī)、掛起、暫停、調(diào)整、遷移、重啟、銷毀等操作,配置CPU、內(nèi)存等信息規(guī)格。 自Austin版本集成到項(xiàng)目中。一套用于在大規(guī)??蓴U(kuò)展系統(tǒng)中通過(guò)內(nèi)置冗余及高容錯(cuò)機(jī)制實(shí)現(xiàn)對(duì)象存儲(chǔ)的系統(tǒng),允許進(jìn)行存儲(chǔ)或者檢索文件??蔀镚lance提供鏡像存儲(chǔ),

22、為Cinder提供卷備份服務(wù)。 自Austin版本集成到項(xiàng)目中Cinder接口提供了一些標(biāo)準(zhǔn)功能,允許創(chuàng)建和附加塊設(shè)備到虛擬機(jī),如“創(chuàng)建卷”,“刪除卷”和“附加卷”。還有更多高級(jí)的功能,支持?jǐn)U展容量的能力,快照和創(chuàng)建虛擬機(jī)鏡像克隆。 自Folsom版本集成到項(xiàng)目中。一套虛擬機(jī)鏡像查找及檢索系統(tǒng),支持多種虛擬機(jī)鏡像格式(AKI、AMI、ARI、ISO、QCOW2、Raw、VDI、VHD、VMDK),有創(chuàng)建上傳鏡像、刪除鏡像、編輯鏡像基本信息的功能。 自Bexar版本集成到項(xiàng)目中。為OpenStack其他服務(wù)提供身份驗(yàn)證、服務(wù)規(guī)則和服務(wù)令牌的功能,管理Domains、Projects、Users、

23、Groups、Roles。 自Essex版本集成到項(xiàng)目中。OpenStack Optional Services為用戶在OpenStack的環(huán)境提供可擴(kuò)展和可靠的關(guān)系和非關(guān)系數(shù)據(jù)庫(kù)引擎服務(wù)。自Icehouse版本集成到項(xiàng)目中。提供了一種通過(guò)模板定義的協(xié)同部署方式,實(shí)現(xiàn)云基礎(chǔ)設(shè)施軟件運(yùn)行環(huán)境(計(jì)算、存儲(chǔ)和網(wǎng)絡(luò)資源)的自動(dòng)化部署。自Havana版本集成到項(xiàng)目中。OpenStack中各種服務(wù)的Web管理門(mén)戶,用于簡(jiǎn)化用戶對(duì)服務(wù)的操作,例如:?jiǎn)?dòng)實(shí)例、分配IP地址、配置訪問(wèn)控制等。自Essex版本集成到項(xiàng)目中。像一個(gè)漏斗一樣,能把OpenStack內(nèi)部發(fā)生的幾乎所有的事件都收集起來(lái),然后為計(jì)費(fèi)和監(jiān)控以

24、及其它服務(wù)提供數(shù)據(jù)支撐。自Havana版本集成到項(xiàng)目中。為用戶在OpenStack的環(huán)境提供對(duì)分布式彈性計(jì)算的支持。功能包括:域和備案管理的 REST API;多租戶;集成了 Keystone 認(rèn)證;在框架中整合了 Nova 和 Neutron 通知支持 PowerDNS 和 Bind9開(kāi)箱OpenStack Manila文件共享服務(wù)目前正在快速成長(zhǎng)中,借助共享文件系統(tǒng),增加共享實(shí)際上直接將Guest VM連接至了后端。在部署和管理BareMetal的過(guò)程中需要存儲(chǔ)的信息和部署虛擬機(jī)是不同的,為了避免使用Nova API來(lái)獲取這些信息,因此將BareMetal的實(shí)現(xiàn)剝離稱為獨(dú)立的項(xiàng)目。用于 W

25、eb 開(kāi)發(fā)者的多租戶云消息服務(wù),包括了Amazon的SQS產(chǎn)品理念,完全基于RESTful 的 API,開(kāi)發(fā)者可通過(guò)不同的通信模式在 SaaS 和移動(dòng)應(yīng)用的不同組件之間進(jìn)行通信。Barbican 是為安全儲(chǔ)存、配置和隱私管理而設(shè)計(jì)的REST API,它主要目的是使用于所有環(huán)境,包括大規(guī)模臨時(shí)云。它是組成 CloudKeep 生態(tài)系統(tǒng)應(yīng)用程序的一部分。18OpenStack Logical Architecture (Kilo)19OpenStack 典型架構(gòu)OpenStack 架構(gòu)一直努力使每個(gè)項(xiàng)目盡可能的獨(dú)立,這使得用戶可以選擇只部署一個(gè)功能子集,并將它與提供類似或互補(bǔ)功能的其他系統(tǒng)和技術(shù)相

26、集成。然而,這種獨(dú)立性不應(yīng)掩蓋這樣一個(gè)事實(shí):全功能的私有云很可能需要使用幾乎所有功能才可以正常運(yùn)作,而且各元素需要被緊密地集成。甚至許多功能模塊的實(shí)現(xiàn)需要其他開(kāi)源軟件的支持。典型的 OpenStack 實(shí)現(xiàn)將會(huì)集成大多數(shù)的項(xiàng)目,其之間關(guān)系架構(gòu)如下圖,也是本次探討重點(diǎn)關(guān)注的模塊。Nova 被認(rèn)為是 OpenStack 的核心,負(fù)責(zé)處理工作負(fù)載的流程。它的計(jì)算實(shí)例通常需要進(jìn)行某種形式的持久存儲(chǔ),它可以是基于塊的(Cinder)或基于對(duì)象的(Swift)。Nova 還需要一個(gè)鏡像來(lái)啟動(dòng)一個(gè)實(shí)例。Glance 將會(huì)處理這個(gè)請(qǐng)求,它可以有選擇地使用 Swift 作為其存儲(chǔ)后端。三個(gè)元素將會(huì)與系統(tǒng)中的所有

27、組件進(jìn)行交互。Horizon 是圖形用戶界面,管理員可以很容易地使用它來(lái)管理所有項(xiàng)目。Keystone 處理授權(quán)用戶的管理,Neutron 定義提供組件之間連接的網(wǎng)絡(luò)。NovaHorizonKeystoneNeutronGlanceSwiftCinder20OpenStack Operations ArchitectureNova-計(jì)算服務(wù)OpenStack Compute (Nova) 控制云計(jì)算架構(gòu)(基礎(chǔ)架構(gòu)服務(wù)的核心組件)。它用 Python 編寫(xiě)的,創(chuàng)建一個(gè)抽象層,讓 CPU、內(nèi)存、網(wǎng)絡(luò)適配器和硬盤(pán)驅(qū)動(dòng)器等商品服務(wù)器資源實(shí)現(xiàn)虛擬化,并具有提高利用率和自動(dòng)化的功能。它的實(shí)時(shí) VM 管理具

28、有啟動(dòng)、調(diào)整大小、掛起、停止和重新引導(dǎo)的功能,這是通過(guò)集成一組受支持的虛擬機(jī)管理程序來(lái)實(shí)現(xiàn)的。還有一個(gè)機(jī)制可以在計(jì)算節(jié)點(diǎn)上緩存 VM 鏡像,以實(shí)現(xiàn)更快的配置。在運(yùn)行鏡像時(shí),可以通過(guò)應(yīng)用程序編程接口(API)以編程方式存儲(chǔ)和管理文件。nova-nova-apiapi:API服務(wù)器提供了云設(shè)施與外界交互的接口,它是外界用戶對(duì)云實(shí)施管理的唯一通道。通過(guò)使用web服務(wù)來(lái)調(diào)用各種EC2的API,接著API服務(wù)器便通過(guò)消息隊(duì)列把請(qǐng)求送達(dá)至云內(nèi)目標(biāo)設(shè)施進(jìn)行處理。作為對(duì)EC2-api的替代,用戶也可以使用OpenStack的原生API,我們把它叫做“OpenStack API”。Queue:Queue:Ope

29、nStack內(nèi)部在遵循AMQP(高級(jí)消息隊(duì)列協(xié)議)的基礎(chǔ)上采用消息隊(duì)列進(jìn)行通信。Nova對(duì)請(qǐng)求應(yīng)答進(jìn)行異步調(diào)用,當(dāng)請(qǐng)求接收后便則立即觸發(fā)一個(gè)回調(diào)。由于使用了異步通信,不會(huì)有用戶的動(dòng)作被長(zhǎng)置于等待狀態(tài)。例如,啟動(dòng)一個(gè)實(shí)例或上傳一份鏡像的過(guò)程較為耗時(shí),API調(diào)用就將等待返回結(jié)果而不影響其它操作,在此異步通信起到了很大作用,使整個(gè)系統(tǒng)變得更加高效。nova-computenova-compute:運(yùn)算工作站的主要任務(wù)是管理實(shí)例的整個(gè)生命周期。他們通過(guò)消息隊(duì)列接收請(qǐng)求并執(zhí)行,從而對(duì)實(shí)例進(jìn)行各種操作。在典型實(shí)際生產(chǎn)環(huán)境下,會(huì)架設(shè)許多運(yùn)算工作站,根據(jù)調(diào)度算法,一個(gè)實(shí)例可以在可用的任意一臺(tái)運(yùn)算工作站上部署。

30、 nova-scheduler:nova-scheduler:調(diào)度器負(fù)責(zé)把nova-API調(diào)用送達(dá)給目標(biāo)。調(diào)度器以名為“nova-schedule”的守護(hù)進(jìn)程方式運(yùn)行,并根據(jù)調(diào)度算法從可用資源池中恰當(dāng)?shù)剡x擇運(yùn)算服務(wù)器。有很多因素都可以影響調(diào)度結(jié)果,比如負(fù)載、內(nèi)存、子節(jié)點(diǎn)的遠(yuǎn)近、CPU架構(gòu)等等。強(qiáng)大的是nova調(diào)度器采用的是可插入式架構(gòu)。Neutron-網(wǎng)絡(luò)服務(wù)Networking (Neutron) 之前被稱為 Quantum,它提供了管理局域網(wǎng)的能力,具有適用于虛擬局域網(wǎng)(VLAN)、動(dòng)態(tài)主機(jī)配置協(xié)議和 Internet Protocol 版本 6 的一些功能。用戶可以定義網(wǎng)絡(luò)、子網(wǎng)和路由器

31、,以配置其內(nèi)部拓?fù)?,然后向這些網(wǎng)絡(luò)分配 IP 地址和 VLAN。浮動(dòng) IP 地址允許用戶向 VM 分配(和再分配)固定的外部 IP 地址。虛擬網(wǎng)絡(luò)管理面向租戶的網(wǎng)絡(luò)管理(SDN)高度可配置的plug-in架構(gòu)基于 REST 的APISwift 對(duì)象存儲(chǔ)服務(wù)可靠對(duì)象存儲(chǔ)無(wú)單點(diǎn)故障支持 S3 API海量對(duì)象安全存儲(chǔ)大文件(對(duì)象)存儲(chǔ)數(shù)據(jù)冗余管理歸檔能力處理大數(shù)據(jù)集為虛擬機(jī)和云應(yīng)用提供數(shù)據(jù)容器處理流媒體備份與歸檔良好的可伸縮性 OpenStack Object Storage (Swift) 以 Rackspace Cloud Files 產(chǎn)品為基礎(chǔ),對(duì)于向外擴(kuò)展的存儲(chǔ)來(lái)說(shuō),它是理想的冗余存儲(chǔ)系統(tǒng)。

32、OpenStack 確保了在其池中的所有設(shè)備上的數(shù)據(jù)復(fù)制和分發(fā),讓用戶可以利用商用硬盤(pán)和服務(wù)器,而不是更昂貴的設(shè)備。如果某個(gè)組件發(fā)生故障,那么 OpenStack 可以將來(lái)自其他活動(dòng)系統(tǒng)的內(nèi)容補(bǔ)充給新的集群成員。該架構(gòu)還支持橫向擴(kuò)展,因?yàn)樗苋菀赘鶕?jù)需要利用其他服務(wù)器來(lái)擴(kuò)展存儲(chǔ)集群。Swift 是一個(gè)分布式存儲(chǔ)系統(tǒng),主要用于靜態(tài)數(shù)據(jù),比如 VM 鏡像、備份和存檔。該軟件將文件和其他對(duì)象寫(xiě)入可能分布在一個(gè)或多個(gè)數(shù)據(jù)中心內(nèi)的多個(gè)服務(wù)器上的一組磁盤(pán)驅(qū)動(dòng)器,在整個(gè)集群內(nèi)確保數(shù)據(jù)復(fù)制和完整性。Cinder 塊存儲(chǔ)服務(wù)OpenStack Block Storage (Cinder) 管理計(jì)算實(shí)例所使用的塊

33、級(jí)存儲(chǔ)。塊存儲(chǔ)非常適用于有嚴(yán)格性能約束的場(chǎng)景,比如數(shù)據(jù)庫(kù)和文件系統(tǒng)。與 Cinder 配合使用的最常見(jiàn)存儲(chǔ)是 Linux 服務(wù)器存儲(chǔ),但也有一些面向其他平臺(tái)的插件,其中包括 Ceph、NetApp、Nexenta 和 SolidFire。云用戶可通過(guò)儀表板管理他們的存儲(chǔ)需求。該系統(tǒng)提供了用于創(chuàng)建塊設(shè)備、附加塊設(shè)備到服務(wù)器和從服務(wù)器分離塊設(shè)備的接口。另外,也可以通過(guò)使用快照功能來(lái)備份 Cinder 卷。提供類似EBS 的塊存儲(chǔ)減少Nova的復(fù)雜性,降低Nova的負(fù)載支持多種后端存儲(chǔ)Glance 鏡像服務(wù)OpenStack Image Service (Glance) 為 VM 鏡像(尤其是為啟動(dòng)

34、 VM 實(shí)例中所使用的系統(tǒng)磁盤(pán))提供了支持。除了發(fā)現(xiàn)、注冊(cè)和激活服務(wù)之外,它還有快照和備份功能。Glance 鏡像可以充當(dāng)模板,快速并且一致地部署新的服務(wù)器。API 服務(wù)器暴露了 Representational State Transfer(REST,具象狀態(tài)傳輸)接口,用戶可以利用它來(lái)列出并獲取分配給一組可擴(kuò)展后端存儲(chǔ)(包括 OpenStack Object Storage)的虛擬磁盤(pán)鏡像。用戶可采用多種格式為服務(wù)提供私有和公共鏡像,這些格式包括 VHD(Microsoft( Hyper-V)、VDI(VirtualBox)、VMDK(VMware)、qcow2(Qemu/基于內(nèi)核的虛擬機(jī)

35、),以及 Open Virtualization Format。其他一些功能包括注冊(cè)新的虛擬磁盤(pán)鏡像、查詢已公開(kāi)可用的磁盤(pán)鏡像的信息,以及流式傳輸虛擬磁盤(pán)鏡像等。鏡像注冊(cè)、查詢基于角色的訪問(wèn)控制支持多格式的鏡像(raw,qcow2 e.g.)支持多種后端存儲(chǔ)(S3, Swift,File system e.g.)Keystone 身份認(rèn)證服務(wù)Keystone采用兩種授權(quán)方式,一種基于用戶名/密碼,另一種基于令牌(Token)。除此之外,Keystone提供以下三種服務(wù):令牌服務(wù):含有授權(quán)用戶的授權(quán)信息目錄服務(wù):含有用戶合法操作的可用服務(wù)列表策略服務(wù):利用Keystone具體指定用戶或群組某些訪

36、問(wèn)權(quán)限 OpenStack Identity Management (Keystone) 管理用戶目錄以及用戶可以訪問(wèn)的 OpenStack 服務(wù)的目錄。其目的是跨所有 OpenStack 組件暴露一個(gè)中央身份驗(yàn)證機(jī)制。Keystone 本身沒(méi)有提供身份驗(yàn)證,它可以集成其他各種目錄服務(wù),如 Pluggable Authentication Module、Lightweight Directory Access Protocol (LDAP) 或 OAuth。通過(guò)這些插件,它能夠?qū)崿F(xiàn)多種形式的身份驗(yàn)證,包括簡(jiǎn)單的用戶名密碼憑據(jù),以及復(fù)雜的多因子系統(tǒng)。OpenStack Identity 使得管理

37、員配置的集中式策略能夠跨用戶和系統(tǒng)得到應(yīng)用。他們可以創(chuàng)建項(xiàng)目和用戶并將其分配給管理域,定義基于角色的資源權(quán)限,并與其他目錄(如 LDAP)集成。目錄包含由單一注冊(cè)表中所有已部署服務(wù)組成的一個(gè)列表。用戶和工具可以檢索一個(gè)服務(wù)列表,它們能夠以編程方式發(fā)出請(qǐng)求或通過(guò)登錄到儀表板來(lái)訪問(wèn)這些服務(wù),它們還可以用這些服務(wù)來(lái)創(chuàng)建資源,并將這些資源分配給它們的帳戶。認(rèn)證服務(wù)流程Horizon 控制面板服務(wù)Horizon是一個(gè)用以管理、控制OpenStack服務(wù)的Web控制面板,它可以管理實(shí)例、鏡像、創(chuàng)建密匙對(duì),對(duì)實(shí)例添加卷、操作Swift容器等。除此之外,用戶還可以在控制面板中使用終端(console)或VNC

38、直接訪問(wèn)實(shí)例。 實(shí)例管理:創(chuàng)建、終止實(shí)例,查看終端日志,VNC連接,添加卷等 訪問(wèn)與安全管理:創(chuàng)建安全群組,管理密匙對(duì),設(shè)置浮動(dòng)IP等 偏好設(shè)定:對(duì)虛擬硬件模板可以進(jìn)行不同偏好設(shè)定 鏡像管理:編輯或刪除鏡像 查看服務(wù)目錄 管理用戶、配額及項(xiàng)目用途 用戶管理:創(chuàng)建用戶等 卷管理:創(chuàng)建卷和快照 對(duì)象存儲(chǔ)處理:創(chuàng)建、刪除容器和對(duì)象 為項(xiàng)目下載環(huán)境變量Ceilometer 計(jì)量服務(wù)Ceilometer主要負(fù)責(zé)監(jiān)控?cái)?shù)據(jù)的采集,采集的項(xiàng)目包括虛擬機(jī)的性能數(shù)據(jù),neutron-l3-router使用的網(wǎng)絡(luò)帶寬,glance&cinder&swift等租戶使用信息,甚至是通過(guò)snmp采集物理機(jī)

39、的信息,以及采集支持opendaylight的網(wǎng)絡(luò)設(shè)備信息。Ceilometer采集機(jī)制agent-*三個(gè)采集組件分別負(fù)責(zé)采集不同類型的信息: agent-notification負(fù)責(zé)收集各個(gè)組件推送到oslo-messaging的消息,oslo-messaging是openstack整體的消息隊(duì)列框架,所有組件的消息隊(duì)列都使用這個(gè)組件; agent-compute只負(fù)責(zé)收集虛擬機(jī)的CPU內(nèi)存I/O等信息,所以他需要安裝在Hypervisor機(jī)器上; agent-central是通過(guò)各個(gè)組件API方式收集有用的信息; agent-notification只需監(jiān)聽(tīng)AMQP中的queue即可收到信

40、息,而agent-compute和agent-central都需要定期Poll輪詢收集信息。Heat 編排服務(wù)模板定義環(huán)境云資源拓?fù)渑c編排服務(wù)兼容AWS CloudFormationHeat是一套業(yè)務(wù)流程平臺(tái),旨在幫助用戶更輕松地配置以O(shè)penStack為基礎(chǔ)的云體系。利用Heat應(yīng)用程序,開(kāi)發(fā)人員能夠在程序中使用模板以實(shí)現(xiàn)資源的自動(dòng)化部署。Heat能夠啟動(dòng)應(yīng)用、創(chuàng)建虛擬機(jī)并自動(dòng)處理整個(gè)流程。它還擁有出色的跨平臺(tái)兼容性,能夠與Amazon Web Services業(yè)務(wù)流程平臺(tái)CloudFormation相對(duì)接Barbicanlogical diagram for Barbican.In general, components from the Oslo commons project are used within Barbican, such as config, messaging and logging.The API node(s) handle incoming REST reque

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論