Chapter 1 架构

1.1 OpenStack架构概述

OpenStack项目是一个开源的云计算平台,可以支持多种类型的云环境。OpenStack项目以简单的实现、强大的扩展性、丰富的功能为目标。OpenStack通过多个相互关联的服务来提供IaaS解决方案。每个服务都提供了一个API来促进集成。下面列出各个OpenStack的服务:

服务                         项目名称           描述

Dashboard               Horizon           提供WEB管理界面,与OpenStack各个服务进行交互

Compute                  Nova               管理虚拟机实例运行情况、包括生成、资源调度等

Networking              Neutron           OpenStack其他服务提供Network-Connectivity-as-a-Service,例如OpenStack计算。为用

                                                      户提供API来定义网络等

Block Storage          Cinder              为运行的实例提供稳定的块存储。可拔插驱动架构促进了块存储设备的创建和管理

Object Storage         Swift                通过RESTful存储和检索任意的非结构化数据对象。通过数据复制和扩展架构来提供容灾功能。它

                                                      的实现是将对象与文件写入到多个驱动器,并确保数据在一组服务群集中进行复制

Identity service         Keystone          OpenStack各个服务提供认证授权服务,并为OpenStack所有服务提供终端

Image service           Glance             存储和检索虚拟机镜像。OpenStack计算服务在创建虚拟机时使用该服务

Telemetry                 Celiometer       监控与计量OpenStack

Orchestration            Heat                                      

Database                  Trove              在关系与非关系数据库引擎之间提供可扩展、可靠的Cloud Database-sa-a-Service

Data Procressing       Sahara            通过配置特定参数、群集拓扑以及节点硬件信息支持Hadoop群集扩展

service

 

注意:Data Processing service在最新的Kilo版本中实现。

 

1.2 OpenStack概念架构图

openstack_kilo_conceptual_arch.png

 

1.3 示例架构

OpenStack高度可配置性用于满足对计算、网络、存储的不同需求。这里介绍Neutron网络的示例架构,至少需要三个节点:

  • 控制节点(controllernode)运行认证服务(Identity service)、镜像服务(Imageserivce)、计算(Compute)与网络(Networking)的管理部分、网络插件(Networking plug-in)以及Dashboard,也提供了基本服务,包括NTP服务、数据库服务、信息队列服务

  • 网络节点(networknode)运行网络插件与客户端,为租户网络提供交互、路由、NATDHCP服务。该节点处理虚拟机实例内外网络连接

  • 计算节点(computenode)运行虚拟机实例的hypervisor部分,默认情况下,计算服务使用KVM作为hypervisor

 

Neutron网络架构的最小硬件需求:

installguidearch-neutron-hw.png

 

Neutron网络拓扑:

installguidearch-neutron-networks.png


Neutron网络架构服务部署:

installguidearch-neutron-services.png