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. Flume使用(案例分析)

    Flume官方文档 Usage: bin/flume-ng <command> [options]... commands: help display this help text age ...

  2. Android面试收集录 Android入门

    1.Android的特点有哪些? 编程语言是Java或Kotlin,Android中的Java字节码是允许在Dalvik虚拟机上的 支持4大组件 Android内置了WebKit核心的浏览器,支持H5 ...

  3. 2,Python常用库之二:Pandas

    Pandas是用于数据操纵和分析,建立在Numpy之上的.Pandas为Python带来了两种新的数据结构:Pandas Series和Pandas DataFrame,借助这两种数据结构,我们能够轻 ...

  4. ListView Viewholder的坑 线性布局的坑

    1.ListView Viewholder的坑 /** * 默认带图片的menu adapter */ public static class MenuImageAdapter extends Bas ...

  5. Java Spring Controller 获取请求参数的几种方法

    技术交流群:233513714  1.直接把表单的参数写在Controller相应的方法的形参中,适用于get方式提交,不适用于post方式提交.若"Content-Type"=& ...

  6. Reverse Word in a String(翻转字符串)&字符串最后一个单词的长度

    1.题目: Given an input string, reverse the string word by word. For example,Given s = "the sky is ...

  7. laravel5.5容器

    目录 1. 比较典型的例子就是 cache 缓存 2. 容器顾名思义,其实就是完成存取过程 2.1 绑定过程 简单绑定 绑定单例 绑定实例 绑定初始数据 2.2 解析过程 容器主要是为了实现控制反转, ...

  8. linux的screen常用命令使用记录

    新建screen screen 或者 screen -S name - name用于指定一个screen的名字,默认系统随机 暂时退出当前screen ctrl + a + d - 同时按住这三个键即 ...

  9. BETA(1)

    目录 组员情况 组员1(组长):胡绪佩 组员3:庄卉 组员4:家灿 组员5:凯琳 组员6:翟丹丹 组员7:何家伟 组员8:政演 组员9:黄鸿杰 组员10:刘一好 组员11:何宇恒 展示组内最新成果 团 ...

  10. BI商业智能培训系列——(一)概述

    简介: Business Intelligence,简称 BI. 商业智能,是指用现代的技术进行数据分析,以实现商业价值,这些技术包括数据仓库技术,线上分析处理技术,数据挖掘,数据展现技术等. 以往的 ...