openstack 组件介绍

1.horizon -- UI模块    为云管理提供整体视图,以实现资源整合和管理配额    为终端用户提供自动服务门户,在自由范围内自由操作,使用资源

2.keystone -- 身份服务模块    User:即用户,代表可以通过keystone访问程序的人或用户,User通过认证信息(如密码,API KEYS等)进行验证    tenant:即租户,它是各个服务中的一些可以访问的资源集合    role:即角色,Roles代表一组用户可以访问的资源权限    比如一个家庭买了100平米的房子,那么家庭能访问的100平米的房子的所有资源就叫做tenant,家庭中的每一个人便是user。    但是父母对房子的支配权肯定比孩子要大,那么每个人所能支配资源的权限便是role

    service:即服务,如Nova,glance,swift。服务在keystone上进行注册    endpoint:可以理解为服务暴露出来的一个访问点,如果访问一个服务则必须知道它的访问点    Token:访问资源的令牌,现实中的钥匙,具有时效性    可以把keystone理解为黑中介,那么service便是黑中介手上的房子的资源,endpoint是房子的地址,token是打开房子的钥匙    用户必须从keystone(黑中介)手上,拿到房子的(endpoint)地址,拥有(token)钥匙,才能对房子(service)进行使用

    keystone提供的服务        identity服务验证了身份验证凭证        token服务将会验证并管理用户验证身份请求的令牌        catalog服务提供了可用于端点发现的服务注册表。每个OpenStack服务要在keystone上注册,实际上便是注册到catalog上面        policy暴露了一个基于规则的身份验证引擎

3.Nova -- 计算服务    OpenStack的核心服务,主要功能包括        实力生命周期管理        计算资源管理,当用不了那么多的资源时,便可退还一部分        向外提供rest风格的api

    Nova组件主要由三个功能不同的模块组成        Nova-api:位于表示层,主要用于接收外部的rest请求        Nova-schedule:位于逻辑控制层,主要负责居中调停,选择由哪个主机来创建VM        Nova-compute:负责虚拟机的创建,资源的分配等等。                      Nova-compute本身不支持虚拟化功能,但支持各种虚拟化形式

        这三个组件并不是直接访问的,而是通过消息队列(如rabbitMQ)        User request到来,先到达Nova-api,Nova-api将消息传递给消息队列。消息队列然后将请求转交给Nova-scheduler,        Nova-scheduler作为调度的中枢,根据不同的考虑,比如负载较轻,可用性高等等,选择不同的host。当host选择结束,        会将消息传递给消息队列,消息队列再将信息传递给Nova-computer,由Nova-computer创建虚拟机

4.glance -- 镜像服务    提供虚拟机镜像的存储,查询和检索服务    为Nova组件提供服务,Nova要创建虚拟机,必须要先从glance组件这里获取镜像    依赖于存储服务和数据库,存储主要存储镜像本身,数据库则储存跟镜像相关的数据    无论是web portal还是command line interface请求,都要先到达glance-api里面,    由glance-api进行解析,然后在glance-registry进行查询相应的信息,比如版本,操作系统,选择合适的镜像,    然后到database里面找到合适镜像的位置,再根据位置到image store获取相应的镜像

5.swift -- 对象存储服务组件    和nova一样,OpenStack最早的两个服务之一    高可用分布式对象存储服务,不用担心数据丢失等等,因为有备份    定位:account --> container --> object,一个的账户的容器的对象    可以通过HTTP(S),Object API及S3接口存取

6.cinder -- 块存储服务    管理所有的块存储服务,为VM服务    cinder-request还是先到达cinder-api,然后要到达消息队列,再到达cinder-scheduler决定在哪个host上创建vm,    最后由cinder-volume创建虚拟机

7.Neutron -- 网络服务    提供云计算下的虚拟网络功能    给每个租户独立的网络环境    三种模式:flat模式,flat DHCP模式,VLAN模式        flat和flat DHCP是比较典型的网桥模式,前者需要手工配置,后者在网关出起了DHCP进程可以辅助用户进行配置        VLAN为每个不同的用户设立了不同的虚拟子网,用户在虚拟子网中可以有自己的虚拟ip,用户需要的时候可以在这些        私有ip中进行选择,分配给不同的虚拟机

OpenStack各组件之间的联系

OpenStack访问控制流程

												

OpenStack基础概念的更多相关文章

  1. 2019-04-18-NFV基础概念

    NFV技术的起源和概念 在移动互联网时代,运营商面临内外困局.就自身而言,采用的流量增长-网络扩容-收入增长的商业模型正在失效,庞大.僵化的电信基础网络,不能够满足用户的丰富需求:就竞争对手而言,互联 ...

  2. 【Machine Learning】机器学习及其基础概念简介

    机器学习及其基础概念简介 作者:白宁超 2016年12月23日21:24:51 摘要:随着机器学习和深度学习的热潮,各种图书层出不穷.然而多数是基础理论知识介绍,缺乏实现的深入理解.本系列文章是作者结 ...

  3. 【转】《从入门到精通云服务器》第六讲—OpenStack基础

    前五期的<从入门到精通云服务器>受到了广泛好评,收到留言,有很多读者对云计算相关的技术非常感兴趣.应观众要求,我们这期要安利一条纯技术内容.准备好瓜子.花生,随小编一起进入OpenStac ...

  4. TCP/IP基础概念及通信过程举例

    TCP/IP基础概念及通信过程举例 出现 上个世纪60年代,由于中央集中式网络的容灾性较弱,以美国国防部为中心的一家组织研究出分组交换网络.后来为了验证分组交换技术的实用性,ARPANET出现了,并且 ...

  5. Jmeter基础之---jmeter基础概念

    Jmeter基础之---jmeter基础概念 JMeter 介绍: 一个非常优秀的开源的性能测试工具. 优点:你用着用着就会发现它的重多优点,当然不足点也会呈现出来. JMeter 介绍: 一个非常优 ...

  6. 快速入门系列--WCF--01基础概念

    转眼微软的WCF已走过十个年头,它是微软通信框架的集大成者,将之前微软所有的通信框架进行了整合,提供了统一的应用方式.记得从自己最开始做MFC时,就使用过Named Pipe命名管道,之后做Winfo ...

  7. 理解 angular2 基础概念和结构 ----angular2系列(二)

    前言: angular2官方将框架按以下结构划分: Module Component Template Metadata Data Binding Directive Service Dependen ...

  8. JavaBean 基础概念、使用实例及代码分析

    JavaBean 基础概念.使用实例及代码分析 JavaBean的概念 JavaBean是一种可重复使用的.且跨平台的软件组件. JavaBean可分为两种:一种是有用户界面的(有UI的):另一种是没 ...

  9. RabbitMQ基础概念详细介绍

    http://blog.csdn.net/column/details/rabbitmq.html 转至:http://www.ostest.cn/archives/497 引言 你是否遇到过两个(多 ...

随机推荐

  1. [转]渗透测试tips...零碎的小知识

    1.拿到一个待检测的站,你觉得应该先做什么?收集信息whois.网站源IP.旁站.C段网站.服务器系统版本.容器版本.程序版本.数据库类型.二级域名.防火墙.维护者信息另说… 2.mysql的网站注入 ...

  2. vim 简单命令

    (1)查找结果全部单独显示 命令: :lvimgrep /pattern/ % | lopen (2)设置文本高亮 命令: :colorscheme evening 把 ":colorsch ...

  3. CCF-NOIP-2018 提高组(复赛) 模拟试题(一)

    T1 帽子戏法 问题描述 小 Y 有一个\(n*n*n\)的"帽子立方体" ,即一个\(n\)层的立方体,每层的帽子都 可以排成\(n*n\)的矩阵. "帽子立方体&qu ...

  4. Java的HttpClient的实现

    HttpClient的概念就是模仿浏览器请求服务端内容,也可以做App和Server之间的链接. 这个是关于Java的HttpClient的简单实例,其实java本身也可以通过自己的net包去做,但是 ...

  5. ocrosoft Contest1316 - 信奥编程之路~~~~~第三关 问题 L: 大整数减法

    http://acm.ocrosoft.com/problem.php?cid=1316&pid=11 题目描述 求两个大的正整数相减的差.   输入 共2行,第1行是被减数a,第2行是减数b ...

  6. 移动平台自动化测试:appium(一)

    Appium 是一个开源的,跨平台的自动化测试工具.它支持模拟器(iOS,FirefoxOS,Android)和真机(iOS, Android, FirefoxOS)上的原生应用,混合应用和移动 we ...

  7. Java API操作ZooKeeper

    创建会话 package org.zln.zk; import org.apache.zookeeper.WatchedEvent; import org.apache.zookeeper.Watch ...

  8. 分享下自己一直用的.NET SQLSERVER 封装类下自己写的DataHelper 操作类

    一,概述: 这个DataHelper 类是基于我上个博客里发的SQLDataAccess 这个类做的一个简单的封装,为了结合自己的实体类和数据操作而产生的. 这里面用了  属性类,反射.还有 数据类型 ...

  9. ubuntu服务器环境配置参考

    一.基本的Linux系统命令: ls 查看当前目录下的文件及文件夹 cd /var/www/html 转换目录到/var/www/html cd abc/ddd/ 转换目录到当前目录下的abc文件夹下 ...

  10. 实时流处理Storm、Spark Streaming、Samza、Flink孰优孰劣

    对于一个成熟的消息中间件而言,消息格式不仅关系到功能维度的扩展,还牵涉到性能维度的优化.随着Kafka的迅猛发展,其消息格式也在不断的升级改进,从0.8.x版本开始到现在的1.1.x版本,Kafka的 ...