Pike 项目优先级

Watcher 驱动程序团队在 Pike 中优先处理的优先级列表。

优先级

负责人

Cinder 模型集成

中村秀和

VM 元数据中的审计标签

Prashanth Hari

在 Watcher 中支持 Gnocchi

Santhosh Fernandes

吵闹邻居策略

Prudhvi Rao Shedimbi

工作负载特征语法

Chris Spencer

使行动计划失效

李灿伟

工作负载特征和 QoS

Susanne Balle

行动版本化通知

Alexander Chadin

取消行动计划

aditi sharma

动态行动描述

Charlotte Han

Watcher 中的电源开启和关闭

李灿伟

挂起审计状态

中村秀和

JSONschema 验证

YumengBao

服务版本化通知

Vladimir Ostroverkhov

行动计划取消通知

aditi sharma

为 CONTINUOUS 审计使用 cron 语法

Alexander Chadin

基于事件驱动的优化

Alexander Chadin

Cinder 模型集成

使用 Cinder 相关数据扩展 Watcher 集群数据模型。应该能够实现以下功能:在模型构建阶段集成存储信息

为了维护存储相关部分模型的一致性,需要消费所有必要的 Cinder 通知

通过一组清晰的方法,能够轻松地从策略中查询/检索存储信息

VM 元数据中的审计标签

当 Watcher 运行 审计 以实现 目标 时,应该有一种方法让应用程序/VM 所有者知道他们的 VM 正在接受审计,并被标记为 行动计划 执行。这些信息可以在 VM 元数据中以时间戳的形式存储,之后将执行行动计划。

在 Watcher 中支持 Gnocchi

目前,Watcher 使用 Telemetry 和 Monasca 从 集群 中收集指标。由于 Ceilometer v2 API 已弃用,因此需要支持 Gnocchi

吵闹邻居策略

L3 缓存至关重要,并且限制了所有应用程序或 VM 在一个节点上共享的系统级资源。如果一个 VM 占用大部分 L3 缓存,则该节点上的其他 VM 可能会因 L3 缓存不足而饿死,从而导致性能下降。

此 BP 添加了一个新的 策略,用于检测然后迁移基于一些新的缓存/内存指标的此类缓存贪婪 VM。

工作负载特征语法

由于我们在云中运行多个工作负载,因此我们应该能够将这些工作负载作为输入提供给 Watcher,以确保应用程序 QoS、放置和整合。

工作负载特征的一个例子是 CPU、内存或任何其他资源属性(如高 IOPS、网络延迟等)的加权组合。

此蓝图的范围是提出一个用于定义工作负载特征的语法结构。

使行动计划失效

当创建并成功启动审计时,会生成一个状态为 RECOMMENDED 的新行动计划。如果集群数据模型逐渐发生变化,行动计划仍然保持 RECOMMENDED 状态。到目前为止,没有到期日期或事件可以使行动计划失效。

工作负载特征和 QoS

基于定义的 workload 特征,我们应该能够为应用程序应用服务质量。一个例子将是利用 Intel RDT 等技术。

这为几种应用程序优化可能性(例如 NFV 等用例)打开了大门,并确保了云资源的高效利用。此蓝图的范围是使用 Intel RDT 和 workload 语法构建 QoS 策略。

行动版本化通知

目前,没有任何服务(包括 Watcher)能够知道何时创建、修改或删除了一个行动。这阻止了任何形式的基于事件的反应,这对于第三方服务或插件可能很有用。

此蓝图应定义要实现的行动通知列表以及各自的有效载荷结构。

取消行动计划

目前管理员可以将行动计划状态更新为 CANCELLED,但 Watcher 没有采取任何行动来取消行动计划。它只是将行动计划状态更新为 CANCELLED

应该能够通过 Watcher 取消 行动计划的执行。

动态行动描述

通过引入一种新的方式,让开发人员通过配置文件实现具有新的自定义行动的策略(blueprint watcher-add-actions-via-conf),我们不再能够获得计划的 行动 的字面描述,直到执行它(在 Watcher Applier 中)。当云管理员想要查看推荐行动计划的详细信息时,此字面描述非常重要。

Watcher 中的电源开启和关闭

Watcher 需要一个可以降低功耗的策略。

交通系统可以在许多虚拟机上运行。白天交通繁忙,因此交通系统会增加虚拟机的数量以满足其工作负载。但在夜间,交通工作负载明显减少,因此该交通系统会删除冗余虚拟机。我们称此功能为“弹性伸缩”。

电信运营商拥有自己的硬件设备,有时硬件的尺寸很大。因此,电信运营商希望使用云中心管理器软件根据“弹性伸缩”自动降低硬件的能耗。

挂起审计状态

目前 Watcher 必须删除审计并重新创建审计,如果管理员想要停止创建具有连续模式的审计的行动计划。

此蓝图添加了挂起审计状态,用于停止与具有连续模式的审计相关的行动计划的创建。

JSONschema 验证

目前在 Watcher 中,jsonschema 和 voluptuous 都用于验证 JSON 有效载荷。但是,voluptuous 的问题是它的结构不如 jsonschema 标准化,这意味着我们无法轻松地通过我们的 API 暴露验证模式。

服务版本化通知

目前,没有任何服务(包括 Watcher)能够知道何时创建、修改或删除了一个行动。这阻止了任何形式的基于事件的反应,这对于第三方服务或插件可能很有用。

此蓝图应定义要实现的 Service 通知列表以及各自的有效载荷结构。

行动计划取消通知

需要为新的 actionplan 取消操作添加 action 和 actionplan 的通知。

为 CONTINUOUS 审计使用 cron 语法

目前,我们使用秒为单位的周期来安排连续审计。这效果很好,但并没有真正提供操作员可能真正想要的灵活性。因此,我们还应该提供一种通过 cron 语法表达我们的调度需求的方式,这将为操作员提供细粒度的控制。

此更改意味着 API 的重构,因此应保证向后兼容性。在 Watcher 仪表板侧,我们还应该提供一个易于使用的表单来填写此 cron 字段。

我们还应该将 cron 语法和创建时间戳保存在 DB 中

基于事件驱动的优化

我们提出了一种基于事件驱动的优化审计控制。我们希望从可能触发审计的事件列表中进行选择

  • 对预测的情况做出反应。

  • 对关键情况和系统变化做出反应(例如:阈值)

  • 已向集群添加新的计算节点

  • 已从集群中删除计算节点

  • 已创建新的虚拟机