OpenStack入门介绍

News

openstack的架构分布特点

Openstack采用模块化的设计,每个功能由单一的模块组件提供,模块与模块之间使用标准的RPC远程过程调用机制,接口为Restful API。 

各功能模块相互独立,整体构建了一个松耦合的系统架构。也就是其中某个组件出现了问题,仅会影响当前模块功能,不会影响到其他模块,这样对openstack内各模块就可以实现单独的定制、升级。

RPC

RPC定义:Remote Procedure Call(远程过程调用),是从远程主机调用一个过程/函数的机制。

RPC目标:让远程过程(服务)调用透明化;Openstack整体组件间的通信机制采用的就是RPC的方式。

Restful API

Restful api 是openstack各服务调用的接口,简单理解为可以通过网络去调用的函数。

它是一种通过使用URL链接,通过HTTP协议里面,四个表示操作方式的动词:POST、GET、PUT、DELETE来对资源进行统一的操作。

Restful api的四大特点

使用HTTP方法;调用命令的CRUD(Create, Read, Update, Delete),对应着HTTP的四个动作。

无状态;无需关注服务端对会话的保存,更易于实现集群、负载均衡等功能,实现组件间的松耦合。

URI命名/组织采用类似目录结构;通过目录的方式,对资源进行管理。

采用XML、JSON传输信息;易于编程解读。

 

重要组件介绍

组件 项目 项目说明
Compute(计算服务) Nova 实施服务和关联的库,以提供对可计算资源(包括裸机,虚拟机和容器)的大规模可扩展的按需自助服务访问
Identity Service(认证服务) Keystone 提供API客户端身份验证,服务发现和分布式多租户授权
Image Service(镜像服务) Glance 发现,注册和检索虚拟机映像。Glance具有一个RESTful API,该API允许查询VM映像元数据以及检索实际映像。通过Glance提供的VM映像可以存储在从简单文件系统到对象存储系统(例如OpenStack Swift项目)的各种位置。
Networking(网络服务) Neutron SDN网络项目,在虚拟计算环境中交付网络即服务
Dashboard(仪表板) Horizon 为OpenStack服务提供基于Web的用户界面
Block Storage(块存储) Cinder 虚拟化了块存储设备的管理,并为最终用户提供了自助服务API,以请求和使用这些资源,而无需了解其存储实际部署在何处或在哪种类型的设备上。
Object Storage(对象存储) Swift 高度可用的,分布式的,最终一致的对象存储。组织可以使用Swift来高效、安全和廉价地存储大量数据。
Telemetry(计量服务) Ceilometer 有效收集,规范化和转换OpenStack服务产生的数据
Orchestration(编排服务) Heat 基于文本文件形式的模板,为云应用程序协调基础结构资源,可以将其视为代码
Database Service(数据库服务) Trove 一个数据库即服务供应关系和非关系数据库引擎
Data Processing(数据处理) Sahara 为用户提供一种简单的方法来在OpenStack上预配数据处理框架(例如Hadoop,Spark和Storm)