计算服务概述¶
待办事项
更新其中的许多链接。
使用 OpenStack Compute 来托管和管理云计算系统。OpenStack Compute 是基础设施即服务 (IaaS) 系统的一个主要部分。主要模块是用 Python 实现的。
OpenStack Compute 与 OpenStack Identity 进行身份验证交互,与 OpenStack Placement 进行资源库存跟踪和选择交互,与 OpenStack Image 服务进行磁盘和服务器镜像交互,并与 OpenStack Dashboard 进行用户和管理界面交互。镜像访问受项目和用户限制;配额按项目限制(例如实例数量)。OpenStack Compute 可以在标准硬件上水平扩展,并下载镜像以启动实例。
OpenStack Compute 由以下区域及其组件组成
nova-api-wsgi服务接受并响应终端用户计算 API 调用。该服务支持 OpenStack Compute API。它强制执行某些策略并启动大多数编排活动,例如运行实例。
nova-metadata-wsgi服务接受来自实例的元数据请求。有关更多信息,请参阅 元数据服务。
nova-compute服务一个工作守护进程,它通过 hypervisor API 创建和终止虚拟机实例。例如
libvirt 用于 KVM 或 QEMU
VMwareAPI 用于 VMware
处理过程相当复杂。基本上,守护进程从队列中接受操作,并执行一系列系统命令,例如启动 KVM 实例并在数据库中更新其状态。
nova-scheduler服务从队列中获取虚拟机实例请求,并确定其在哪个计算服务器主机上运行。
nova-conductor模块调解
nova-compute服务与数据库之间的交互。它消除了nova-compute服务对云数据库的直接访问。nova-conductor模块可以水平扩展。但是,不要将其部署在运行nova-compute服务的节点上。有关更多信息,请参阅 配置选项 中的conductor部分。nova-novncproxy守护进程提供通过 VNC 连接访问正在运行的实例的代理。支持基于浏览器的 novnc 客户端。
nova-spicehtml5proxy守护进程提供通过 SPICE 连接访问正在运行的实例的代理。支持基于浏览器的 HTML5 客户端。
- 队列
- SQL 数据库
存储云基础设施的大多数构建时间和运行时状态,包括
可用的实例类型
正在使用的实例
可用的网络
项目
理论上,OpenStack Compute 可以支持 SQLAlchemy 支持的任何数据库。常见的数据库包括 SQLite3 用于测试和开发工作、MySQL、MariaDB 和 PostgreSQL。