Preface 前言

OpenStack系统由几个单独安装的关键服务组成。这些服务根据您的云需求一起工作,包括计算、身份验证、网络、镜像、块存储、对象存储、监控、编排和数据库服务。您可以分别安装这些项目中的任何一个,并将它们独立配置或安装到一起。

OpenStack项目是一个开源云计算平台,适用于所有类型的云,其目的是实现简单、可伸缩性强、功能丰富。来自世界各地的开发者和云计算技术人员创建OpenStack项目。

OpenStack基础架构即服务(IaaS)提供了一种通过一组相互关联的服务解决方案。每个服务都提供了一个便于集成的应用程序编程接口(API)。根据您的需要,您可以安装一些或所有服务。

OpenStack架构:

概念架构图:

逻辑架构:

为了设计、部署和配置OpenStack,管理员必须理解逻辑架构。

正如概念体系结构所示,OpenStack由几个独立的部分组成,名为OpenStack服务。所有服务通过共同身份服务进行身份验证。个别服务通过公共API相互交互,但必要的特权管理员命令除外。

在内部,OpenStack服务由几个进程组成。所有的服务都有至少一个API进程,监听API请求,预处理它们,把它们传给服务的其他部分。除了身份验证服务之外,实际工作是通过确切的进程完成的。

为了一个服务之间不同的进程通信,一个AMQP消息中间人被使用。服务的状态存储在数据库中。在部署和配置你的OpenStack云,你可以在几个消息代理和数据库解决方案中进行选择,如RabbitMQMySQLSQLiteMariaDB

用户可以通过基于Web仪表板实现的基于Web的用户界面访问OpenStack,通过命令行客户端和通过浏览器插件或curl等工具发出API请求。对于应用程序,一些SDK是可用的。最终,所有这些访问方法都会向各种OpenStack服务发出REST API调用。

下图展示了OpenStack云的最常见但不是唯一的架构:

概述

OpenStack项目是一个开源云计算平台,支持所有类型的云环境。该项目旨在实现简单、大规模的可伸缩性和丰富的特性集。来自世界各地的云计算专家为这个项目做出了贡献。

OpenStack基础架构即服务(IaaS)提供了一种通过各种互补的服务解决方案。每个服务都提供了一个便于集成的应用程序编程接口(API)。

本指南涵盖了主要的OpenStack服务的分步部署,其功能示例结构适合于具有足够Linux经验的OpenStack新用户。本指南不打算用于生产系统安装,但为了学习OpenStack的目的,创建一个最低限度的概念证明。

在熟悉了这些OpenStack服务的基本安装、配置、操作和故障排除后,您应该考虑以下步骤:使用生产体系结构进行部署:

确定并实现必要的核心和可选服务,以满足性能和冗余要求。

使用防火墙、加密和服务策略等方法增加安全性。

实现一个部署工具如Ansiblepuppetchef,或salt自动化部署和管理生产环境。