OpenStack Dashboard(Horizon,管理界面):
提供了一个基于web的自服务门户,与OpenStack底层服务交互,诸如启动一个实例,分配IP地址以及配置访问控制。
OpenStack Compute(Nova,计算管理):
OpenStack的组织控制器,提供一个工具来部署云,包括运行实例、管理网络以及控制用户和其他项目对云的访问。
Nova各组件的作用:
a) nova-api守护进程是OpenStack Compute的中心。它为所有API查询提供端点,初始化绝大多数部署活动(比如运行实 例),以及实施一些策略(绝大多数的配额检查);
b) nova-compute进程主要是一个部署在HOST上的守护进程,通过虚拟机管理程序的API创建和终止虚拟机实例。基本原 理:从队列中接收行为,然后在更新数据库的状态时,执行一系列的系统命令执行他们;
c) nova-volume给虚拟机分配额外持久化的存储,管理映射到计算机实例的卷的创建、附加和取消;
d) nova-network worker守护进程类似于nova-compute和nova-volume。它从队列中接收网络任务,然后执行任务以操控 网络,比如创建bridging interfaces或改变iptables rules;
e) Queue提供中心hub,为守护进程传递消息。当前用RabbitMQ实现。但是理论上能是python ampqlib支持的任何AMPQ消息队列。
AMPQ:Advanced Message Queuing Protocol,即高级消息队列协议。
主要特征是面向消息、队列、路由、可靠性和安全。
f) SQL database存储云基础架构中的绝大多数编译时和运行时状态。这包括了可用的实例类型,在用的实例,可用的网络和项目。当前广泛使用的数据库是sqlite3(仅适合测试和开发工作),MySQL和PostgreSQL;
g) OpenStack Glance,是一个单独的项目,它是一个compute架构中可选的部分,分为三个部分:glance-api, glance-registry and the image store. 其中,
glance-api接受API调用,
glance-registry负责存储和检索镜像的元数据,实际的Image Blob存储在Image Store中。Image Store可以是多种不同的Object Store,包括OpenStack Object Storage (Swift);
h) user dashboard是另一个可选的项目。OpenStack Dashboard提供了一个OpenStack Compute界面来给应用开发者和devops staff类似API的功能。
i) nova-schedule,从队列上得到一个虚拟机实例请求并且决定它应该在哪里运行(特别是它应该运行在哪台计算服务器主机之上)
nova计算虚化:
1) 基于REST API;
2) 支持大容量水平扩展;
3) 硬件无关,支持多种标准硬件;
4) 虚拟化平台无关,支持多种Hypervis