"深入解析 nova-scheduler 的计算节点选择机制"
需积分: 0 77 浏览量
更新于2023-12-25
收藏 385KB DOCX 举报
本节主要介绍了nova-scheduler的调度机制和实现方法。nova-scheduler的功能是解决在哪个计算节点上启动instance的问题。在OpenStack中,创建Instance时用户会提出资源需求,例如CPU、内存、磁盘等,这些需求被定义在flavor中,用户只需要指定用哪个flavor就可以了。在System->Flavors中管理可用的flavor。Flavor主要定义了VCPU,RAM,DISK和Metadata这四类。nova-scheduler会按照flavor去选择合适的计算节点。在/etc/nova/nova.conf中,nova通过scheduler_driver,scheduler_available_filters和scheduler_default_filters这三个参数来配置nova-scheduler。其中,filter scheduler是一种多层过滤的机制,用来选择合适的计算节点。
具体来说,nova-scheduler会通过多个filter层层过滤计算节点,最终选择合适的计算节点来启动instance。在一个示例中,开始时有6个计算节点Host1-Host6,通过多个filter的过滤,Host2和Host4没有通过,被刷掉了。在这个过程中,nova-scheduler会考虑VCPU,RAM,DISK和Metadata等因素,来选择最合适的计算节点。而Metadata则是一个比较有意思的因素,后面会具体讨论。
在选择计算节点时,nova-scheduler通过filter scheduler进行多个层次的过滤。首先,scheduler会根据用户需求的flavor中定义的资源需求(如VCPU,RAM,DISK)进行过滤,然后再考虑其他的因素,最终选择出最合适的计算节点。
总的来说,nova-scheduler的调度机制是一个多层过滤的过程,通过考虑flavor定义的资源需求和其他因素,最终选择出最合适的计算节点来启动instance。这个过程是通过filter scheduler来实现的,通过配置nova.conf中的参数来进行设置和调整。这样的调度机制可以确保instance能够在合适的计算节点上运行,从而最大限度地利用计算资源,提高系统的性能和可靠性。
2021-02-26 上传
2021-06-24 上传
2024-10-24 上传
2022-08-08 上传
2021-06-29 上传
2018-04-05 上传
2022-08-08 上传
2022-08-08 上传
2014-08-24 上传
我就是月下
- 粉丝: 30
- 资源: 336
最新资源
- pageflo:新的超级灵活的开源CMS
- pumpy.contracts
- autd3-library-firmware-cpu
- Postman_v4.1.3.rar
- svt-apl:TE4 SVT Praktik回购
- pre
- Python库 | google_apitools-0.4.4-py2.7.egg
- BMI_CALCULATOR
- msdcback
- redditSwipe:Android 应用程序列出了最热门的 reddit 图像并提供了类似 Tinder 的滑动效果
- DayPlanner:作业5
- canaryaero.github.io
- Java面试题大全(2021年).rar
- 方差分区
- ansible-collection-vrealize_log_insight:vrealize_log_insight Ansible角色集合
- TeambitionShare:挂载Teambition文件可直链共享支持网盘(需申请)和项目文件(无需邀请码)