1、总体架构
下图是OpenStack各Services之间的相互关系。

Nova:管理VM的生命周期
Neutron:为其它组件提供网络连接服务,负责创建和管理L2、L3网络。
Glance:管理VM镜像
Cinder:提供块存储服务
Keystone:为其它组件提供认证和权限管理服务
Ceilometer:提供监控告警和计量计费服务
Horizon:为用户提供一个基于Web的自服务Portal
Swift:提供对象存储服务
Trove:提供数据库服务
Ironic:提供裸金属管理服务
Heat:提供资源编排能力
Sahara:提供在OpenStack上构建大数据服务的能力
下图是各Services的组件及相互关系。

下图是部署Openstack所需要的硬件主机要求。

Controller Node
控制器节点为核心节点,运行身份服务,映像服务,计算的管理部分,网络的管理部分,各种网络代理和仪表板。它还包括支持服务,如SQL数据库,消息队列和NTP。
块存储,对象存储,编排和遥测服务的一部分为控制器节点的可选配置。
Compute Node
计算节点为核心节点,运行Nova的Compute部分。可以部署多个计算节点。
Block Storage Node
块存储节点为可选节点,包含块存储和共享文件系统服务为虚机提供磁盘。可以部署多个块存储节点。
Object Storage Node
对象存储节点为可选节点,包含对象存储服务用于存储帐户,容器和对象的磁盘。服务需要两个节点,可以部署多个对象存储节点。
下图为各服务组件部署总揽:

2、Nova
2.1、Nova功能
Nova是OpenStack最核心的Service,负责维护和管理云环境中的计算资源。主要有如下功能:
虚拟机生命周期管理
虚拟机资源动态调整
虚拟机迁移
主机管理
集群管理
密钥对管理
2.2、Nova架构

接收和响应客户的 API 调用。
除了提供 OpenStack 自己的API,nova-api 还支持 Amazon EC2 API和特殊管理API。
nova-scheduler虚机调度服务,负责决定在哪个计算节点上运行虚机
nova-compute管理虚机的核心服务,通过调用 Hypervisor API 实现虚机生命周期管理。
Hypervisor常用的 Hypervisor 有 KVM,Xen, VMWare,Hyper-V,Docker,LXC 等

nova-compute 经常需要更新数据库,比如更新虚机的状态。
出于安全性和伸缩性的考虑,nova-compute 并不会直接访问数据库,而是将这个任务委托给 nova-conductor。
nova-console用户可以通过多种方式访问虚机的控制台:
nova-novncproxy,基于 Web 浏览器的 VNC 访问
nova-spicehtml5proxy,基于 HTML5 浏览器的 SPICE 访问
nova-xvpnvncproxy,基于 Java 客户端的 VNC 访问
nova-consoleauth负责对访问虚机控制台提供 Token 认证
nova-cert提供 x509 证书支持
DatabaseNova 会有一些数据,比如虚机构建时间和运行时状态信息,需要存放到数据库中,一般使用 MySQL。
Message QueueNova 包含众多的子服务,这些子服务之间需要相互协调和通信。为解耦各个子服务,Nova 通过 Message Queue 作为子服务的信息中转站。OpenStack 默认是用 RabbitMQ 作为 Message Queue。
2.3、Nova部署方案
在控制节点上部署nova-api、nova-scheduler、nova-console、Database、Message Queue、nova-cert、nova-conductor和nova-consoleauth组件;
在计算节点上部署 Hypervisor和nova-compute组件。
2.4、Nova各模块协同工作的例子:虚机创建

3、Glance
3.1、Glance功能
Glance提供的是Image Service,具体功能如下:
提供REST API让用户能够查询和获取镜像及元数据 支持多种存储方式存储镜像,包括普通文件系统、Swift、Amazon S3等等 支持快照功能。例如,对虚拟机实例进行快照操作,以创建新的镜像3.2、Glance架构

glance-api是系统后台运行的服务进程。对外提供REST API,响应image查询、获取和存储等操作请求。如果请求与image metadata相关,它会把请求转发给glance-registry;如果请求与image自身存取相关,则把请求转发给该image的store backend。
glance-registryglance-registry负责处理和存取 image 的 metadata,例如 image 的大小和类型。Glance支持的image格式包括:Raw、vhd、vmdk、VDI、ISO、QCOW2、aki、ari、ami。
databaseImage的metadata保存在database中,默认使用MySQL。
Glance-StoreGlance自己并不存储image,真正的image存放在backend中。
Glance支持的backend包括:
A directory on a local file system(默认配置) GridFS Ceph RBD Amazon S3 Sheepdog OpenStack Block Storage (Cinder) OpenStack Object Storage (Swift) VMware ESX3.3、Glance部署
Glance的所有组件都部署在控制节点上。
4、Cinder
4.1、Cinder功能
相关知识
学习 OpenStack 的方法论
云原生平台与架构实践
【混合云架构】混合云的设计与实现
数据中心网络架构浅谈(一)
云平台搭建选型:openstack+kvm还是k8s+docker ?
全栈专属云
私有云的类型有哪些?
博云创始人花磊:私有云市场方兴未艾,三年后会出现行业洗牌
云服务平台架构
在OpenStack上搭建电子商城系统
网址: OpenStack架构分析 https://m.huajiangbk.com/newsview2484553.html
| 上一篇: 云计算架构规划中五个问题 |
下一篇: 花指令在云计算应用研究 |