前言

OpenStack主要由七部分组成,分别是Identify, Image, Network, Compute, Block Storage, Object Storage, Dashboard,分别表示认证模块,镜像模块,网络模块,计算模块,块存储模块,对象存储模块和管理模块.

Identify(Keystone)

为其他几个模块提供认证服务,所有的认证操作都会通过keystone来进行。

整个keystone其实就是在数据库中建立用户(user)、角色(role)、Tenant、服务(service)、endpoint以及其相互对应关系。Tenant在之前的版本中叫做Project,Tenant是一个独立的资源容器。每个Tenant都可以定义独立的VLAN, volumes, instances, images, keys, users等。服务指的是OpenStack所提供的那几种服务(network, volume, image, identify, compute, swift)。endpoint是指各服务的内部、外部及管理接口址(REST API)。

Image(Glance)

提供镜像服务,创建虚拟机什么的都会从这里拉取镜像模板。

你可以将镜像通过Glance来上传到相应目录并在数据库里标记镜像的位置、属性及相关权限。使用nova来创建instance的时候就是从Glance的数据库中来查找镜像文件及相关属性、权限。

Network(Neutron/Quantum)

提供网络服务,即创建虚拟机的IP地址分配及网络分配都由它来支配。

Openstack在Havana版本之前的网络模块组件名称叫Quantm,Openstack在Havana版本上将Quantum更名为Neutron。

在OpenStack的网络管理流程中,通常需要经过以下几个步骤:

1.    创建一个网络;
2.    创建一个子网;
3.    启动一个虚机,将一块网卡对接到指定的网络上;
4.    删除虚机;
5.    删除网络端口;
6.    删除网络;

Comupte(Nova)

提供计算服务,nova是运行在libvirt上层的的一个管理工具,用来管理操作虚拟机。

计算服务是OpenStack的核心服务,它由nova-compute模块通过libvirt、XenAPI等管理hypervisor,从而管理虚机,此外它还通过nova-api服务向外提供如EC2兼容、管控功能等的接口,通过nova-scheduler模块提供虚机调研逻辑等;这些模块间的通信全部通过消息队列完成。

Block Storage(Cinder)

提供块存储服务,持久存储虚拟机上的数据,即一台虚拟机上面会挂载其他磁盘如vdb/vdc/vdd等,这个虚拟的磁盘就是Cinder在宿主机上创建的raw或qcow2文件

Object Storage(Swift)

对象存储,存储的是一些资源文件,如图片、代码等文件。对象存储服务是OpenStack最早期的两个服务之一(另一个是计算服务),在OpenStack平台中,任何的数据都是一个对象。

Dashboard(horizon)

管理这些模块的web平台,大部分操作都可以在Dashboard中进行。

参考文档

https://raw.githubusercontent.com/chenzhiwei/linux/master/openstack/README.mkd

http://blog.csdn.net/xiangmin2587/article/details/7737778

http://www.cnblogs.com/ZisZ/p/3399773.html

4 http://www.ibm.com/developerworks/cn/cloud/library/cl-openstack-cloud/?cmp=dwskl&cpb=dw&ct=dwcon&cr=cn_CCID_CS&ccy=cn

openstack七大模块概述的更多相关文章

  1. XAF-通知模块概述 web+win

    通知模块概述 1.支持 WinForms和ASP.NET程序. 2.支持调度模块或自定义业务对象. 3.功能:在指定的时间,弹出一个窗口,用户可以查看提醒.也可以取消或推迟. 如需演示项目的源码,可以 ...

  2. spark概念、编程模型和模块概述

    http://blog.csdn.net/pipisorry/article/details/50931274 spark基本概念 Spark一种与 Hadoop 相似的通用的集群计算框架,通过将大量 ...

  3. Spring七大模块

    七大模块,如下: 1. Spring Core: Core封装包是框架的最基础部分,提供IOC和依赖注入特性.这里的基础概念是BeanFactory,它提供对Factory模式的经典实现来消除对程序性 ...

  4. Spring框架的七大模块

    转载于:https://www.cnblogs.com/Z-wen/p/11681211.html   Spring框架的七大模块 1. Spring Core:Core封装包是框架的最基础部分,提供 ...

  5. Spring框架分为哪七大模块,各模块的主要功能作用是什么

    七大模块,如下: 1. Spring Core: Core封装包是框架的最基础部分,提供IOC和依赖注入特性.这里的基础概念是BeanFactory,它提供对Factory模式的经典实现来消除对程序性 ...

  6. 爱了,字节跳动大神最佳整理:582页Android NDK七大模块学习宝典,理论与实践

    前言 时至今日,短视频App可谓是如日中天,一片兴兴向荣.随着短视频的兴起,音视频开发也越来越受到重视,而且薪资水涨船高,以一线城市为例,音视频工程开发的薪资比Android应用层开发高出40%. 但 ...

  7. ASP.NET Core模块概述

    原文地址:ASP.NET Core Module overview By Tom Dykstra, Rick Strahl, and Chris Ross ASP.NET Core模块(ANCM)让你 ...

  8. [02] Spring主要功能模块概述

    1.Spring主要功能模块   1.1 Core Container Spring的核心容器模块,其中包括: Beans Core Context SpEL Beans和Core模块,是框架的基础部 ...

  9. openstack配置模块

    一.简介 openstack中负责处理配置的模块是oslo.config,它可以处理配置项和配置文件.通常的配置处理都是如下形式: from oslo.config import cfg CONF=c ...

随机推荐

  1. WCF学习之旅—TcpTrace工具(二十五)

    前面的几篇文章,我们学习了怎么开发WCF应用程序与服务,也学习了如何进行WCF的配置.对于Web Service与WCF服务应用,服务端与客户端的通信是通过收发SOAP Message进行,我们如何有 ...

  2. 我为NET狂官方面试题

    基础牢不牢测一测便了解,工作没工作测一测便清楚,工作有几年测一测便知道 最近帮人过一遍C#基础,出了点题目,有需要的同志拿走 答案不唯一,官方答案只供参考,若有错误欢迎提出~ 更新ing 1.面向过程 ...

  3. Ninesky源代码从Codeplex迁移到开源中国

    原来Ninesky代码一直发在Codeplex.com上,最近两三个星期了代码一直迁入不上去,网站访问也经常出错. 所以把代码放到开源中国去了,项目地址https://git.oschina.net/ ...

  4. Elinq+Oracle

    这份工作一直以来都用Oracle数据库,先前都是直接用的ADO.NET但是写包跟存储过程是一个很头疼的事情,满足不了快速开发的需求. 一直常识找比较好用的ORM,先前用的Entity Framewor ...

  5. 【Python五篇慢慢弹】数据结构看python

    数据结构看python 作者:白宁超 2016年10月9日14:04:47 摘要:继<快速上手学python>一文之后,笔者又将python官方文档认真学习下.官方给出的pythondoc ...

  6. 匹夫细说C#:庖丁解牛聊委托,那些编译器藏的和U3D给的

    0x00 前言 由于工作繁忙所以距离上一篇博客已经过去一个多月的时间了,因此决心这个周末无论如何也得写点东西出来,既是总结也是分享.那么本文主要的内容集中在了委托的使用以及内部结构(当然还有事件了,但 ...

  7. 在mongoose中使用$match对id失效的解决方法

    Topic.aggregate( //{$match:{_id:"5576b59e192868d01f75486c"}}, //not work //{$match:{title: ...

  8. C#得到某月最后一天晚上23:59:59和某月第一天00:00:00

    项目需求: 某学校订单截止操作时间的上一个月最后一天晚上23:59:59 为止所有支付的订单统计: 代码: /// <summary> /// 通过学校和截止时间得到订单 /// < ...

  9. STM32F746的RTC使用

    1.RTC模块采用低速晶振外接始终:32.768KHz,如下图所示 2.配置RTC模块: 其中,Fck_apre.Fck_spre始终上配置不容易理解, 如果想得到1Hz的始终频率,则需要将PERDI ...

  10. 移动端HTML

    display:-webkit-box 把该元素中的所有元素变成块级元素,比如 <ul class="top-nav"> <li>地图</li> ...