Nova中的create_image
本博客欢迎转发,但请保留原作者信息
新浪微博:@孔令贤HW;
QQ:363210168
博客地址:http://blog.csdn.net/lynn_kong
内容系本人学习、研究和总结,如有雷同,实属荣幸!
更新记录:
2013.4.22 增加G版中对live snapshot的约束
在Nova的core api中,对于虚拟机(server)有这样一个API:

该API的作用从名字上可以看出是基于虚拟机制作镜像。而代码中的注释则是:Snapshot a server instance,可能是基于实现方式的考虑。因为createImage目前(截止到Grizzly版)是基于快照功能实现的。create_image的实现描述如下:
1. 如果虚拟机的卷全是后端卷(由Cinder管理,或者叫持久化的卷),则由Cinder对每一个卷创建快照,在Glance的镜像表中存储的只是一系列快照的ID,Glance的后端并没有镜像的数据;
2. 如果虚拟机的系统卷存在本地(随着虚拟机被删除,系统卷也会被删除),则由各个虚拟化driver负责对系统卷(注意,只对系统卷)创建快照,并将快照数据上传到Glance的后端。
一个老外将libvert下创建快照的命令总结了一下,原BLog地址:OpenStack— nova image-create, under the hood,我将命令摘了出来:
$ virsh managedsave fed18
$ qemu

本文介绍了OpenStack Nova中的create_image API,该功能用于基于虚拟机创建镜像。内容涉及快照机制,包括Cinder对后端卷的处理和各虚拟化driver对本地系统卷的处理。在Grizzly版本中,create_image通过快照实现,如果条件允许,G版的Libvirt支持不挂起虚拟机的实时快照,提升了用户体验。
最低0.47元/天 解锁文章
2188

被折叠的 条评论
为什么被折叠?



