1,通過文字界面,圖形界面向keystone認證身份
2,頒發token
3,向nova-api發送啓動實例的請求
4,nova-api向keystone發送請求驗證token是否有效
5,keystone驗證
6,nova-api和數據庫通信
(告訴數據庫要新建虛擬機)
7,初始化新建虛擬機的數據庫記錄
(把新建虛擬機的過程請求寫在數據庫裏)
8,nova-api通過rpc.call向nova-scheduler請求是否有符合條件的虛擬機
9,nova-scheduler監聽mq,獲取nova-api
10,nova-scheduler查詢數據庫虛擬機的情況
11,將結果返回給nova-scheduler
12,nova-scheduler通過mq向nova-compute發送請求
(把請求放在mq裏)
13,nova-compute從mq裏獲取創建虛擬機請求的消息
(nova-compute知道自己要啓動虛擬機,但不知道虛擬機的配置)
14,nova-compute通過mq向nova-conductor請求獲取虛擬機的消息
(flavor,虛擬機配置)
15,nova-conductor從mq裏拿到nova-compute請求
16,nova-conductor根據消息查詢虛擬機對應消息
17,nova-conductor獲取虛擬機相關配置
18,把配置發送到mq裏
19,nova-compute從mq裏獲取虛擬機的相關信息
20,nova-compute通過keystone認證拿到token,通過HTTP請求glance-api獲取創建虛擬機鏡像
21,glance-api通過keystone驗證nova-compute請求是否合法
22,驗證通過,nova-compute獲取鏡像信息
23,nova-compute通過keystone拿到token,通過HTTP請求neutron-server獲取創建虛擬機的網絡信息
(獲取網絡)
24,neutron-server向keystone認證token是否有效
25,驗證通過,nova-compute獲取虛擬機網絡信息
26,nova-compute通過keystone認證得到token,通過HTTP請求cinder-api獲取創建虛擬機所需的持久化存儲信息
(獲取磁盤)
27,cinder-api通過keystone驗證token是否有效
28,nova-compute獲取虛擬機持久化存儲信息
29,nova-compute根據虛擬機信息,調用配置的虛擬化驅動創建虛擬機