|
一:基本概念
OpenStack是一个开源的支持所有云类型的云计算平台,旨在变得实现简单、大规模可扩展、功能丰富。
OpenStack通过一组相关的服务提供一套基础设施即服务(IaaS)的解决方案。每个服务提供一个API接口,来支持服务的整合。你可以根据需求选择安装部分或全部服务。
下表描述了构成OpenStack架构的OpenStack服务
OpenStack Services¶
ServiceProject nameDescriptionDashboardHorizon 提供基于web的自服务门户来跟底层OpenStack服务交互,比如启动一个实例,分配IP地址,配置访问控制等。
Compute serviceNova 管理OpenStack环境中Compute实例的生命周期。职责包括根据指令来生成、调度、停用虚拟机。
Networking serviceNeutron 给其他OpenStack服务比如OpenStack Compute服务提供‘网络连接即服务’功能。给用户提供api来定义网络及其附属。拥有可插拔式架构来支持很多流行的第三方服务及技术。
Object Storage serviceSwift 通过基于HTTP的RESTful接口来存储和检索任意非结构化的数据对象。由于数据复制与扩展架构它是高容错的。它的实现不是像带有可挂载文件夹的文件服务器一样。它支持向多种驱动中写入对象和文件,来保证数据在服务器集群中的复制。
Block Storage serviceCinder 给运行中的实例提供持久化的块存储。它的可插拔式驱动架构为块存储设备的创建和管理提供了方便。
Identity serviceKeystone 给其他OpenStack服务提供授权和认证服务。它给所有OpenStack服务提供路由目录。
Image serviceGlance 存储和检索虚拟机硬盘镜像。OpenStack Compute在生成实例时使用此服务。
Telemetry serviceCeilometer 监控并计量OpenStack云来记账、对标、扩展、统计
Orchestration serviceHeat 通过本地模板或者AWS CloudFormation模板来编排多个复合式云应用,使用方式支持OpenStack原生 REST API和CloudFormation兼容的Query API
Database serviceTrove 提供可伸缩、可靠的`数据库即服务`的云功能,支持关系型和非关系型数据库两种类型。
Data Processing serviceSahara 通过指定参数如Hadoop版本、集群拓扑、节点硬件参数等来提供、伸缩Hadoop集群。
二:服务关系图
三:逻辑架构
为了设计、部署和配置OpenStack,管理员必须理解明白OpenStack的逻辑架构。正如上面服务关系图显示,OpenStack由多个称作OpenStack服务的独立部分组成。所有服务授权认证都是通过Identity服务。单个服务通过公共APIs与其他服务进行交互,特权管理员用户命令除外。在内部,OpenStack服务是由几个进程组成。所有的服务都至少有一个API进程,用来监听API请求、预处理服务并传递它们到其他服务。除了Identity服务外,其他服务是由不同的进程来完成工作的。对于一个服务之间的进程通信,使用AMQP消息代理。这些服务状态存储在一个数据库中。当部署和配置OpenStack云时,你可以选择不同的消息代理和数据库服务,如RabbitMQ、MySQL、MariaDB和SQLite。
用户可以通过基于web的用户接口来访问 OpenStack,而这些用户接口是由Dashboard实现的。支持的用户接口包括命令行客户端、通过浏览器或curl调用 api请求。已经有多个OpenStack API SDK 可用了。基本上所有的访问方法都用 REST api 来调用不同的服务。
|
|
|
|
|
|
|