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. Python 外部函数调用库ctypes简介

    Table of Contents 1. 参考资料 2. ctypes简介 2.1. 数据类型 2.2. 调用.so/.dll 2.2.1. 加载动态链接库 2.2.2. 调用加载的函数 2.2.3. ...

  2. Android 打印方法调用堆栈

    RuntimeException here = new RuntimeException("here"); here.fillInStackTrace(); Log.w(" ...

  3. pdo事务

    $pdo->beginTransaction() $pdo->commit() $pdo->rollback();

  4. Webdriver--获得验证信息

    title:获得当前页面的标题 current_url:获得当前页面的URL text:前面提到过,获得标签对的文本信息 try: couseTitle = driver.find_element_b ...

  5. NGUI-UIProgressBar,UIScrollBar,UISlider

    UIProgressBar是UIScrollBar和UISlider的基类 1.先来看下UIProgressBar(进度条)的使用 层次: progressBar的Inspector视图: 而fore ...

  6. Hibernate 查询方法

    1.简单查询: public User select(User user) { User newUser; try { newUser = (User) session.get(User.class, ...

  7. [错误解决]pandas DataFrame中经常出现SettingWithCopyWarning

    先从原dataframe取出一个子dataframe,然后再对其中的元素赋值,例如 s = d[d['col_1'] == 0] s.loc[:, 'col_2'] = 1 就会出现报错: Setti ...

  8. 删除maven仓库中的lastUpdate文件

    使用idea时导入hibernate 5.1.0的jar包,然后发现本地仓库中找不到该版本的jar 然后手贱 alt+enter 发现提示 update maven indices 然后以为更新就会好 ...

  9. ftrace 简介

    ftrace 简介 ftrace 的作用是帮助开发人员了解 Linux 内核的运行时行为,以便进行故障调试或性能分析. 最早 ftrace 是一个 function tracer,仅能够记录内核的函数 ...

  10. 软考——(1)J2SE

    我们先从Java说起,简单的说,Java是一种面向对象的程序设计语言,可跨平台使用. 与之前学习的程序设计语言相比,最值得一提的就是Java的两种核心机制:Java虚拟机和垃圾回收机制. 1)虚拟机 ...