背景:本文进行了 Openstack 基础介绍。


一、Openstack基础

img

​ OpenStack是一个由NASA(美国国家航空航天局)和Rackspace合作研发并发起的,以Apache许可证授权的自由软件和开放源代码项目。

​ OpenStack是一个开源的云计算管理平台项目,由几个主要的组件组合起来完成具体工作。OpenStack支持几乎所有类型的云环境,项目目标是提供实施简单、可大规模扩展、丰富、标准统一的云计算管理平台。OpenStack通过各种互补的服务提供了基础设施即服务(IaaS)的解决方案,每个服务提供API以进行集成。

​ openstack是一个云平台管理的项目,它不是一个软件。也就是说我们可以使用openstack来管理我们一个数据中心大量资源池。它里面包含了很多子项目。

1. 基本架构

Openstack组建功能.png

说明:这里面所有的服务都是围绕着VM进行提供服务的,虚拟机需要什么资源,我们就提供什么资源。

我们可以将服务分为两大类,一个是服务的提供者,一个是服务的消费者。提供者是我可以提供某个服务,消费者是我可以用到这个服务。

openstack可以说是一个框架,或者说是一个管理平台。

2. 常见核心项目

服务名称 项目名称 描述
Dasgviard Horizon 基于Openstack API接口使用diango开发的Web管理
Compute Nova 通过虚拟化技术提供计算资源池
Networking Neutron 实现了虚拟机的网络资源管理。
Storage (存储)
Object Storage Swift 对象存储,适用于“一次写入、多次读取”
Block Storage Cinder 块存储,提供存储资源池
Shared Services (共享服务)
Identify Service Keystone 认证管理
Image Service Glance 提供虚拟镜像的注册和存储管理
Telemetry Ceilometer 提供监控和数据采集、计量服务
Higher-level Services (高层服务)
Orchestration Heat 自动化部署的组件
Database Service Trove 提供数据库应用服务

3. OpenStack优势

  • 控制性:完全开源的平台,提供API接口,方便与第三方技术集成

  • 兼容性:OpenStack兼容其他公有云,方便用户进行数据迁移

  • 可扩展性:模块化设计,可以通过横向扩展,增加节点、添加资源

  • 灵活性:根据自己的需要建立相应基础设施,增加集群规模

  • 行业标准:众多IT领军企业已经加入到OpenStack项目

4. OpenStack组件通信关系

  • 基于AMQP协议的通信:用于每个项目内部各个组件之间的通信

  • 基于SQL的通信:用于各个项目内部的通信

  • 基于HTTP协议进行通信:通过各项目的API建立的通信关系,API都是RESTful Web API

  • 通过Native API实现通信:OpenStack各组件和第三方软硬件之间的通信