Openstack各組件邏輯關(guān)系及運行流程解析
各組件邏輯關(guān)系圖

Keystone:認證服務(wù)
Glance:鏡像服務(wù)
Nova:計算服務(wù)
Neutron:網(wǎng)絡(luò)服務(wù)
Cinder:存儲服務(wù)
Horizon:web 界面
Cellometer:監(jiān)控計費
Swit:對象存儲
Heat:編排服務(wù)(通過劇本,批量部署虛擬機)
Openstack 新建云主機流程圖

keystone 身份認證
填寫創(chuàng)建云主機的相關(guān)配置–> nova-api --> 將相關(guān)信息保存到 MySQL
nova-scheduler --> 讀取 MySQL 云主機配置信息 --> 讀取計算節(jié)點資源
nova-compute 通過 nova-conductor 獲取云主機配置信息 --> 調(diào)取相關(guān)模塊(neutron、
glance、cinder)進行云主機的創(chuàng)建
虛擬機啟動過程
- 界面或命令行通過RESTful API向keystone獲取認證信息。
- keystone通過用戶請求認證信息,并生成auth-token返回給對應(yīng)的認證請求。
- 界面或命令行通過RESTful API向nova-api發(fā)送一個boot instance的請求(攜帶auth-token)。
- nova-api接受請求后向keystone發(fā)送認證請求,查看token是否為有效用戶和token。
- keystone驗證token是否有效,如有效則返回有效的認證和對應(yīng)的角色(注:有些操作需要有角色權(quán)限才能操作)。
- 通過認證后nova-api和數(shù)據(jù)庫通訊。
- 初始化新建虛擬機的數(shù)據(jù)庫記錄。
- nova-api通過rpc.call向nova-scheduler請求是否有創(chuàng)建虛擬機的資源(Host ID)。
- nova-scheduler進程偵聽消息隊列,獲取nova-api的請求。
- nova-scheduler通過查詢nova數(shù)據(jù)庫中計算資源的情況,并通過調(diào)度算法計算符合虛擬機創(chuàng)建需要的主機。
- 對于有符合虛擬機創(chuàng)建的主機,nova-scheduler更新數(shù)據(jù)庫中虛擬機對應(yīng)的物理主機信息。
- nova-scheduler通過rpc.cast向nova-compute發(fā)送對應(yīng)的創(chuàng)建虛擬機請求的消息。
- nova-compute會從對應(yīng)的消息隊列中獲取創(chuàng)建虛擬機請求的消息。
- nova-compute通過rpc.call向nova-conductor請求獲取虛擬機消息。(Flavor)
- nova-conductor從消息隊隊列中拿到nova-compute請求消息。
- nova-conductor根據(jù)消息查詢虛擬機對應(yīng)的信息。
- nova-conductor從數(shù)據(jù)庫中獲得虛擬機對應(yīng)信息。
- nova-conductor把虛擬機信息通過消息的方式發(fā)送到消息隊列中。
- nova-compute從對應(yīng)的消息隊列中獲取虛擬機信息消息。
- nova-compute通過keystone的RESTfull API拿到認證的token,并通過HTTP請求glance-api獲取創(chuàng)建虛擬機所需要鏡像。
- glance-api向keystone認證token是否有效,并返回驗證結(jié)果。
- token驗證通過,nova-compute獲得虛擬機鏡像信息(URL)。
- nova-compute通過keystone的RESTfull API拿到認證k的token,并通過HTTP請求neutron-
- server獲取創(chuàng)建虛擬機所需要的網(wǎng)絡(luò)信息。
- neutron-server向keystone認證token是否有效,并返回驗證結(jié)果。
- token驗證通過,nova-compute獲得虛擬機網(wǎng)絡(luò)信息。
- nova-compute通過keystone的RESTfull API拿到認證的token,并通過HTTP請求cinder-api
- 獲取創(chuàng)建虛擬機所需要的持久化存儲信息。
- cinder-api向keystone認證token是否有效,并返回驗證結(jié)果。
- token驗證通過,nova-compute獲得虛擬機持久化存儲信息。
- nova-compute根據(jù)instance的信息調(diào)用配置的虛擬化驅(qū)動來創(chuàng)建虛擬機。
以上就是Openstack各組件邏輯關(guān)系及運行流程解析的詳細內(nèi)容,更多關(guān)于Openstack各組件邏輯運行流程的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
openstack云計算keystone架構(gòu)源碼分析
這篇文章主要為大家介紹了openstack云計算keystone架構(gòu)源碼分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-04-04
Openstack 創(chuàng)建項目和虛擬機詳細介紹
這篇文章主要介紹了Openstack 創(chuàng)建項目和虛擬機詳細介紹的相關(guān)資料,這里舉例說明如何實現(xiàn),圖文教程,需要的朋友可以參考下2016-11-11
簡單談?wù)凮penStack中的網(wǎng)絡(luò)隔離
這篇文章主要介紹了簡單談?wù)凮penStack中的網(wǎng)絡(luò)隔離的相關(guān)資料,需要的朋友可以參考下2017-03-03
OpenStack Heat AutoScaling詳解及實例代碼
這篇文章主要介紹了OpenStack Heat AutoScaling詳解及實例代碼的相關(guān)資料,需要的朋友可以參考下2016-12-12
OpenStack Mitaka 版本中的 domain 和 admin詳解
這篇文章主要介紹了OpenStack Mitaka 版本中的 domain 和 admin詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-03-03
CentOS 6.4下安裝部署OpenStack云計算平臺的方法
現(xiàn)在好多公司都使用Openstack,所以也想著學(xué)習(xí)下用OpenStack云計算平臺,這篇文章給加詳細介紹了CentOS 6.4下安裝部署OpenStack云計算平臺的方法,有需要的朋友們可以參考借鑒,下面來一起看看吧。2016-10-10
OpenStack云計算快速入門教程(1)之OpenStack及其構(gòu)成簡介
該教程基于Ubuntu12.04版,它將幫助讀者建立起一份OpenStack最小化安裝。這篇文章主要介紹了OpenStack云計算快速入門教程(1)之OpenStack及其構(gòu)成簡介 ,需要的朋友可以參考下2016-11-11

