天天看点

openstack动态调度现状

声明:

本博客欢迎转发,但请保留原作者信息!

博客地址:http://blog.csdn.net/halcyonbaby

内容系本人学习、研究和总结,如有雷同,实属荣幸!

最近一个哥们在openstack邮件列表提出来做动态调度,引出很热烈的讨论。

这里分析一下openstack动态调度功能当前的现状。

目前openstack并未提供DRS、DPM的功能。属于openstack功能缺失的一部分。

实现思路

通过nova周期性任务或者独立的项目完成。 社区更倾向于通过单独的项目完成。

原因主要基于两点:

1. 实现比较复杂,放在nova中不合适

2. nova负责的计算资源管理,动态调度不应该放在nova中。

(类似于linux设计思想中的机制和策略)

目前动态调度相关的项目

Gantt项目

一个刚从nova分离出来的Scheduler as a service。

目前仍是初始阶段,尚未真正开始,至少juno版本仍无法使用。

初步目标仍是初始放置,未来也许有可能将动态放置放进来。

https://github.com/openstack/gantt

neat项目

似乎目前已经废弃,不再更新。

http://openstack-neat.org

Apache2.0 licence,部分代码使用了专利技术。

商业使用必须获得专利许可。

IBM PRS项目(非开源)

IBM PRS (Platform Resource Scheduler) 项目

http://www-01.ibm.com/common/ssi/cgi-bin/ssialias?infotype=AN&subtype=CA&htmlfid=897/ENUS213-590&appname=USN

heat+ceilometer方式实现

这个也是一个常见的实现思路。在讨论中也有人提及。

简单的额说就是通过ceilometer周期性收集所需数据,通过heat根据已有策略进行计算平衡以及电源管理策略。

这里边最具参考价值的应该是neat,后续有空再详细研究下。

继续阅读