OpenStack DRS(动态资源调度)之架构设计篇

一:应用背景

随着时间推移,虚机的不断创建和销毁,数据中心的资源使用情况往往处于如上图所 示的不均衡的状态,各种资源得不到高效利用,而系统管理员和云计算提供商希望通过一些优化措施,如下图所示提高资源的利用效率,减少数据中心的运营成本。

二:整体架构设计

​DRS 从 nova/neutron/cinder 等得到集群数据模型,利用 ceilometer 采集集群运行的性能数据, 并根据数据模型和采集的历史数据,通过特定策略动态调整工作负载或调整计算、存储、网络等资源,从而提高资源的利用效率,减少数据中心的运营成本。 Watcher 提供了一个灵活的、可伸缩的多租户 OpenStack-based 云资源优化服务,通过智能的虚拟机迁移策略来减少数据中心的运营成本和提高资源的利用效率。

watcher 的目标:

1)提供一个可以实现各类优化目标的框架(framework);

2) 为新的资源优化算法和数据收集分析提供一个可插拔的(pluggable)架构

3) 用户可定制的丰富的资源优化算法与策略 DRS 功能以 openstack-watcher 为基础,并参考 VMware DRS&DPM 及 IBM PRS 产品进行新 功能的设计和开发。

1:watcher 架构

​上图为 watcher 项目的架构图,Watcher 由三个组件组成:

1)watcher api:对外部提供 REST API 接口,使系统管理员能够通过 cli/dashboard 与 watcher 进行交互。 watcher decision engine: 根据具体的对资源优化的目标,执行相应的优化策略,根据数据模型 和采集的历史数据,然后生成一组可以执行的优化动作。

2)watcher decision engine: 根据具体的对资源优化的目标,执行相应的优化策略,根据数据模型 和采集的历史数据,然后生成一组可以执行的优化动作。

3) watcher applier: watcher 中的执行组件,负责执行已生成的优化动作,对资源进行优化调整。

2:watcher优化流程

​watcher 实现一个资源优化的目标的流程是,先创建一个 Audit(审计)对象, Audit 包含了优化 目标(Goals),然后 watcher 组件开始执行 Audit, 执行 Audit 的过程就是为实现该目标找到合适 的 Strategy (策略),执行 Audit 的结果是生成有序的 Action Plan (行动方案),该 Action Plan 包含 了一系列可执行的 Action(操作) 。

3:watcher 时序图

下面是不同组件的消息传递的场景。 创建一个新的 Audit template(模板):使用现有的 goal(优化目标)和 strategy(优化策略), 可以一对一的来创建模板也可以创建 goal 不指定 strategy,会自动选择一条策略来执行。

创建和启动一个新的 audit(审计):使用现有的 audit template 来创建和启动一个唯一 uuid 的审计。(这边是通过唯一 uuid 表示审计的,没有名字。)

​创建 audit 的时候支持 2 种类型:ONESHOT(仅一次)和 CONTINUOUS(连续审计)。 ONESHOT Audit 被启动一次,启动会提供一个 action plan。 Continuous Audit 按给定的时间间隔(单位:s)创建行动计划,所有之前的行动计划会被取 消。 创建后就自动触发 audit,决策引擎更新 audit 状态为 ongoing,查询数据库,调用策略,策 略监控,满足时返回给决策引擎,决策调用planner,创建行动计划(actions plan)会变成recommend。 然后 audit 状态会更新会 succeed。

​详细的 Decision Engine 的时序图:

​触发 action plan 管理员手工触发建议的 action plan。

​当触发 action plan 后详细的 watcher applier 的序列图:

​当所有的 action 都执行成功,action plan 会被更新状态为成功。 watcher-dashboard 创建 audit 时可以选择是否 auto trigger action plans (自动触发审计) 自动触发后,action plan 便会自动被触发不需要管理员手工触发。

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

领悟云计算

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值