Nova
Nova的概述
nova 是负责提供计算资源的模块,也是OpenStack的核心模块,主要功能是负责虚拟机实例的生命周期管理、网络管理、存储卷管理、用户管理以及其他的相关云平台管理功能。
系统架构
DB:用于数据存储的sql数据库。
API:用于接收HTTP请求、转换命令、通过消息队列或HTTP与其他组件通信的nova组件。
Scheduler:用于决定哪台计算节点承载计算实例的nova调度器。
Network:管理IP转发、网桥或虚拟局域网的nova网络组件。
Compute:管理虚拟机管理器与虚拟机之间通信的nova计算组件。
Conductor:处理需要协调(构建虚拟机或调整虚拟机大小)的请求,或者处理对象转换。
部署架构特点:
无中心结构
各组件无本地持久化状态
可水平扩展
通常将nova-api、nova-scheduler、nova-conductor组件合并部署在控制节点上
通过部署多个控制节点实现HA和负载均衡
通过增加控制节点和计算节点实现简单方便的系统扩容
内部组件介绍
#nova-api
API是客户访问nova的http接口,它由nova-api服务实现,nova-api服务接受和响应来自最终用户计算api的请求。作为openstack对外服务的最主要接口,nova-api提供了一个集中的可以查询所有api的端点。
所有对nova的请求都首先由nova-api处理。API提供REST 标准调用服务,便于与第三方系统集成。
最终用户不会直接该送RESTful API请求而是通过openstack命令行、dashbord和其他需要跟nova的组件使用这些API。
NOva-api对接受到的HTTP API请求做以下处理: (1)检