openstack學習之概念篇

2021-07-03 06:10:37 字數 1764 閱讀 9283

2014-5-9

閱讀311

openstack(這個是官方正式寫法)是乙個基礎設施服務(iaas, infrasture as a service)的開源實現。具體介紹可以參考官方**https://www.

openstack

.org/,

也可以參考。

iaas只是乙個概念或者說是乙個想法,它到底應該是乙個什麼樣子的,業界並沒有什麼規範。it行業的乙個特點就是產品先行,標準在後。占有強勢市場地位的產品就是這個領域的事實上標準。在iaas這個領域,amazon的aws無疑就是標準。aws對什麼是iaas給出乙個很好的參考,起到了領路人的作用。

openstack從出生開始就選擇了對標aws:aws提供什麼功能,openstack也提供什麼功能;aws提供什麼api,openstack也提供什麼api。當然隨著openstack社群的壯大與成熟,它也會有新的想法來詮釋iaas,目前的很多孵化專案就是一種嘗試。openstack也定義了自己的api。學習iaas,aws是乙個很好的參考。它的文件,教程,例項都很詳細豐富。aws不是開源專案,我們沒有辦法去了解它的內部實現。

iaas的幾個基本功能包括伺服器虛擬化,儲存虛擬化及網路虛擬化。openstack對這些功能都有對應的實現。openstack實際上包括了若干個專案(project),每個專案實現乙個主要功能,並且有乙個codename.對應前面的幾個功能就有如下專案:

project

codename

功能compute

nova

伺服器虛擬化

networking

neutron

網路虛擬化

block storage

cinder

儲存虛擬化

object storage

swift

儲存虛擬化(key-valuec儲存摸型)

還有另外幾個主要專案:

identity

keystone

使用者管理/許可權管理/服務管理

image

glance

虛擬機器磁碟顯像管理

dashboard

horizon

基於web的使用者/管理員介面

還有其他的專案,就不一一介紹了。

下面從幾個維度介紹下openstack架構:

邏輯架構

這個是官方上的一張參考圖。每個專案的功能都是以rest api的形式提供給外部使用者。使用者通過rest api即可使用openstack提供的所有功能。openstack中個專案之間的互動也是通過rest api完成,極大地降低了個專案之間的耦合。

部署架構

openstack的部署方式非常靈活,支援單台部署和多機部署。後面文章會結合每個專案具體展開。

執行架構

openstack專案包括若干個service(每個service可以是乙個程序或者執行緒),每個service提供乙個特定功能,service之間互相協作以實現該項目的功能。每個service可以單獨在一台機器上,或者多個service同時部署在一台機器上。

例如nova中包含了一下幾個主要service:

service

功能

nova-api

rest api介面

nova-scheduler

排程服務,建立虛擬機器時,決定該虛擬機器建立在那台機器上

nova-conductor

提供資料庫訪問服務

nova-compute

建立虛擬機器服務

......

其他

ETL學習筆記之概念篇

資料倉儲 oltp olap etl,extraction transformation loading的縮寫,即資料抽取 extract 轉換 transform 裝載 load 的過程,它是構建資料倉儲的重要環節。etl是將業務系統的資料經過抽取 清洗轉換之後載入到資料倉儲的過程,目的是將企業中...

openstack重要概念

authentication 確定乙個使用者身份的過程。使用者需要提供一組credentials供openstack驗證。首先,credentials一般是使用者名稱 密碼,或使用者名稱和api key。當openstack驗證credentials有效,會返回使用者乙個authentication...

Openstack之KeyStone學習(一)

openstack 是乙個美國國家航空航天局和 rackspace 合作研發的雲計算軟體,以 apache 許可證授權,並且是乙個 自由軟體和開放源 專案。openstack 是iaas 基礎設施即服務 平台,讓任何人都可以自行建立和提供雲端 運算服務。以下是5個 openstack 的重要構成部分...