01.登陆界面或命令行通过RESTful API向Keystone获取认证信息;

02.Keystone通过用户请求认证信息,并生成auth-token返回给对应的认证请求;

03.界面或命令行通过RESTful API向nova-api发送一个boot instance的请求(携带auth-token);

04.nova-api接受请求后向keystone发送认证请求,查看token是否为有效用户的token;

05.keystone验证token是否有效,如有效则返回有效的认证和对应的角色;

06.通过认证后nova-api和数据库通讯;

07.初始化新建虚拟机的数据库记录;

08.nova-api通过rpc.call向nova-scheduler请求是否有创建虚拟机的资源(Host ID);

09.nova-scheduler进程监听消息队列,获取nova-api请求;

10.nova-scheduler通过查询nova数据库中计算资源的情况,并通过调度算法计算符合虚拟机创建需要的主机;

11.对于有符合虚拟机创建的主机,nova-scheduler更新数据库中虚拟机对应的物理主机;

12.nova-scheduler通过rpc.cast向nova-compute发送对应的创建虚拟机请求的信息;

13.nova-computer会葱对应的消息队列中获取创建虚拟机请求的信息;

14.nova-computer通过rpc.call向nova-conductor请求获取虚拟机信息;

15.nova-conductor从消息队列中拿到nova-compute请求信息;

16.nova-conductor根据消息从数据库中查询虚拟机对应的信息;

17.nova-conductor从数据库中获取虚拟机对应信息;

18.nova-conductor把虚拟机信息通过消息的方式发送给消息队列;

19.nova-compute从对应的消息队列中获取虚拟机的信息;

20.nova-compute通过keystone的RESTful API拿到认证的token,并通过HTTP请求glance-api获取创建虚拟机所需要的镜像;

21.glance-api向keystone认证token是否有效,并返回验证结果;

22.token认证通过,nova-compute获得虚拟机镜像信息(URL);

23.nova-compute通过keystone的RESTful API拿到认证的token,并通过HTTP请求neutron-server获取创建虚拟机所需要的网络信息;

24.neutron-server向keystone认证token是否有效,并返回验证结果;

25.token验证通过,nova-compute获得虚拟机网络信息;

26.nova-compute通过keystone的RESTful API拿到认证的token,并通过HTTP请求cinder-api获取创建虚拟机所需要的持久化存储信息;

27.cinder-api向keystone认证token是否有效,并返回验证结果;

28.token验证通过,nova-compute获得虚拟机持久化存储信息;

29.nova-compute根据instance的信息调用配置的虚拟机驱动来创建虚拟机;

Openstack认证过程的更多相关文章

  1. [Kerberos] Kerberos 认证过程整理

    Kerberos是一种安全认证协议,意在提供 more secure authentication simplified management of password convenience of s ...

  2. .net core 1.0 Web MVC 自定义认证过程

    通过官方的介绍可知,若要本地开始部署搭建一个基于.net core 1.0的Web应用,需要下载dotnet SDK,或在Visual Studio IDE之上安装相关插件以布置开发环境.为了使开发环 ...

  3. Oauth1.0认证过程

    现今,已经有了Oauth2.0,写篇博客了解Oauth1.0的过程以及与2.0的区别. 在Oauth官网  关于1.0的介绍: 一.简介 OAuth authentication is the pro ...

  4. OAuth2.0认证过程

    本文以腾讯微博为例,详细介绍OAuth2.0的认证过程. 在使用腾讯微博平台提供的API前,您需要做以下两步工作: 成为开发者,并申请appkey和appsecret 授权获取accesstoken ...

  5. Apache Shiro 认证过程

    3.1.1    示例 Shiro验证Subjects 的过程中,可以分解成三个不同的步骤: 1. 收集Subjects 提交的Principals(身份)和Credentials(凭证): 2. 提 ...

  6. 新浪微博的OAuth2认证过程

    1. 创建应用 在weibo.com上申请一个应用,获取app key和app secret, 填写redirect uri 2. 获取code 通过在浏览器访问 https://api.weibo. ...

  7. 将 Shiro 作为应用的权限基础 二:基于SpringMVC实现的认证过程

    认证就是验证用户身份的过程.在认证过程中,用户需要提交实体信息(Principals)和凭据信息(Credentials)以检验用户是否合法.最常见的“实体/凭证”组合便是“用户名/密码”组合. 一. ...

  8. Spring Security 入门(1-4-1)Spring Security - 认证过程

    理解时可结合一下这位老兄的文章:http://www.importnew.com/20612.html 1.Spring Security的认证过程 1.1.登录过程 - 如果用户直接访问登录页面 用 ...

  9. HTTPS协议、TLS协议、证书认证过程解析

    一.HTTPS 协议 HTTPS协议其实就是HTTP over TSL,TSL(Transport Layer Security) 传输层安全协议是https协议的核心. TSL可以理解为SSL (S ...

随机推荐

  1. PHP Fatal error: Call to undefined function imagecreatetruecolor()

    是因为没有安装gd apt-get install libgd2-xpm-dev* apt-get install php5-gd

  2. SQL Server----解决SQL Server 配置管理器不见了

    错误重现: 之前安装好的SQL Server 2012打开都没有问题,好多天没有打开了,今天打开我的SQL Server 2012 连接时出现错误: 在与SQL Server 建立连接时出现与网络相关 ...

  3. replace()函数用法

    replace()函数表示将用一个字符串替换字符串中的所出现的特定内容. 语法为:replace(字段1,字段2,字段3),意思为字段3将会替换字段1里与字段2相同的内容  列如: table1 st ...

  4. python+opencv+pyqt5控制摄像头在Qlabel上显示

    import cv2 import numpy as numpy from PIL import * import sys from PyQt5.QtWidgets import * from PyQ ...

  5. Python中 如何使用telnet 检测端口是否通

    import tn=telnetlib.Telnet(host,port)不报异常则该端口是通的,可结合try进行使用

  6. 学习opencv(持续更新)

    redhat安装,报错解决方法 1 升级GCC,http://mirrors.kernel.org/gnu/gcc/ 2 更换稳定版本 #!/bin/bash yum -y install gcc g ...

  7. 《深入理解mybatis原理3》 Mybatis数据源与连接池

    <深入理解mybatis原理> Mybatis数据源与连接池 对于ORM框架而言,数据源的组织是一个非常重要的一部分,这直接影响到框架的性能问题.本文将通过对MyBatis框架的数据源结构 ...

  8. 第八天 1-7 实战:创建一个root无法删除的文件

    实战:创建一个root无法删除的文件 简介:Linux文件的最底层(内核级别)属性的查看与修改 命令:lsattr.chattr Linux文件除了具有基本权限rwx,及特殊权限(SUID.SGID. ...

  9. nyoj762——分解质因数+容斥+二分

    第k个互质数 时间限制:1000 ms  |  内存限制:65535 KB 难度:4   描述 两个数的a,b的gcd为1,即a,b互质,现在给你一个数m,你知道与它互质的第k个数是多少吗?与m互质的 ...

  10. jsp获取绝对路径

    在JavaWeb开发中,常使用绝对路径的方式引入javaScript和CSS文件,这样可以避免因为目录变动导致引入文件找不到的情况,常用的做法是: 一.使用${pageContext.request. ...