统一气流迁移策略¶
https://blueprints.launchpad.net/watcher/+spec/uniform-airflow-migration-strategy
气流(单位:CFM)是一种与冷却相关的遥测数据,可用于测量服务器的冷却状态。
本规范提出了一种基于服务器气流的新 Watcher 迁移策略。该策略通过迁移虚拟机来使气流保持均匀。
注意:“服务器” 在本文档中指“hypervisor”(虚拟机监控程序)。
问题描述¶
在当前的数据中心基础设施中,供应给服务器的冷却空气可能因工作负载和入口温度而异。当服务器过载或供应空气过热时,气流可能会达到阈值。在这种情况下,我们需要将虚拟机实例迁移到其他服务器。
用例¶
作为管理员,我希望能够触发一个审计,以控制气流并执行虚拟机实例负载均衡。
为了
降低用于冷却的总功耗。
延长数据中心的使用寿命,因为冷却效率是一个首要因素。
项目优先级¶
不相关,因为 Watcher 目前不在大型帐篷内。
提议的变更¶
Watcher 已经有了其决策框架,因此该策略应该是一个新的类,它扩展了基础策略类。
通过模板设置阈值。请参阅:https://blueprints.launchpad.net/watcher/+spec/optimization-threshold
创建一个新的 Python 类来扩展“BaseStrategy”类。
使用 Telemetry 客户端获取 hypervisor 的气流、入口温度和系统功耗指标。
使用 Nova 对象框架获取超visor的空闲 CPU/内存/磁盘。
一种算法,用于检测气流阈值是否已达到,默认情况下,它使用 5 分钟内的平均值与阈值进行比较,并且可以像阈值一样进行配置。这里需要 3 个阈值:气流、入口温度和系统功耗。当气流阈值达到时,它将检查
入口温度和系统功耗的阈值是否都已达到,如果是,它将选择第一个要迁移的虚拟机。
如果入口温度和系统功耗均低于阈值,则表示硬件可能存在问题,它将迁移 hypervisor 的所有虚拟机。
最后,它将根据 hypervisor 的空闲资源信息(来自上一步)过滤可行的目标。
备选方案¶
没有替代方案
数据模型影响¶
无
REST API 影响¶
无
安全影响¶
无
通知影响¶
无
其他最终用户影响¶
无
性能影响¶
过去,关于从 Telemetry 数据库查询指标存在一些性能问题。 这也是为什么它很少在生产环境中使用的一个原因。 借助一个抽象层,现在可以轻松更改基础指标存储后端,这些问题可能已经得到解决。 查询 Nova DB 以获取 CPU 使用率指标时也存在性能问题。
其他部署者影响¶
无
开发人员影响¶
无
实现¶
负责人¶
- 主要负责人
<junjie-huang>
工作项¶
用于使用 Telemetry 客户端获取 hypervisor 的气流、入口温度和系统功耗的函数。
用于根据 Nova 基本指标(空闲 CPU/内存/磁盘)过滤服务器的函数。
重写 execute 函数以添加检测阈值的算法以及选择目标 hypervisor、生成操作计划。
依赖项¶
https://wiki.openstack.org/wiki/Ceilometer/blueprints/APIv2
https://blueprints.launchpad.net/ceilometer/+spec/api-v2-improvement
https://blueprints.launchpad.net/watcher/+spec/optimization-threshold
https://docs.openstack.org/admin-guide/telemetry-measurements.html
https://docs.openstack.org/developer/python-novaclient/api.html
测试¶
单元测试和功能测试,将使用一组假的指标来进行功能测试。
文档影响¶
一份解释如何使用这个新的优化策略的文档。
参考资料¶
http://www.intel.com/content/www/us/en/servers/ipmi/ipmi-home.html
历史¶
无