• OpenStack-Nova(4)


     

    一、 Nova概述

      使用OpenStack Compute来托管和管理云计算系统。OpenStack Compute是基础架构即服务(IaaS)系统的主要部分。主要模块在Python中实现。

      OpenStack Compute与OpenStack Identity进行交互以进行身份验证;用于磁盘和服务器映像的OpenStack Image服务;和用于用户和管理界面的OpenStack仪表板。 镜像访问受到项目和用户的限制;每个项目的配额有限(例如数量)。 OpenStack Compute可以在标准硬件上水平扩展,并下载镜像以启动实例。

      OpenStack Compute由以下几个方面组成:

    (1)nova-api服务

      接受并响应最终用户的计算API调用。 该服务支持OpenStack Compute API,Amazon EC2 API和特殊的Admin API,用于特权用户执行管理操作。 它执行一些策略并启动大多数业务流程活动,例如运行一个实例。

    (2)nova-api-metadata服务

      接受来自实例的元数据请求。当您使用nova-network安装在多主机模式下运行时,通常会使用nova-api-metadata服务。

    (3)nova-compute计算服务

      通过虚拟机管理程序API创建和终止虚拟机实例的工作程序守护程序。

    • 适用于XenServer / XCP的XenAPI
    • KVM或QEMU的libvirt
    • 适用于VMware的VMwareAPI

      处理相当复杂。基本上,守护程序接受队列中的操作,并执行一系列系统命令,例如启动KVM实例并更新数据库中的状态。

    (4)nova-placement-api服务

      跟踪每个提供商的库存和使用情况。有关详细信息,请参阅Placement API。

    (5)nova-scheduler服务

      从队列获取虚拟机实例请求,并确定运行哪个计算服务器主机。

    (6)nova-conductor module模块

      nova-compute服务与数据库之间的交互。它消除了由nova-compute服务器对云数据库的直接访问。新星导体模块水平放置。但是,不要在运行nova-compute服务的节点上部署它。

    (7)nova-cert模块

      为X509证书提供Nova Cert服务的服务器守护程序。用于生成euca-bundle-image的证书。只需要EC2 API。

    (8)nova-consoleauth守护进程

      为控制台代理提供的用户授权令牌。参见nova-novncproxy和nova-xvpvncproxy。此服务必须运行才能使控制台代理工作。您可以在集群配置中针对单个nova-consoleauth服务运行任一类型的代理。

    (9)nova-novncproxy守护进程

      提供通过VNC连接访问运行实例的代理。 支持基于浏览器的novnc客户端。

    (10)nova-spicehtml5proxy守护进程

      提供通过SPICE连接访问运行实例的代理。支持基于浏览器的HTML5客户端。

    (11)nova-xvpvncproxy守护进程

      提供通过VNC连接访问运行实例的代理。支持特定于OpenStack的Java客户机。

    (12)Message Queue

      在守护进程之间传递消息的中心枢纽。 通常用RabbitMQ实现,也可以用另一个AMQP消息队列来实现,如ZeroMQ。

    (13)SQL数据库

      存储云基础架构的大部分构建时间和运行时状态,包括:

    • 可用的实例类型
    • 正在使用的实例
    • 可用网络
    • 项目

      理论上,OpenStack Compute可以支持SQLAlchemy支持的任何数据库。 公共数据库是用于测试和开发工作的SQLite3,MySQL,MariaDB和PostgreSQL。

    二、 Nova架构

    1、Nova逻辑架构

     

    图1 Nova逻辑架构(早期架构)

     

    图2 Nova逻辑架构

     

    2、Nova服务架构

     

    图3 Nova服务架构

     

     

  • 相关阅读:
    SpriteKit改变Node锚点其物理对象位置不对的解决
    亲热接触Redis-第二天(Redis Sentinel)
    Java设计模式(二)-单例模式
    Android—构建安全的Androidclient请求,避免非法请求
    自己主动化測试使用mybatis更新数据库信息实例
    UML回想-通信图
    第十六课 数组的引入 【项目1-5】
    被这个样式惊醒
    netty自定义解码器
    解决netty客户端接收报文不完整的情况
  • 原文地址:https://www.cnblogs.com/chenli90/p/10350058.html
Copyright © 2020-2023  润新知