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