文章目錄
- 一、云計算服務模型
- 二、OpenStack概述
- 三、OpenStack優勢
- 四、OpenStack架構
- 1、OpenStack概念架構圖
- 2、OpenStack邏輯架構
一、云計算服務模型
IaaS(基礎架構即服務)
- 提供底層IT基礎設施服務,包括處理能力、存盤空間、網路資源等
- 面向物件一般是IT管理人員
PaaS(平臺即服務)
- 把安裝好開發環境的系統平臺作為一種服務通過互聯網提供給用戶
- 面向物件一般是開發人員
SaaS(軟體即服務)
- 直接通過互聯網為用戶提供軟體和應用程式等服務
- 面向物件一般是普通用戶
二、OpenStack概述
- NASA(美國國家航空航天局)和Rackspace共同發起
- 以Apchae許可證授權的自由軟體和開放源代碼專案
- 為公有云及私有云的建設與管理提供軟體的開源專案
- 覆寫了網路、虛擬化、作業系統、服務器等各個方面
| 服務 | 專案名稱 | 描述 |
|---|---|---|
| Compute (計算服務) | Nova | 負責實體生命周期的管理,計算資源的單位,對Hypervisor進行屏蔽,支持多種虛擬化技術(紅帽默認為KVM),支持橫向擴展 |
| Network (網路服務) | Neutron | 負責虛擬網路的管理,為實體創建網路的拓撲結構,是面向租戶的網路管理,可以自己定義自己的網路,各個租戶之間互不影響 |
| ldentity (身份認證服務) | Keystone | 類似于LDAP服務,對用戶、租戶和角色、服務進行認證與授權,且支持多認證機制 |
| Dashboard (控制面板服務) | Horizon | 提供一個Web管理界面,與OpenStack底層服務進行互動 |
| lmage Service (鏡像服務) | Glance | 提供虛擬機鏡像模板的注冊與管理,將做好的作業系統拷貝為鏡像模板,在創建虛擬機時直接使用,可支持多格式的鏡像 |
| Block Storage (塊存盤服務) | Cinder | 負責為運行實體提供持久的塊存盤設備,可進行方便的擴展,按需付費,支持多種后端存盤 |
| Object Storage (物件存盤服務) | Swift | 為OpenStack提供基于云的彈性存盤,支持集群無單點故障 |
| Telemetry (計量服務) | Ceilometer | 用于度量、監控和控制資料資源的集中來源,為OpenStack用戶提供記賬途徑 |
三、OpenStack優勢
控制性:
- 完全開源得平臺,提供API介面,方便與第三方技術集成
兼容性:
- OpenStack兼容其他公有云,方便用戶進行資料遷移
可擴展性:
- 模塊化設計,可以通過橫向擴展,增加節點、添加資源
靈活性:
- 根據自己得需要建立相應基礎設施、增加集群規模
行業標準:
- 眾多IT領軍企業已經加入到OpenStack專案
四、OpenStack架構
學習OpenStack得部署和運維之前,應當熟悉其架構和運行機制,OpenStack作為開源、可擴展、富有彈性得云作業系統,其設計基本原則如下:
- 按照不同的功能和通用性劃分不同專案,拆分子系統
- 按照邏輯計劃、規范子系統之間的通信
- 通過分層設計整個系統架構
- 不同得功能子系統間提供統一的API介面
1、OpenStack概念架構圖

云平臺用戶在經過Keystone服務認證授權后,通過Horizon或者Reset API模式創建虛擬機服務,創建程序中包括利用Nova服務創建虛擬機實體,虛擬機實體采用Glance提供鏡像服務,然后使用Neutron為新建的虛擬機分配IP地址,并將其納入虛擬網路中,之后在通過Cinder創建的卷為虛擬機掛載存盤塊,整個程序都在Ceilometer模塊資源的監控下,Cinder產生的卷(Volume)和Glance提供的鏡像(lmage)可以通過Swift的物件存盤機制進行保存,
2、OpenStack邏輯架構
- 首先展示了內部核心組件、外部組件、全域組件
- 各核心、輔助組件之間是怎么對接得——API
- 展示了各組件中,一部分核心的功能模塊——MQ進行通訊
- 展示openstack原生架構(基礎)

OpenStack包括若干個稱為OpenStack服務的獨立組件,所有服務均可通過一個公共身份服務進行身份驗證,除了那些需要管理權限的命令,每個服務之間均可通過公共API進行互動,
每個OpenStack服務又由若干組件組成,包含多個行程,所有服務至少有一個API行程,用于偵聽API請求,對這些請求進行預處理,并將它們傳送到該服務的其他組件,除了認證服務,實際作業都是由具體的行程完成的
至于一個服務的行程之間通信,則使用AMQP訊息代理,服務的狀態存盤在資料庫中,
openstack設計的基本原則如下:
- 按照不同的功能和通用性劃分不同專案,拆分子系統
- 按照邏輯計劃、規范子系統之間的通信
- 通過分層設計整個系統架構
- 不同的功能子系統間提供統一的API介面
一個鏡像從上傳可以使用得幾個狀態、程序
- 初始化程序——queued
- 匯入資料庫程序——saving
- 提交給服務識別程序(讓服務可呼叫)——uploding
- 準使用(服務已識別、可呼叫)——importing
以上表明的是從上傳到識別
以下標識是鏡像上載完成后的狀態型別
- active——表示可使用
- deactivated——表示只對管理員開放的權限
- killed——表示鏡像上傳中發生錯誤
- deletd——鏡像將在不久后自動洗掉,鏡像不可用(保留資料)
- pending_delete——與deleted類似,但是洗掉后無法恢復
全域
openstack中由很多核心服務組成(相互獨立)
keystone(全域授權、鑒權)
OpenStack組件通信關系
- 基于AMQP協議得通信
用于每個專案內部各個組件之間的通信
- 基于SQL得通信——在不同場景下運用不同的通信方式
用于各個專案內部得通信
-
基于HTTP協議進行通信
通過個專案得API建立的通信關系,API都是RESTful Web API——在控制臺上將前端和后端通過restful api網關介面進行通訊
-
通過Native API實作通信
OpenStack各組件和第三方軟硬體之間的通信——native api使原生架構與第三方組件進行通訊
,API都是RESTful Web API——在控制臺上將前端和后端通過restful api網關介面進行通訊
- 通過Native API實作通信
OpenStack各組件和第三方軟硬體之間的通信——native api使原生架構與第三方組件進行通訊
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/233118.html
標籤:其他
