【vdsm 源代码漫步】vdsm的存储(4)

  • 创建/删除 磁盘

(1)createVolume ;deleteImage

  • 激活/取消激活磁盘

(1)vdsm没有操作,只是engine进行了处理。

  • engine界面创建虚拟机模板

(1) copyImage(hsm.py)–>copyImage(sp.py)–>copyCollapsed

(image.py) 在copyCollapsed函数中,通过三步完成copy:首先createVolume, 然后,通过qemu.convert真正完成数据的拷贝。最后完成相关的链接。

(2)prepareImage 激活相应的volume

(3) teardownImage 取消激活相应的Volume

  • engine界面克隆虚拟机

(1)copyImage

(2)prepareImage

(3)teardownImage

可见克隆虚拟机与创建模板的vdsm过程是一致的。(不包含live内存的情况 下)

  • engine删除模板

(1)downloadImageFromStream(hsm.py)–>downloadImageFromStream(sp.py)–>copyToImage(image.py)–>copyToImage(imageSharing.py) 扩容元数据卷并将有关元数据写入到卷中

(2) setVolumeDescription

(3)deleteImage

基本思路很简单,清除元数据,删除数据。

0 条回复 A 作者 M 管理员 E
    所有的伟大,都源于一个勇敢的开始!
欢迎您,新朋友,感谢参与互动!欢迎您 {{author}},您在本站有{{commentsCount}}条评论