cinder create volume的流程(1)】的更多相关文章

前提:代码的跟踪,使用的是ocata版本 零.执行cinder create 命令,创建数据卷,打开debug开关 [root@osnode241001 ~]# cinder --debug create --display-name=chenwei 1 DEBUG:keystoneclient.session:REQ: curl -i -X GET http://11.27.241.251:5000/v2.0/ -H "Accept: application/json" -H &qu…
创建 Volume 时,cinder-scheduler 会基于容量.Volume Type 等条件选择出最合适的存储节点,然后让其创建 Volume. 1.cinder-scheduler配置相关项 在/etc/cinder/cinder.conf文件中,cinder 通过 scheduler_driver, scheduler_default_filters 和scheduler_default_weighers ,这三个参数来配置 cinder-scheduler. # Options d…
1. cinder-api接收到创建的请求,入口:cinder.api.v2.volumes.VolumeController#create,该方法主要负责一些参数的重新封装和校验,然后调用cinder.volume.api.API#create方法,该方法会启动volume_create_api工作流(flow),flow的状态从pending->running->success,该工作流包含若干个任务(TASK),TASK的转换状态与工作流一样,都是到success结束,每个TASK完成特…
cinder侧挂载卷流程分析,存储类型以lvm+iscsi的方式为分析基础cinder侧主要调用了三个接口1)reserve_volume: 把volume的状态改为attaching,阻止其它节点执行挂载操作.2)initialize_connection: 这个方法负责构建和返回nova调用者需要的所有信息.返回的信息中包括CHAP credential, target-iqn 和lun 信息.3)attach_volume: 把volume状态改为in-use,挂载成功,并创建对应的att…
上一节我们讨论了 Cinder 创建 Volume 的第一部分,cinder-api 的操作,本节继续第二部分,cinder-scheduler 调度工作. cinder-scheduler 执行调度 cinder-scheduler 执行调度算法,通过 Filter 和 Weigher 挑选最优的存储节点 日志为 /opt/stack/logs/c-sch.log. cinder-scheduler 通过 Flow volume_create_scheduler 执行调度工作. 该 Flow…
前面已经学习了 Cinder 的架构和相关组件,从本节我们开始详细分析 Cinder 的各种操作,首先讨论 Cinder 如何创建 volume. Create 操作流程如下: 客户(可以是 OpenStack 最终用户,也可以是其他程序)向 API(cinder-api)发送请求:“帮我创建一个 volume”. API 对请求做一些必要处理后,向 Messaging(RabbitMQ)发送了一条消息:“让 Scheduler 创建一个 volume”. Scheduler(cinder-sc…
参考https://www.cnblogs.com/CloudMan6/p/5603312.html   前面已经学习了Cinder的架构和相关组件,从本节开始详细分析 Cinder 的各种操作,首先讨论 Cinder 如何创建 volume.   Create 操作流程如下:  …
参考https://www.cnblogs.com/CloudMan6/p/5617980.html       Jun 20 17:15:56 DevStack-Rocky-Compute-22 cinder-volume: DEBUG cinder.volume.flows.manager.create_volume None req-5eb13d6b-917f-48f6-a28c-17ae0d99c799 admin None] Volume reschedule parameters:…
参考https://www.cnblogs.com/CloudMan6/p/5612147.html       1.cinder-scheduler 也会启动一个工作流 volume_create_scheduler    Jun 20 17:15:56 DevStack-Rocky-Controller-21 cinder-scheduler: DEBUG cinder.scheduler.manager None req-5eb13d6b-917f-48f6-a28c-17ae0d99c7…
cinder侧卸载卷分析,存储类型以lvm+iscsi的方式为分析基础在虚机卸载卷的过程中,主要涉及如下三个函数1)cinder.volume.api.begin_detaching 把volume的状态改为detaching,阻止其它节点执行挂载操作2)cinder.volume.api.terminate_connection 进行target,lun等信息的清理3)cinder.volume.api.detach 更新cinder数据库,设置卷的状态为available 1.nova侧调用…