Create Volume(Part II)
第二部分 cinder-scheduler 调度工作
cinder-scheduler 执行调度
cinder-scheduler 执行调度算法,通过 Filter 和 Weigher 挑选最优的存储节点
cinder-scheduler 通过 Flow volume_create_scheduler 执行调度工作
该 Flow 依次执行 ExtractSchedulerSpecTask 和 ScheduleCreateVolumeTask
主要的 filter 和 weighting 工作由 ScheduleCreateVolumeTask 完成。
经过 AvailabilityZoneFilter, CapacityFilter, CapabilitiesFilter 和 CapacityWeigher 的层层筛选,最终选择了存储节点 controller@lvmdriver-1#lvmdriver-1
Flow volume_create_scheduler 完成调度,状态变为 SUCCESS。
cinder-scheduler 发送消息
cinder-scheduler 发送消息给 cinder-volume,让其创建 volume。
源码 /opt/stack/cinder/cinder/scheduler/filter_scheduler.py,方法为 schedule_create_volume。
-----------------------------------------------引用来自-------------------------------------------------------------
https://mp.weixin.qq.com/s?__biz=MzIwMTM5MjUwMg==&mid=2653587752&idx=1&sn=d993ec33da9ad0624f6dbc7fe07b74bb&chksm=8d308131ba4708274fd76663651892f5f8cf1ff2b01919cf70c6fa5904fadcf6c232c9c620e9&scene=21#wechat_redirect