07.計算Nova→1.nova架構→1.架構概覽→3.Compute Core

  1. nova-scheduler [ˈskɛdʒʊlər]:虛機調度服務,負責決定在哪一個計算節點上運行虛機
  2. nova-compute:管理虛機的核心服務,經過調用 Hypervisor API 實現虛機生命週期管理
  3. Hypervisor:計算節點上跑的虛擬化管理程序,虛機管理最底層的程序。不一樣虛擬化技術提供本身的 Hypervisor。經常使用的 Hypervisor 有 KVM,Xen, VMWare 等。
    1. 默認僅顯示controller,須要在控制節點運行/opt/stack/devstack/tools/discover_hosts.sh來發現計算節點compute搭建了2節點devstack環境   這裏的Compute Host在運行命令以前就是
  4. nova-conductor:nova-compute 常常須要更新數據庫,好比更新虛機的狀態。出於安全性和伸縮性的考慮,nova-compute 並不會直接訪問數據庫,而是將這個任務委託給 nova-conductor。
openstack通用設計思路:
  1. Scheduler 調度服務:對於某項操做,若是有多個實體都可以完成任務,那麼一般會有一個 scheduler 負責從這些實體中挑選出一個最合適的來執行操做。 
  2. Worker 工做服務:調度服務只管分配任務,真正執行任務的是 Worker 工做服務。 在 Nova 中,這個 Worker 就是 nova-compute 了。
    1.  將 Scheduler 和 Worker 從職能上進行劃分使得 OpenStack 很是容易擴展: 當計算資源不夠了沒法建立虛機時,能夠增長計算節點(增長 Worker);當客戶的請求量太大調度不過來時,能夠增長 Scheduler
  3. Driver 框架:以 Nova 爲例,OpenStack 的計算節點支持多種 Hypervisor。 包括 KVM, Hyper-V, VMWare, Xen, Docker, LXC 等。 Nova-compute 爲這些 Hypervisor 定義了統一的接口,hypervisor 只須要實現這些接口,就能夠 driver 的形式即插即用到 OpenStack 中。
    1. 在 nova-compute 的配置文件 /etc/nova/nova.conf 中由 compute_driver 配置項在[DEFAULT]指定該計算節點使用哪一種 Hypervisor 的 driver在咱們的環境中由於是 KVM,因此配置的是 Libvirt 的 driver。
    2. 在學習 Glance 時談到:OpenStack 支持多種 backend 來存放 image。能夠是本地文件系統,Cinder,Ceph RBD,Swift 等。其實這也是一個 driver 架構。
相關文章
相關標籤/搜索