美文网首页
计算服务 - Nova

计算服务 - Nova

作者: 被子十三 | 来源:发表于2017-03-28 15:34 被阅读117次

    1.什么是Nova?

    Nova是Openstack云中的计算组织控制器,管理Openstack云中实例的生命周期的所有活动,使得nova称为一个负责管理计算资源、网络、认证所需的可扩展性平台。

    2.常用术语

    • Hypervisor:虚拟机监视器,用来建立与执行虚拟机的部分电脑软件、固件或硬件
    • KVM:内核虚拟化,OpenStack默认的Hypervisor
    • Qemu: KVM 的替补角色,没有KVM的执行效率高,不支持全虚拟化
    • Flavor:用来新建虚拟机的配置列表,可以认为是创建虚拟机的模板
    • Keypair:ssh连接访问实例的密钥对
    • 安全组:是一个控制访问策略的容器,里面包含了各种各样的安全组规则
    • 安全组规则:用来控制实例访问的具体策略,定义了用户可以通过什么协议,在远端什么主机上通过什么端口对实例进行链接访问。

    3. Nova框架

    3.1 Nova组件

    Nova组件
    • Nova API:提供了统一风格的 RestAPI接口,作为Nova组件的入口,接受用户的请求
    • Nova scheduler :负责调度,将实例分配到具体的计算节点
    • Nova conductor:主要负责与Nova数据库进行交互
    • Nova compute:用于虚拟机实例的创建和管理
      以及提供消息传递的
    • 消息队列:Nova各个组件之间的消息传递
      和数据库模块:

    3.2 Nova各个组件如何协作运行?

    Nova组件的运行方式

    首先,用户通过CLI命令行或者horizon向Nova组件提出创建实例的请求时,Nova API 作为Nova的入口,将会接受用户的请求,将会以消息队列的方式,将请求发送给Nova scheduler。
    Nova scheduler从消息队列中,侦听到Nova API的消息队列后,去数据库中查询当前计算节点的负载和使用情况,由于Nova scheduler不能直接跟数据库进行交互,因此,将会借助于消息队列的方式通过Nova conductor组件,进而与数据库进行交互。
    然后将查询到的结果,将虚拟机实例分配到当前负载最小,并且满足启动虚拟机实例的那个计算节点上,但最终的虚拟机实例的创建,并不是由Nova scheduler完成(它负责实例的分配调度工作)还是要靠Nova compute来完成。
    但是实例的创建,离不开镜像、网络等一些资源的配合,因此,Nova compute将会与Nova volume、Nova network等等一些组件通过消息队列的方式实现相互的协作。最终完成虚拟机实例的创建。

    4. Nova的功能特性:

    • 实现实例的生命周期的管理
    • 调动管理平台的网络、存储等资源
    • 提供了统一风格的 RestAPI接口
    • 支持KVM、VMware等透明的hypervisor
      各个模块之间通过消息队列来进行消息传递

    相关文章

      网友评论

          本文标题:计算服务 - Nova

          本文链接:https://www.haomeiwen.com/subject/vsbjottx.html