07.计算Nova→1.nova架构→1.架构概览→3.Compute Core

<div><h1><a href="https://www.cnblogs.com/LeisureZhao/p/11181452.html">返回总目录</a></h1></div>html

<ol type="1" start="1"><li>nova-scheduler<font color="#008000">&nbsp;[ˈskɛdʒʊlər]</font>:虚机调度服务,负责决定在哪一个计算节点上运行虚机</li><li>nova-compute:管理虚机的核心服务,经过调用 Hypervisor API 实现虚机生命周期管理</li><li>Hypervisor:计算节点上跑的虚拟化管理程序,虚机管理最底层的程序。不一样虚拟化技术提供本身的 Hypervisor。经常使用的 Hypervisor 有 KVM,Xen, VMWare 等。</li><ol><li><img src="http://zhaolei.xuexihaike.com/paste-66872640798723.jpg" /></li><li><b><font color="#0000ff">默认仅显示controller,须要在控制节点运行/opt/stack/devstack/tools/discover_hosts.sh来发现计算节点compute</font><font color="#008000">搭建了2节点devstack环境 &nbsp; </font><font color="#ff0000">这里的Compute Host在运行命令以前就是</font></b><img src="http://zhaolei.xuexihaike.com/paste-278137787121667.jpg" /></li></ol><li>nova-conductor:nova-compute 常常须要更新数据库,好比更新虚机的状态。出于安全性和伸缩性的考虑,nova-compute 并不会直接访问数据库,而是将这个任务委托给 nova-conductor。</li></ol><div><span>openstack通用设计思路:</span></div><div><ol type="1" start="2"><li>Scheduler 调度服务:对于某项操做,若是有多个实体都可以完成任务,那么一般会有一个 scheduler 负责从这些实体中挑选出一个最合适的来执行操做。&nbsp;</li><li>Worker 工做服务:调度服务只管分配任务,真正执行任务的是 Worker 工做服务。&nbsp;在 Nova 中,这个 Worker 就是 nova-compute 了。</li><ol><li>&nbsp;将 Scheduler 和 Worker 从职能上进行划分使得 OpenStack 很是容易扩展:&nbsp;当计算资源不够了没法建立虚机时,能够增长计算节点(增长 Worker);当客户的请求量太大调度不过来时,能够增长 Scheduler</li></ol><li>Driver 框架:以 Nova 为例,OpenStack 的计算节点支持多种 Hypervisor。 包括 KVM, Hyper-V, VMWare, Xen, Docker, LXC 等。&nbsp;Nova-compute 为这些 Hypervisor 定义了统一的接口,hypervisor 只须要实现这些接口,就能够 driver 的形式即插即用到 OpenStack 中。</li></ol></div><div><ol><ol><li>在 nova-compute 的配置文件 /etc/nova/nova.conf 中由 compute_driver 配置项<font color="#008000">在[DEFAULT]</font>指定该计算节点使用哪一种 Hypervisor 的 driver<img src="http://zhaolei.xuexihaike.com/pasteHTML-319897754140673.jpg" /><font color="#008000">在咱们的环境中由于是 KVM,因此配置的是 Libvirt 的 driver。</font></li><li>在学习 Glance 时谈到:OpenStack 支持多种 backend 来存放 image。能够是本地文件系统,Cinder,Ceph RBD,Swift 等。其实这也是一个 driver 架构。</li></ol></ol></div>数据库

相关文章
相关标签/搜索