云计算---openstack创建虚拟机过程

(1)界面或命令行通过RESTful API向keystone获取认证信息。
(2)keystone通过用户请求认证信息,并生成auth-token返回给对应的认证请求。
(3)界面或命令行通过RESTful API向nova-api发送一个boot instance的请求(携带auth-token)。
(4)nova-api接受请求后向keystone发送认证请求,查看token是否为有效用户和token。
(5)keystone验证token是否有效,如有效则返回有效的认证和对应的角色(注:有些操作需要有角色权限才能操作)。
(6)通过认证后nova-api和数据库通讯。
(7)初始化新建虚拟机的数据库记录。
(8)nova-api通过rpc.call向nova-scheduler请求是否有创建虚拟机的资源(Host ID)。
(9)nova-scheduler进程侦听消息队列,获取nova-api的请求。
(10)nova-scheduler通过查询nova数据库中计算资源的情况,并通过调度算法计算符合虚拟机创建需要的主机。
(11)对于有符合虚拟机创建的主机,nova-scheduler更新数据库中虚拟机对应的物理主机信息。
(12)nova-scheduler通过rpc.cast向nova-compute发送对应的创建虚拟机请求的消息。
(13)nova-compute会从对应的消息队列中获取创建虚拟机请求的消息。
(14)nova-compute通过rpc.call向nova-conductor请求获取虚拟机消息。(Flavor)
(15)nova-conductor从消息队队列中拿到nova-compute请求消息。
(16)nova-conductor根据消息查询虚拟机对应的信息。
(17)nova-conductor从数据库中获得虚拟机对应信息。
(18)nova-conductor把虚拟机信息通过消息的方式发送到消息队列中。
(19)nova-compute从对应的消息队列中获取虚拟机信息消息。
(20)nova-compute通过keystone的RESTfull API拿到认证的token,并通过HTTP请求glance-api获取创建虚拟机所需要镜像。
(21)glance-api向keystone认证token是否有效,并返回验证结果。
(22)token验证通过,nova-compute获得虚拟机镜像信息(URL)。
(23)nova-compute通过keystone的RESTfull API拿到认证k的token,并通过HTTP请求neutron-server获取创建虚拟机所需要的网络信息。
(24)neutron-server向keystone认证token是否有效,并返回验证结果。
(25)token验证通过,nova-compute获得虚拟机网络信息。
(26)nova-compute通过keystone的RESTfull API拿到认证的token,并通过HTTP请求cinder-api获取创建虚拟机所需要的持久化存储信息。
(27)cinder-api向keystone认证token是否有效,并返回验证结果。
(28)token验证通过,nova-compute获得虚拟机持久化存储信息。
(29)nova-compute根据instance的信息调用配置的虚拟化驱动来创建虚拟机。
云计算---openstack创建虚拟机过程的更多相关文章
- openstack创建虚拟机的步骤
图片来自互联网. 虚拟机启动过程如下: 1.界面或命令行通过RESTful API向keystone获取认证信息.2.keystone通过用户请求认证信息,并生成auth-token返回给对应的认证请 ...
- 如何解决OpenStack创建虚拟机或删除虚拟机时一直处于deleting或者creating状态的问题(转载)
原文地址:http://www.cnblogs.com/robertoji/p/4968280.html 在OpenStack使用时,有时候会遇到创建虚拟机或者删除虚拟机无法成功创建或者删除的时候,一 ...
- Openstack创建虚拟机 Restful api和RPC调用
Horizon前台界面用于接受用户的输入或动作(action),然后将这些参数构造成RESTful API(https://developer.openstack.org/api-ref/comput ...
- openstack 创建虚拟机失败
虚拟机创建失败 用户创建一台虚拟机,虚拟机使用4个网络平面,所以虚拟机选择了4个不同平面的网络,创建虚拟机一直在孵化的过程中,最后创建虚拟机失败. 失败后返回的报错日志 Build of ins ...
- openstack创建虚拟机之后使用ssh登陆的解决办法
创建一个虚机之后:若果想要在horizon的控制台上登录操作,第一步.需要先使用ssh从controller上修改密码 从controller上登录: ssh ubuntu@虚机ip sudo su ...
- openstack 创建虚拟机
http://blog.csdn.net/tantexian/article/details/44595885#comments
- openstack 创建虚拟机的时候报错: Failed to allocate the network(s), not rescheduling.].
错误: 实例 "test-gtj" 执行所请求操作失败,实例处于错误状态.: 请稍后再试 [错误: Build of instance 5ea8c935-ee07-4788-823 ...
- openstack之虚拟机创建流程分析
这篇博文静静的呆在草稿箱大半年了.假设不是由于某些原因被问到,以及由于忽略它而导致的损失,否则我也不知道什么时候会将它完毕.感谢这段时间经历的挫折,让我知道不足.希望你能给我更大的决心! 本文试图具体 ...
- ##8.创建虚拟机-- openstack pike
##8. openstack创建虚拟机 openstack pike 安装 目录汇总 http://www.cnblogs.com/elvi/p/7613861.html ##.创建虚拟机.txt.s ...
随机推荐
- 【Leetcode_easy】892. Surface Area of 3D Shapes
problem 892. Surface Area of 3D Shapes 题意:感觉不清楚立方体是如何堆积的,所以也不清楚立方体之间是如何combine的.. Essentially, compu ...
- Linux配置Docker镜像加速器
Docker默认镜像为官方镜像,可以配置成国内加速器提高速度 登录阿里云控制台,搜索容器镜像服务获取到镜像加速服务地址 新建配置文件 /etc/docker/daemon.json 输入以下内容 { ...
- adb(Andorid Debug Bridge)安装和使用
以下是adb工具包最新2017Google官方版下载地址: ADB和Fastboot for Windows https://dl.google.com/android/repository/plat ...
- NET中各种加密解密方法
/// <summary> /// AES对称加密和分组加密中的四种模式(ECB.CBC.CFB.OFB),这三种的区别,主要来自于密钥的长度,16位密钥=128位,24位密钥=192位, ...
- xadmin自定义菜单、增加功能、富文本编辑器
xadmin功能:https://www.cnblogs.com/derek1184405959/p/8682250.html#blogTitle7
- Android模拟器Genymotion安装使用教程详解
一.注册\登录 打开Genymotion官网,https://www.genymotion.com/ ,首先点击右上角的Sign in进行登录操作.如何登录就不细讲了,下面讲一下如何注册(备注:注册按 ...
- javascript加超链接
JavaScript link 方法:给字符串加上超链接JavaScript link 方法link 方法返回使用 HTML a 标签属性定义的(斜体)字符串.其语法如下:str_object.lin ...
- WUSTOJ 1296: JAM计数法(Java)
题目链接:
- golang开发:(一)开发环境搭建vagrant+VirtualBox
开发环境介绍 不管何种开发语言,目前用的比较多的开发环境基本就是Vagrant+VirtualBox搭建的虚拟开发环境,这种开发环境的好处就是一次搭建处处可用,各个平台和系统都可以使用.开发团队中,可 ...
- PowerBuilder学习笔记之2PowerScript语言(二)
z教材地址:https://wenku.baidu.com/view/1e82d26925c52cc58ad6be05.html?sxts=1565679996440 2.4数组 声明数组:Integ ...