OpenStack介绍及原理
- 什么是OpenStack?
- 云计算服务模型
- Openstack概述
- Openstack服务(核心组件)
- OpenStack组件通信关系
- OpenStack逻辑架构
- OpenStack物理架构
- OpenStack优势
什么是OpenStack?
OpenStack是一种云操作系统,可控制整个数据中心内的大型计算,存储和网络资源池,所有这些资源均通过仪表板进行管理,该仪表板可让管理员进行控制,同时授权其用户通过Web界面配置资源。
云计算服务模型
LaaS (基础架构及服务)
提供底层IT基础设施服务,包括处理能力、储存空间、网络资源等
面向对象一般是IT管理人员
PaaS (平台及服务)
把安装好开发环境的系统平台作为一种服务通过互联网提供给用户
面向对象一般是开发人员
SaaS(软件即服务)
直接通过互联网为用户提供软件和应用程序等服务
面向对象一般是普通用户
Openstack概述
- NASA (美国国家航空航天局)和Rackspace 共同发起
- 以Apache许可证授权的自由软件和开发源代码项目
- 为公有云及私有云的建设与管理提供软件的开源项目
- 覆盖了网络、虚拟化、操作系统、服务器等各个方面
Openstack服务(核心组件)
OpenStack组件通信关系
- 基于AMQP协议的通信
用于每个项目内部各个组件之间的通信。 - 基于SQL的通信
用于各个项目内部的通信。 - 基于HTTP协议进行通信
通过各项目的API建立的通信关系,API都是RESTful Web API。 - 通过Native API实现通信
OpenStack各组件和第三方软硬件之间的通信。
OpenStack逻辑架构
- OpenStack包括若干个称为OpenStack服务的独立组件。所有服务均可通过一个公共身份服务进行身份验证。除了那些需要管理权限的命令,每个服务之间均可通过公共API进行交互。
- 每个OpenStack服务又由若干组件组成。包含多个进程。所有服务至少有一个API进程,用于侦听API请求,对这些请求进行预处理,并将它们传送到该服务的其他组件。除了认证服务,实际工作都是由具体的进程完成的
- 至于一个服务的进程之间通信,则使用AMQP消息代理。服务的状态存储在数据库中。
OpenStack物理架构
一个OpenStack是由控制节点,计算节点,网络节点,存储节点四大部分组成。(这四个节点也可以安装在一台机器上,单机部署)其中:
控制节点:负责对其余节点的控制,包含虚拟机建立,迁移,网络分配,存储分配等等
计算节点:负责虚拟机运行
网络节点负责对外网络与内网络之间的通信
存储节点负责对虚拟机的额外存储管理
OpenStack优势
控制性
- 完全开源的平台,提供API接口,方便与第三方技术集成
兼容性
- OpenStack兼容其他公有云,方便用户进行数据迁移
可扩展性
- 模块化设计,可以通过横向扩展,增加节点、添加资源
灵活性
- 根据自己的需要建立相对基础设施、增加集群规模
行业标准
- 众多IT领军企业已经加入到OpenStack项目