nova学习小结

写在前面

基于yoga版本源码进行学习

api流程

该入口从配置加载app

看下osapi_compute流程,v2.1用oscomputeversion_v2

将api_paste.ini内容加载为server,再调oslo_service.service.ProcessLauncher拉起server。将api-paste加载为server,server继承了oslo_service.service.Service

看下novaclient 先获取api_version,默认应该是这个

会创建一个apiversion对象,供shell使用,注意下apiversion版本号

不跳过鉴权

判断api版本。默认是2.latest,是latest则继续,,如果不是latest,则检查是否大于2.0,然后检查是否当前版本在最大版本和最小版本之间,如果超出范围则异常

注意到虽然配置是2.latest,但client版本是2.0

再用latest version去discover version,会先从keystone获取endpoint然后获取endpoint/versions返回信息,根据返回信息确认最终api-version,总之,最后就是2.0

应该是在get_subcommand_parser里寻找命令行对应的函数

debug发现到nova侧是2.1...先按2.1看吧,入口是api-paste.ini对应名字类的factory,进去看就行,以resize为例,对应处理函数在这,路由好像是通过wsgi.action装饰器实现的

相关推荐
燕落南枝3 小时前
C 语言学习大总结:从入门到进阶的完整知识体系
服务器·c语言·学习
科技林总3 小时前
从零开始学习DeerFlow完整路径
学习
David猪大卫3 小时前
【C++修炼】STL容器—模板进阶:非类型模板参数、模板特化、模板分离编译
c语言·开发语言·c++·经验分享·笔记·学习·面试
幼儿园蛋小黄3 小时前
嵌入式学习总结:从 I2C 到 SPI 的驱动开发实战
驱动开发·学习
老当益壮梁奶奶3 小时前
驱动学习(二):从零开始:驱动工程搭建与字符设备驱动框架详解(基于IMX6ULL)
c语言·arm开发·驱动开发·嵌入式硬件·学习
叶子野格4 小时前
《FPGA基本知识累积:看开发指南要懂的术语》
学习·fpga开发
qq_284274054 小时前
液压泵工作原理与性能参数笔记:能量转换与吸压油三必要条件、压力分级、排量流量与三种效率特性曲线、径向轴向柱塞泵变量原理及配流配油盘(含考点)
笔记·学习·自动化·制造
li星野4 小时前
【学习记录】射线补偿原理与实现:从物理模型到MATLAB代码
开发语言·学习·matlab
yangmu32034 小时前
单片机发展史:从 8051 到 AIoT 芯片
学习
qq_284274055 小时前
液压泵类型结构与液压马达笔记:柱塞泵奇数柱塞减震槽通轴斜轴、单双作用叶片泵八段曲线限压变量、齿轮泵排量困油径向力端面补偿、内啮合螺杆泵与高低速马达(含考点)
笔记·学习·自动化·制造