★【Glance】數據庫
glance-api 是系統後臺運行的服務進程。對外提供 REST API,響應 image 查詢、獲取和存儲的調用。glance-api 不會真正處理請求。api
一、若是是與 image metadata(元數據)相關的操做,glance-api 會把請求轉發給 glance-registry;
二、若是是與 image 自身存取相關的操做,glance-api 會把請求轉發給該 image 的 store backend。安全
Glance 支持多種格式的 image,包括blog
Store backend :
Glance 本身並不存儲 image。真正的 image 是存放在 backend 中的。
Glance 支持多種 backend,包括
一、A directory on a local file system(這是默認配置)
二、GridFS
三、Ceph RBD
四、Amazon S3
五、Sheepdog
六、OpenStack Block Storage (Cinder)
七、OpenStack Object Storage (Swift)
八、VMware ESX
具體使用哪一種 backend,是在 /etc/glance/glance-api.conf 中配置的。
個人配置:image 存放在控制節點本地目錄 filesystem_store_datadir = /var/lib/glance/images/。生命週期
★【Nova】進程
1,nova-schedulerpdo
虛機調度服務,負責決定在哪一個計算節點上運行虛機後臺
2,nova-compute配置
管理虛機的核心服務,經過調用 Hypervisor API 實現虛機生命週期管理file
3,Hypervisor
計算節點上跑的虛擬化管理程序,虛機管理最底層的程序。
不一樣虛擬化技術提供本身的 Hypervisor。,經常使用的 Hypervisor 有 KVM,Xen, VMWare 等
4,nova-conductor
nova-compute 常常須要更新數據庫,好比更新虛機的狀態。
出於安全性和伸縮性的考慮,nova-compute 並不會直接訪問數據庫,而是將這個任務委託給 nova-conductor。
▲重要:
在 nova-compute 的配置文件 /etc/nova/nova.conf 中由 compute_driver 配置項指定該計算節點使用哪一種 Hypervisor 的 driver。
•nova-scheduler 的調度機制和實現方法:即解決如何選擇在哪一個計算節點上啓動 instance 的問題。
•Filter scheduler
Filter scheduler 是 nova-scheduler 默認的調度器,調度過程分爲兩步:
經過過濾器(filter)選擇知足條件的計算節點(運行 nova-compute)
經過權重計算(weighting)選擇在最優(權重值最大)的計算節點上建立 Instance。
scheduler_driver=nova.scheduler.filter_scheduler.FilterScheduler
Nova 容許使用第三方 scheduler,配置 scheduler_driver 便可。 這又一次體現了OpenStack的開放性。
Scheduler 可使用多個 filter 依次進行過濾,過濾以後的節點再經過計算權重選出最適合的節點