美文网首页
Nova API 扩展

Nova API 扩展

作者: 买不起扁担的沙和尚 | 来源:发表于2018-07-27 22:26 被阅读0次

应用场景:Nova(openstack)

openstack提供了许多的api,这些api大多是以restful形式发布的,也就是所称的小web server。相信通过这个web server一词,很多的同志都已经知道如何去扩展一个nova的api,它的内部方法该如何定义。如果你还是很好奇它的格式是什么样的,可到openstack官网查看https://developer.openstack.org/zh_CN/api-guide/quick-start/进行查看。
接下来我们简要介绍nova api扩展的步骤和注意项:

1.在nova/nova/api/openstack/compute/contrib目录下创建要扩展的api模块。
2.在这个model文件里创建一个class,这个class的名字要和model的名字一致并且首字母大写。
3.这个class还应继承extensions.ExtensionDescriptor。
4.根据https://wiki.openstack.org/wiki/WritingRequestExtensions
所给,还应该覆盖name、alias、namespace、updated属性。
5.然后对get_resources方法进行复写,这个方法内可以放置许多个资源扩展的列表。
6.对资源对象定义一个controller来控制对资源的增删改查,也可以不使用约定好的函数,使用自定义函数需要在member_actions={}中定义。但推荐采用约定的函数,约定优于配置,这也是软件设计的一种原则。其中index查询所有,show查询一个,create添加资源,update对资源进行修改,delete删除资源

注意:在openstack的icehouse版本之后一定会有差异,查看是需要注意。

相关文章

网友评论

      本文标题:Nova API 扩展

      本文链接:https://www.haomeiwen.com/subject/dcxnmftx.html