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装饰器实现的

相关推荐
蒸蒸yyyyzwd18 小时前
秋招不熟悉力扣学习笔记1
笔记·学习·leetcode
小弥儿19 小时前
GitHub今日热榜 | 2026-08-11:图原生基础设施首日登顶
学习·开源·github
for_ever_love__1 天前
python基础语法学习: 数据容器
windows·python·学习
云空1 天前
《电子专业完整学习路线图(分两套:本科四年版 / 零基础自学速成版)》
科技·学习·学习方法·高考
min(a,b)1 天前
学习第16天:LangGraph 与 Agent 工作流编排
学习
woshihuanglaoshi1 天前
鸿蒙技术进阶全景高级成长体系:从初中级到架构师的技能树/学习路径/项目实战/认证体系系统性方法论
学习·华为·harmonyos
AI即插即用1 天前
即插即用系列 | IEEE TMI PLG-HN:原型学习引导的 CNN-Transformer 混合网络,攻克乳腺肿瘤分割难题
人工智能·深度学习·神经网络·学习·目标检测·cnn·transformer
leo_messi941 天前
langchain学习(三) - tools使用
学习·langchain
for_ever_love__1 天前
python基础语法学习: 变量, 输入输出, 运算符
网络·python·学习
学习和思考1 天前
非自动化专业如何自学PLC?我的6个月学习路线图
笔记·学习·自动化·学习方法