OpenStack(Stein版) Zun组件流程分析

阅读: 评论:0

OpenStack(Stein版) Zun组件流程分析

OpenStack(Stein版) Zun组件流程分析

我需要给zun简单修改一下,比如在创建的时候自动分配一个浮动ip,在删除的时候收回浮动ip。
zun的话三个组件嘛,zun-api zun-compute zun-wsproxy,根据nova的经验,大概需要修改zun-compute里面的源码。
/usr/lib/python2.7/site-packages

创建容器

zun-api

首先进入zun/api/comtroller/v1/containers.py,调用post()方法,在_do_post()中完成如下任务:

  • policy的检测
  • 安全组是否符合,去掉重复的,然后根据名字获取对应ID
  • 检查quotas
  • 设置运行时环境和主机名
  • 检查网络参数是否正确,只是检查,不进行任何修改操作
  • 检查心跳机制
  • cpu内存分配,驱动等信息
  • 如果没有分配安全组或者其他的,默认没有安全组策略。如果绑定端口–exposr-port,自动创建一个安全组策略,也可以指定一个现有的安全组策略。
  • 检查volume,如果传入了 volume的id,检查是否合法,否则创建一个新的。(这里如果想要有持久化存储,就预先创建一个volume,然后传入id,这样删除容器的时候volume不会一起删除

然后到zun/compute/api.py中,
container_create()方法中,使用rpc远程调用manage.py中的container_create()

zun-compute

进入zun/compute/manage.py中,进行真正的操作,比较直观明显。
我i是就是我不想写了。不过也的确没啥写的。
然后呢,大概的一些操作的方法命名比较类似,可以直接对着找。
比如启动是container_start(),删除是container_delete等。
如果需要参数的话,可以从context、created_container和container里面找到。上下文里就是一些上下文,用户信息项目信息之类的;关于容器的信息可以在后面的两个参数里找到。

参考链接

OpenStack容器服务Zun初探与原理分析 - int32bit

本文发布于:2024-02-03 04:42:37,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170690655548721.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:组件   流程   OpenStack   Stein   Zun
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23