-- linux爱好者,业余时间热衷于分析linux内核源码 -- 目前主要研究云计算和虚拟化相关的技术,主要包括libvirt/qemu,openstack,opennebula架构和源码分析。 -- 第五届云计算大会演讲嘉宾 微博:@marshal-liu
发布时间:2015-01-11 17:29:02
1. 背景:
一直以为openstack的创建快照的操作是在线创建快照(live snapshot), 并且应该是增量的快照,即利用virsh或者qemu的live snapshot来实现的:
virsh snapshot-create-as --live ....
后来发现快照和原始镜像之间并没有依赖关系,感觉openstack还做的挺好的,自动解决了增量快照和原始镜像之间的依赖关系;
但是后来又发现做快照的时候虚拟机竟然会shutoff, 就感觉不对了,于是分析了下源码。
2. 结论:目前openstack默认的快照方式都是cold snapshot, 首先先关机,其次执行如下命令生成一个镜像文件,再次开机,最后再调用glance api将镜像上传。
qemu-img convert -f qcow2 -o qcow2
? 所以目前并不是真正意义的快照,其实和关闭虚拟机,拷贝一份,再上传没有本质区别。
3. 源代码流程分析
3.1......【阅读全文】
默然笙笙2014-06-12 15:35
您也转战openstack啦,其实您对opennebula分析的很好,opennebula相对来说 机构简单多了,不过我也转openstack了.....
imawolfking2014-01-04 21:26
刘哥好:
我在您文章 sparc寄存器窗口上溢(overflow)和下溢分析(underflow) 中提问,希望您能解惑?主要是关于函数返回时,栈指针改变,如果恢复保存在栈中的窗口寄存器