Create Volume 操作(Part III) - 每天5分钟玩转 OpenStack(52)-阿里云开发者社区

开发者社区> 云计算> 正文

Create Volume 操作(Part III) - 每天5分钟玩转 OpenStack(52)

简介: 本节是创建 Volume 的第三部分,也是最后一部分:cinder-volume 的处理过程。 第一部分和第二部分可以参考前面两个小节。cinder-volume 通过 driver 创建 volume,日志为 /opt/stack/logs/c-vol.log。

本节是创建 Volume 的第三部分,也是最后一部分:cinder-volume 的处理过程。

第一部分和第二部分可以参考前面两个小节。
cinder-volume 通过 driver 创建 volume,日志为 /opt/stack/logs/c-vol.log。

与 cinder-api 和 cinder-scheduler 执行方式类似,cinder-volume 也启动了一个 Flow 来完成 volume 创建工作,Flow 的名称为 volume_create_manager。

volume_create_manager 首先执行 ExtractVolumeRefTask, OnFailureRescheduleTask, ExtractVolumeSpecTask, NotifyVolumeActionTask 为 volume 创建做准备。

接下来 CreateVolumeFromSpecTask 执行 volume 创建任务。

因为 volume provider 为 LVM, CreateVolumeFromSpecTask 通过 lvcreate 命令在 VG stack-volumes-lvmdriver-1 中创建了一个 1G 的 LV,cinder-volume 将这个 LV 作为volume。 新创建的 LV 命名为“volume-1e7f6bd7-ce11-4a73-b95e-aabd65a5b188”,其格式为“volume-<volume ID>”。

最后,CreateVolumeOnFinishTask 完成扫尾工作。

至此,volume 成功创建,Flow volume_create_manager 结束。

下一节我们讨论如何将新建的 volume 挂到 instance 上,即 attach 操作。

 


版权声明:本文首发在云栖社区,遵循云栖社区版权声明:本文内容由互联网用户自发贡献,版权归用户作者所有,云栖社区不为本文内容承担相关法律责任。云栖社区已升级为阿里云开发者社区。如果您发现本文中有涉嫌抄袭的内容,欢迎发送邮件至:developer2020@service.aliyun.com 进行举报,并提供相关证据,一经查实,阿里云开发者社区将协助删除涉嫌侵权内容。

分享:
云计算
使用钉钉扫一扫加入圈子
+ 订阅

时时分享云计算技术内容,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。

其他文章