Openstack核心组件之Nova计算服务

什么是nova

  • 计算服务是openstack最核心的服务之一- ,负责维护和管理云环境的计算资源它在openstack项目中代号是nova。
  • Nova自身并没有提供任何虚拟化能力,它提供计算服务,使用不同的虚拟化驱动来与底层支持的Hypervisor (虚拟机管理器)进行交互。所有的计算实例(虚拟服务器)由Nova进行生命周期的调度管理(启动、挂起、停止、删除等)
  • Nova需要keystone、glance、 neutron、 cinder和swift等其他服务的支持, 能与这些服务集成,实现如加密磁盘、裸金属计算实例等。

nova组件的工作流程

在这里插入图片描述

Nova-api作为Nova的入口,将会接受用户的请求,然后以消息队列的形式将请求发送给nova-scheduler,nova-scheduler从消息队列中侦听到nova-api的消息后去数据库中查询当前计算节点的负载和使用情况,由于不能和数据库直接进行交互,于是借用与消息队列的形式通过nova-conductor继而与数据库进行交互,最后根据查询到的结果,将虚拟机实例分配到当前负载最小并且满足启动虚拟机实例的那个计算节点上,当然了实际实例的创建启停工作呢并不是由Nova-scheduler来完成,Nova-scheduler的主要功能是实现实例的调度分配工作,最终实例的创建还是要调用Nova-conductor来完成,实例的创建还是离不开镜像、网络、存储等等一些资源的配合,因此Nova-conpute组件将会于nova-volume、nova-network等组件,通过消息队列的方式实现相互的协作,最终完成虚拟机实例的创建。这就是nova组件结合虚拟机实例创建的完整过程。

Nova组件的简述

在这里插入图片描述

  • nova-api: Nova的主要门户,通过与Nova API交互来创建、列出、删除和管理虚拟服务器实例
  • nova-scheduler:评估并筛选所有可用的计算主机确定要引导的实例的最佳计算节点。nova调度程序的行为可以根据特定的属性或元数据进行改变,例如根据CPU架构或在数据中心中的特定位置元数据来选这启动的计算结点。
  • nova-conductor:直接连接到OpenStack环境的关系数据库。计算节点上nova组件所有的数据库通信都通过Nova conductor执行。并指挥计算计算结点上的nova-compute的操作
  • nova novncproxy:通过VNC客户端或Web浏览器。
  • nova consoleauth:接收来自nova novncproxy的授权请求用户的令牌并映射虚拟主机的tty端口的私有VNC服务实例。
  • nova compute :在计算结点虚拟机管理程序之.上管理虚拟机。
  • DB:用于数据存储的sql数据库。

nova-api

  • API是客户访问nova的http接口,它由nova-api服务实现,nova-api服务接收和响应来自最终用户的计算api请求。作为openstack对外服务的最主要接口, nova-api提供 了一个集中的可以查询所有api的端点。
  • 所有对nova的请求都首先由nova-api处理。API提供REST标准调用服务,便于与第三方系统集成。
  • 最终用户不会直接改送RESTful API请求,而是通过openstack命令行、dashbord和其他需要跟nova交换的组件来使用这些APl。
    只要跟虚拟机生命周期相关的操作,nova-api都可以响应。
    Nova-api对接收到的HTTP API请求做以下处理:
    ●1)检查客户端传入的参数是否合法有效
    ●2)调用nova其他服务来处理客户端HTTP请求
    ●3)格式化nova其他子服务返回结果并返回给客户端
    Nova-api是外部访问并使用nova提供的各种服务的唯一途径,也是客户端和nova之间的中间层。
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值