离石做网站的网络公司/今天时政新闻热点是什么
我的知乎专栏: 云计算实战技能
虚机创建-源的选择
openstack horizon页面在创建实例时,对源的选择有几种组合方式,选择源(镜像/卷/卷快照/实例快照),创建新卷(是/否)。
- 创建新卷选“是”,nova在发起创建命令时会使用block_device_mapping_v2这样的参数格式,imageRef为空;
- 创建新卷选“否”,则只传imageRef参数
再结合计算节点上的images_type(rbd,qcow2)的情况,有下面三种创建虚机和后续nova image-create的情况:
虚机创建和nova image-create
情况1:
- 源:镜像
- 创建新卷:否
- 计算节点配置images_type=qcow2
创建出的虚机:本地盘
nova image-create:虚机不关机,镜像完整上传到glance
情况2:
- 源:镜像
- 创建新卷:否
- 计算节点配置images_type=rbd
创建出的虚机:nova创建的云盘
nova image-create:虚机不关机,虚机打snapshot -> image clone -> flatten,镜像导入到glance
情况3:
- 源:镜像
- 创建新卷:是
- 计算节点images_type配置无所谓
创建出的虚机:cinder创建的云盘
nova image-create:虚机不关机,创建后在glance里有一个size=0,locations里也是size为0的块,这个size=0的块是没有什么意义的,主要用于记录,要看镜像的block_device_mapping里记录的snapshot_id,这是在虚机的volume上打的快照
volume snapshot
openstack volume snapshot create即在volume上打snapshot, 和上面第三步的区别是,nova打的在glance里有记录,cinder不会去操作glance
总结
下图是从一个镜像创建卷启动的虚机,然后在创建一个快照(size=0的镜像),这里有一点注意,以这个(size=0)镜像创建的虚机,不管是传image_id还是block_device_mapping, 都会创建成卷的虚机