核心項目3個
1.控制台
服務名:Dashboard
項目名:Horizon
功能:web方式管理雲平台,建雲主機,分配網絡,配安全組,加雲盤
2.計算
服務名:計算
項目名:Nova
功能:負責響應虛擬機創建請求、調度、銷毀雲主機
3.網絡
服務名:網絡
項目名:Neutron
功能:實現SDN(軟件定義網絡),提供一整套API,用戶可以基於該API實現自己定義專屬網絡,不同廠商可以基於此API提供自己的產品實現
存儲項目2個
1.對象存儲
服務名:對象存儲
項目名:Swift
功能:REST風格的接口和扁平的數據組織結構。RESTFUL HTTP API來保存和訪問任意非結構化數據,ring環的方式實現數據自動復制和高度可以擴展架構,保證數據的高度容錯和可靠性
2.塊存儲
服務名:塊存儲
項目名:Cinder
功能:提供持久化塊存儲,即為雲主機提供附加雲盤。
共享服務項目3個
1.認證服務
服務名:認證服務
項目名:Keystone
功能:為訪問openstack各組件提供認證和授權功能,認證通過后,提供一個服務列表(存放你有權訪問的服務),可以通過該列表訪問各個組件。
2.鏡像服務
服務名:鏡像服務
項目名:Glance
功能:為雲主機安裝操作系統提供不同的鏡像選擇
3.計費服務
服務名:計費服務
項目名:Ceilometer
功能:收集雲平台資源使用數據,用來計費或者性能監控
高層服務項目1個
1.編排服務
服務名:編排服務
項目名:Heat
功能:自動化部署應用,自動化管理應用的整個生命周期.主要用於Paas
虛擬機啟動過程如下:
-
界面或命令行通過RESTful API向keystone獲取認證信息。
-
keystone通過用戶請求認證信息,並生成auth-token返回給對應的認證請求。
-
界面或命令行通過RESTful API向nova-api發送一個boot instance的請求(攜帶auth-token)。
-
nova-api接受請求后向keystone發送認證請求,查看token是否為有效用戶和token。
-
keystone驗證token是否有效,如有效則返回有效的認證和對應的角色(注:有些操作需要有角色權限才能操作)。
-
通過認證后nova-api和數據庫通訊。
-
初始化新建虛擬機的數據庫記錄。
-
nova-api通過rpc.call向nova-scheduler請求是否有創建虛擬機的資源(Host ID)。
-
nova-scheduler進程偵聽消息隊列,獲取nova-api的請求。
-
nova-scheduler通過查詢nova數據庫中計算資源的情況,並通過調度算法計算符合虛擬機創建需要的主機。
-
對於有符合虛擬機創建的主機,nova-scheduler更新數據庫中虛擬機對應的物理主機信息。
-
nova-scheduler通過rpc.cast向nova-compute發送對應的創建虛擬機請求的消息。
-
nova-compute會從對應的消息隊列中獲取創建虛擬機請求的消息。
-
nova-compute通過rpc.call向nova-conductor請求獲取虛擬機消息。(Flavor)
-
nova-conductor從消息隊隊列中拿到nova-compute請求消息。
-
nova-conductor根據消息查詢虛擬機對應的信息。
-
nova-conductor從數據庫中獲得虛擬機對應信息。
-
nova-conductor把虛擬機信息通過消息的方式發送到消息隊列中。
-
nova-compute從對應的消息隊列中獲取虛擬機信息消息。
-
nova-compute通過keystone的RESTfull API拿到認證的token,並通過HTTP請求glance-api獲取創建虛擬機所需要鏡像。
-
glance-api向keystone認證token是否有效,並返回驗證結果。
-
token驗證通過,nova-compute獲得虛擬機鏡像信息(URL)。
-
nova-compute通過keystone的RESTfull API拿到認證k的token,並通過HTTP請求neutron-server獲取創建虛擬機所需要的網絡信息。
-
neutron-server向keystone認證token是否有效,並返回驗證結果。
-
token驗證通過,nova-compute獲得虛擬機網絡信息。
-
nova-compute通過keystone的RESTfull API拿到認證的token,並通過HTTP請求cinder-api獲取創建虛擬機所需要的持久化存儲信息。
-
cinder-api向keystone認證token是否有效,並返回驗證結果。
-
token驗證通過,nova-compute獲得虛擬機持久化存儲信息。
-
nova-compute根據instance的信息調用配置的虛擬化驅動來創建虛擬機。
轉載:http://egon09.blog.51cto.com/9161406/1845226