概况

概况

The OpenStack project is an open source cloud computing platform that supports all types of cloud environments. The project aims for simple implementation, massive scalability, and a rich set of features. Cloud computing experts from around the world contribute to the project.

OpenStack通过各种补充服务提供基础设施即服务 Infrastructure-as-a-Service (IaaS)

本指南涵盖了如何安装功能示例架构逐步部署下面主要的OpenStack服务,特别适合于对Linux经验丰富的OpenStack新用户:

OpenStack services

服务

项目名称

描述

`仪表盘<http://www.openstack.org/software/releases/liberty/components/horizon>`_

Horizon

提供了一个基于web的自服务门户,与OpenStack底层服务交互,诸如启动一个实例,分配IP地址以及配置访问控制。

Compute Nova

在OpenStack环境中计算实例的生命周期管理。按需响应包括生成、调度、回收虚拟机等操作。

Networking Neutron

确保为其它OpenStack服务提供网络连接即服务,比如OpenStack计算。为用户提供API定义网络和使用。基于插件的架构其支持众多的网络提供商和技术。

   

存储

Object Storage Swift

通过一个 RESTful,基于HTTP的应用程序接口存储和任意检索的非结构化数据对象。它拥有高容错机制,基于数据复制和可扩展架构。它的实现并像是一个文件服务器需要挂载目录。在此种方式下,它写入对象和文件到多个硬盘中,以确保数据是在集群内跨服务器的多份复制。

Block Storage Cinder

为运行实例而提供的持久性块存储。它的可插拔驱动架构的功能有助于创建和管理块存储设备。

   

共享服务

Identity service Keystone

为其他OpenStack服务提供认证和授权服务,为所有的OpenStack服务提供一个端点目录。

Image service Glance

存储和检索虚拟机磁盘镜像,OpenStack计算会在实例部署时使用此服务。

Telemetry Ceilometer

为OpenStack云的计费、基准、扩展性以及统计等目的提供监测和计量。

   

高层次服务

Orchestration Heat

既可以使用本地 :term:`HOT <Heat Orchestration Template (HOT)>`模板格式,亦可使用AWS CloudFormation模板格式,来编排多个综合的云应用,通过OpenStack本地REST API或者是CloudFormation相兼容的队列API。


在对这些OpenStack服务基础安装,配置,操作和故障诊断熟悉后,使用生产架构部署时你应该考虑下面的几个步骤。

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

  • 使用诸如防火墙,加密和服务策略的方式加强安全。

  • 使用自动化工具,如 Ansible,Chef , Puppet 或者Salt实现自动部署和管理生产环境。

示例架构

为了启动一个基本 :term:`virtual machine <virtual machine (VM)>`或者实例,这个示例架构要求至少两个节点(主机)。诸如块存储和对象存储这样的可选服务需要额外的节点。

这个示例架构不同于最小生产架构,具体如下:

  • 网络代理在控制节点上而不是在一个多重多个独立的网络节点上。

  • 私有网络的叠加(隧道)流量通过管理网络而不是专用网络。

产品架构的更多信息,参见`架构设计手册 <http://docs.openstack.org/arch-design/content/>`__, 运维手册, and 网络手册.

Hardware requirements

硬件需求

控制器

控制节点运行身份认证服务,镜像服务,管理部分计算和网络服务,不同的网络代理和仪表盘。同样包括像SQL数据库, :term:`message queue`和 :term:`NTP`这样的支撑服务。

可选的,可以在控制节点允许块存储,对象存储,Orchestration和Telemetry服务。

控制节点需要最少两块网卡。

计算

计算节点运行操作实例的 :term:`hypervisor`计算部分。默认情况下使用 :term:`KVM <kernel-based VM (KVM)>`作为hypervisor。计算节点同样运行网络服务代理,用来连接实例到虚拟网络,通过:term:`security groups <security group>`为实例提供防火墙服务。instances via .

你可以部署超过1个计算节点。每个节点要求最少两个网络接口。

块设备存储

该可选的块存储节点包含磁盘,块存储服务会向实例提供这些磁盘。

简单起见,计算节点和这个节点间的服务流量使用管理网络。生产环境中应该实施单独的存储网络以增强性能和安全。

你可以部署超过一个块存储节点。每个节点要求至少一个网卡接口。

对象存储

该可选的对象存储节点包含磁盘,对象存储服务用来存储账号,容器和对象。

简单起见,计算节点和这个节点间的服务流量使用管理网络。生产环境中应该实施单独的存储网络以增强性能和安全。

这个服务要求两个节点。每个节点要求最少一个网络接口。你可以部署超过两个对象存储节点。

网络

从下面虚拟网络选项中选择一种。

网络选项1:提供者网络

提供者网络选项以最简单的方式部署OpenStack网络服务,可能包括二层服务(桥/交换机)服务、VLAN网络分段。本质上,它建立虚拟网络到物理网络的桥,依靠物理网络基础设施提供三层服务(路由)。额外地 ,:term:`DHCP`为实例提供IP地址信息。

注解

这个选项不支持自服务私有网络,3层(路由)服务和高级服务比如 LBaaSFWaaS。如果您希望有这些特性,考虑自服务网络选项。

Networking Option 1: Provider networks - Service layout

网络选项2:自服务网络

自服务网络选项扩展提供者网络选项,三层网络服务启用 self-service`网络使用叠加分段方法,比如 :term:`VXLAN。本质上,它使用 :term:`NAT`路由虚拟网络到路由物理网络。额外地,这个选项提供高级服务的基础,比如LBaas和FWaaS。

Networking Option 2: Self-service networks - Service layout
Creative Commons Attribution 3.0 License

Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.