openstack 源码分析
Nova对于底层Hypervisor(如KVM/QEMU等)的调用与管理主要通过LibvirtDriver类,nova/virt/libvirt/driver.py
Libvirt对Hypervisor的连接有两种方式:一种是只读式,用于管理;另一种是认证式,用于操作;
创建实例过程:/nova/api/ec2/cloud.py/L1193, run_instances(),获取创建数目,kernal_id,ramdisk_id,镜像uuid等通过self.compute_api.create()
发送实例的信息和要运行实例的请求消息到远程调度器scheduler.
从用户发送请求(创建新实例)的工作流程:
上图是一个全局的流程图,图中每个服务是一个单独的进程实例,他们之间通过rpc调用(广播或者调用)另一个服务。
nova-api服务是一个wsgi服务实例,创建新instance的入口代码是在nova /api/openstack/compute/servers.py,处理函数为create(self, req, body);
参数验证之后,调用compute api的create 函数(代码在nova/compute/api.py中):
http://www.infoq.com/cn/articles/openstack-access-request-calling-process
eclipse快捷键:
注释:ctrl+/
跳转函数定义:F3
显示outline: ctrl+o
自己用c++实现c++反射机制;类比java反射机制

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
月光博客:我的知识管理工具列表(强烈推荐收藏)
月光博客:我的知识管理工具列表(强烈推荐收藏) 齐码代码2013-03-03 200阅读 软件 工具 如何保存和管理知识,是个人知识管理的一个非常重要的问题。善用各类知识管理工具,可以让一个人管理知识达到事半功倍的效果,月光博客对于国内外各种工具软件都有一些使用,也颇有些感悟,在2010年的时候,我曾经总结过一次《我的个人知识管理工具软件》,三年过去了,很多工具都发生了变化,这里我就总结一下自己最新的个人知识管理工具软件,供大家参考。 总的来说,个人知识管理工具软件分为网络版和单机版,单机版的选择简单一些,只考虑软件功能即可,网络版除了软件功能之外,还需要考虑服务商的因素。 着名的Evernote就曾经明确提出了三大原则: 1、数据是用户的(所有存到Evernote的内容,它的版权和所有权都属于你); 2、数据是受保护的(未经你的允许,我们没有任何权利查看,分享,使用,和分析你的数据); 3、数据是可转移的(你可以随时随地把全部数据迁移出去,不受任何限制)。 Evernote对于用户数据的理念值得所有软件开发商学习,简单来说,用户拥有自己数据的所有权,数据是可以导出的,用户数据的隐私能...
- 下一篇
kimchi,openstack,ovirt :云计算管理平台相关
kimchi,openstack,ovirt
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS7设置SWAP分区,小内存服务器的救世主
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- Docker安装Oracle12C,快速搭建Oracle学习环境
- SpringBoot2全家桶,快速入门学习开发网站教程
- CentOS7安装Docker,走上虚拟化容器引擎之路
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装